diff --git a/.github/actions/build-lspd/action.yaml b/.github/actions/build-lspd/action.yaml
index e2b49022..36c665c7 100644
--- a/.github/actions/build-lspd/action.yaml
+++ b/.github/actions/build-lspd/action.yaml
@@ -1,5 +1,5 @@
-name: 'Build LSPD'
-description: 'Build LSPD and upload the build artifacts.'
+name: 'Build LSPD CLN plugin'
+description: 'Build LSPD CLN plugin and upload the build artifacts.'
runs:
using: 'composite'
steps:
@@ -14,13 +14,11 @@ runs:
go-version: '1.21'
- name: build
- run: make release-all
+ run: make release-plugin
shell: bash
- name: upload lspd artifacts
uses: actions/upload-artifact@v4
with:
name: build-artifacts
- path: |
- lspd
- lspd_cln_plugin
+ path: lspd_cln_plugin
diff --git a/.github/actions/test-lspd/action.yaml b/.github/actions/test-lspd/action.yaml
index e550b34c..2e9cef8b 100644
--- a/.github/actions/test-lspd/action.yaml
+++ b/.github/actions/test-lspd/action.yaml
@@ -35,9 +35,7 @@ runs:
name: build-artifacts
- name: Set permissions
- run: |
- chmod 755 lspd
- chmod 755 lspd_cln_plugin
+ run: chmod 755 lspd_cln_plugin
shell: bash
- name: Cache LND client
@@ -127,7 +125,6 @@ runs:
--lndexec ~/go_lnd_lsp/bin/lnd \
--lndmobileexec ~/go_lnd_client/bin/lnd \
--clnpluginexec ${{ github.workspace }}/lspd_cln_plugin \
- --lspdexec ${{ github.workspace }}/lspd \
--preservelogs \
--testdir /home/runner/test_state || echo "step_failed=true" >> $GITHUB_ENV
shell: bash
diff --git a/.github/workflows/integration_tests.yaml b/.github/workflows/integration_tests.yaml
index 2ba15d2e..7f5890b6 100644
--- a/.github/workflows/integration_tests.yaml
+++ b/.github/workflows/integration_tests.yaml
@@ -5,10 +5,10 @@ on:
pull_request:
env:
BITCOIN_VERSION: '25.0'
- LSP_REF: 'breez-node-v0.17.2-beta'
- CLIENT_REF: 'v0.16.4-breez-3'
+ LSP_REF: 'breez-node-v0.17.5-beta'
+ CLIENT_REF: 'v0.17.5-breez-3'
GO_VERSION: '^1.19'
- CLN_VERSION: 'v24.02.2'
+ CLN_VERSION: 'v24.05'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
diff --git a/README.md b/README.md
index 499ec687..bd041732 100644
--- a/README.md
+++ b/README.md
@@ -45,13 +45,11 @@ go test -timeout 20m -v ./itest \
--lndexec /full/path/to/lnd \
--lndmobileexec /full/path/to/lnd \
--clnpluginexec /full/path/to/lspd_cln_plugin \
- --lspdexec /full/path/to/lspd \
```
- Required: `--lightningdexec` Full path to lightningd development build executable. Defaults to `lightningd` in `$PATH`.
- Required: `--lndexec` Full path to LSP LND executable. Defaults to `lnd` in `$PATH`.
- Required: `--lndmobileexec` Full path to Breez mobile client LND executable. No default.
-- Required: `--lspdexec` Full path to `lspd` executable to test. Defaults to `lspd` in `$PATH`.
- Required: `--clnpluginexec` Full path to the lspd cln plugin executable. No default.
- Recommended: `--bitcoindexec` Full path to `bitcoind`. Defaults to `bitcoind` in `$PATH`.
- Recommended: `--bitcoincliexec` Full path to `bitcoin-cli`. Defaults to `bitcoin-cli` in `$PATH`.
diff --git a/cmd/lspd/channel_opener_server.go b/channel_opener_server.go
similarity index 99%
rename from cmd/lspd/channel_opener_server.go
rename to channel_opener_server.go
index 4607531a..50fc04bb 100644
--- a/cmd/lspd/channel_opener_server.go
+++ b/channel_opener_server.go
@@ -1,4 +1,4 @@
-package main
+package lspd
import (
"context"
diff --git a/cln/cln_client.go b/cln/cln_client.go
index c4c1e1dc..05412197 100644
--- a/cln/cln_client.go
+++ b/cln/cln_client.go
@@ -211,12 +211,7 @@ func (c *ClnClient) GetChannel(peerID []byte, channelPoint wire.OutPoint) (*ligh
}
for _, c := range channels.Channels {
- if c.State == nil {
- log.Printf("Channel '%+v' with peer '%x' doesn't have a state (yet).",
- c.ShortChannelId, c.PeerId)
- continue
- }
- state := int32(*c.State)
+ state := int32(c.State)
log.Printf("getChannel destination: %s, scid: %+v, local alias: %+v, "+
"FundingTxID:%x, State:%+v ", pubkey, c.ShortChannelId,
c.Alias.Local, c.FundingTxid, c.State)
@@ -267,12 +262,7 @@ func (c *ClnClient) GetClosedChannels(
lookup := make(map[string]uint64)
for _, c := range channels.Channels {
- if c.State == nil {
- log.Printf("Channel '%+v' with peer '%x' doesn't have a state (yet).",
- c.ShortChannelId, c.PeerId)
- continue
- }
- state := int32(*c.State)
+ state := int32(c.State)
if slices.Contains(CLOSING_STATUSES, state) {
if c.ShortChannelId == nil {
@@ -371,11 +361,7 @@ func (c *ClnClient) WaitChannelActive(peerID []byte, deadline time.Time) error {
)
if err == nil {
for _, c := range peer.Channels {
- if c.State == nil {
- continue
- }
-
- if slices.Contains(OPEN_STATUSES, int32(*c.State)) {
+ if slices.Contains(OPEN_STATUSES, int32(c.State)) {
return nil
}
}
diff --git a/cln/rpc/node.pb.go b/cln/rpc/node.pb.go
index 7bd820e5..36ed3467 100644
--- a/cln/rpc/node.pb.go
+++ b/cln/rpc/node.pb.go
@@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.28.1
+// protoc-gen-go v1.33.0
// protoc v4.25.3
// source: node.proto
@@ -81,30 +81,30 @@ type GetinfoBinding_GetinfoBindingType int32
const (
GetinfoBinding_LOCAL_SOCKET GetinfoBinding_GetinfoBindingType = 0
- GetinfoBinding_WEBSOCKET GetinfoBinding_GetinfoBindingType = 5
GetinfoBinding_IPV4 GetinfoBinding_GetinfoBindingType = 1
GetinfoBinding_IPV6 GetinfoBinding_GetinfoBindingType = 2
GetinfoBinding_TORV2 GetinfoBinding_GetinfoBindingType = 3
GetinfoBinding_TORV3 GetinfoBinding_GetinfoBindingType = 4
+ GetinfoBinding_WEBSOCKET GetinfoBinding_GetinfoBindingType = 5
)
// Enum value maps for GetinfoBinding_GetinfoBindingType.
var (
GetinfoBinding_GetinfoBindingType_name = map[int32]string{
0: "LOCAL_SOCKET",
- 5: "WEBSOCKET",
1: "IPV4",
2: "IPV6",
3: "TORV2",
4: "TORV3",
+ 5: "WEBSOCKET",
}
GetinfoBinding_GetinfoBindingType_value = map[string]int32{
"LOCAL_SOCKET": 0,
- "WEBSOCKET": 5,
"IPV4": 1,
"IPV6": 2,
"TORV2": 3,
"TORV3": 4,
+ "WEBSOCKET": 5,
}
)
@@ -135,6 +135,62 @@ func (GetinfoBinding_GetinfoBindingType) EnumDescriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{4, 0}
}
+// ListPeers.level
+type ListpeersRequest_ListpeersLevel int32
+
+const (
+ ListpeersRequest_IO ListpeersRequest_ListpeersLevel = 0
+ ListpeersRequest_DEBUG ListpeersRequest_ListpeersLevel = 1
+ ListpeersRequest_INFO ListpeersRequest_ListpeersLevel = 2
+ ListpeersRequest_UNUSUAL ListpeersRequest_ListpeersLevel = 3
+ ListpeersRequest_TRACE ListpeersRequest_ListpeersLevel = 4
+)
+
+// Enum value maps for ListpeersRequest_ListpeersLevel.
+var (
+ ListpeersRequest_ListpeersLevel_name = map[int32]string{
+ 0: "IO",
+ 1: "DEBUG",
+ 2: "INFO",
+ 3: "UNUSUAL",
+ 4: "TRACE",
+ }
+ ListpeersRequest_ListpeersLevel_value = map[string]int32{
+ "IO": 0,
+ "DEBUG": 1,
+ "INFO": 2,
+ "UNUSUAL": 3,
+ "TRACE": 4,
+ }
+)
+
+func (x ListpeersRequest_ListpeersLevel) Enum() *ListpeersRequest_ListpeersLevel {
+ p := new(ListpeersRequest_ListpeersLevel)
+ *p = x
+ return p
+}
+
+func (x ListpeersRequest_ListpeersLevel) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ListpeersRequest_ListpeersLevel) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[2].Descriptor()
+}
+
+func (ListpeersRequest_ListpeersLevel) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[2]
+}
+
+func (x ListpeersRequest_ListpeersLevel) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ListpeersRequest_ListpeersLevel.Descriptor instead.
+func (ListpeersRequest_ListpeersLevel) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{5, 0}
+}
+
// ListPeers.peers[].log[].type
type ListpeersPeersLog_ListpeersPeersLogType int32
@@ -146,6 +202,7 @@ const (
ListpeersPeersLog_DEBUG ListpeersPeersLog_ListpeersPeersLogType = 4
ListpeersPeersLog_IO_IN ListpeersPeersLog_ListpeersPeersLogType = 5
ListpeersPeersLog_IO_OUT ListpeersPeersLog_ListpeersPeersLogType = 6
+ ListpeersPeersLog_TRACE ListpeersPeersLog_ListpeersPeersLogType = 7
)
// Enum value maps for ListpeersPeersLog_ListpeersPeersLogType.
@@ -158,6 +215,7 @@ var (
4: "DEBUG",
5: "IO_IN",
6: "IO_OUT",
+ 7: "TRACE",
}
ListpeersPeersLog_ListpeersPeersLogType_value = map[string]int32{
"SKIPPED": 0,
@@ -167,6 +225,7 @@ var (
"DEBUG": 4,
"IO_IN": 5,
"IO_OUT": 6,
+ "TRACE": 7,
}
)
@@ -181,11 +240,11 @@ func (x ListpeersPeersLog_ListpeersPeersLogType) String() string {
}
func (ListpeersPeersLog_ListpeersPeersLogType) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[2].Descriptor()
+ return file_node_proto_enumTypes[3].Descriptor()
}
func (ListpeersPeersLog_ListpeersPeersLogType) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[2]
+ return &file_node_proto_enumTypes[3]
}
func (x ListpeersPeersLog_ListpeersPeersLogType) Number() protoreflect.EnumNumber {
@@ -197,133 +256,6 @@ func (ListpeersPeersLog_ListpeersPeersLogType) EnumDescriptor() ([]byte, []int)
return file_node_proto_rawDescGZIP(), []int{8, 0}
}
-// ListPeers.peers[].channels[].state
-type ListpeersPeersChannels_ListpeersPeersChannelsState int32
-
-const (
- ListpeersPeersChannels_OPENINGD ListpeersPeersChannels_ListpeersPeersChannelsState = 0
- ListpeersPeersChannels_CHANNELD_AWAITING_LOCKIN ListpeersPeersChannels_ListpeersPeersChannelsState = 1
- ListpeersPeersChannels_CHANNELD_NORMAL ListpeersPeersChannels_ListpeersPeersChannelsState = 2
- ListpeersPeersChannels_CHANNELD_SHUTTING_DOWN ListpeersPeersChannels_ListpeersPeersChannelsState = 3
- ListpeersPeersChannels_CLOSINGD_SIGEXCHANGE ListpeersPeersChannels_ListpeersPeersChannelsState = 4
- ListpeersPeersChannels_CLOSINGD_COMPLETE ListpeersPeersChannels_ListpeersPeersChannelsState = 5
- ListpeersPeersChannels_AWAITING_UNILATERAL ListpeersPeersChannels_ListpeersPeersChannelsState = 6
- ListpeersPeersChannels_FUNDING_SPEND_SEEN ListpeersPeersChannels_ListpeersPeersChannelsState = 7
- ListpeersPeersChannels_ONCHAIN ListpeersPeersChannels_ListpeersPeersChannelsState = 8
- ListpeersPeersChannels_DUALOPEND_OPEN_INIT ListpeersPeersChannels_ListpeersPeersChannelsState = 9
- ListpeersPeersChannels_DUALOPEND_AWAITING_LOCKIN ListpeersPeersChannels_ListpeersPeersChannelsState = 10
- ListpeersPeersChannels_DUALOPEND_OPEN_COMMITTED ListpeersPeersChannels_ListpeersPeersChannelsState = 11
- ListpeersPeersChannels_DUALOPEND_OPEN_COMMIT_READY ListpeersPeersChannels_ListpeersPeersChannelsState = 12
-)
-
-// Enum value maps for ListpeersPeersChannels_ListpeersPeersChannelsState.
-var (
- ListpeersPeersChannels_ListpeersPeersChannelsState_name = map[int32]string{
- 0: "OPENINGD",
- 1: "CHANNELD_AWAITING_LOCKIN",
- 2: "CHANNELD_NORMAL",
- 3: "CHANNELD_SHUTTING_DOWN",
- 4: "CLOSINGD_SIGEXCHANGE",
- 5: "CLOSINGD_COMPLETE",
- 6: "AWAITING_UNILATERAL",
- 7: "FUNDING_SPEND_SEEN",
- 8: "ONCHAIN",
- 9: "DUALOPEND_OPEN_INIT",
- 10: "DUALOPEND_AWAITING_LOCKIN",
- 11: "DUALOPEND_OPEN_COMMITTED",
- 12: "DUALOPEND_OPEN_COMMIT_READY",
- }
- ListpeersPeersChannels_ListpeersPeersChannelsState_value = map[string]int32{
- "OPENINGD": 0,
- "CHANNELD_AWAITING_LOCKIN": 1,
- "CHANNELD_NORMAL": 2,
- "CHANNELD_SHUTTING_DOWN": 3,
- "CLOSINGD_SIGEXCHANGE": 4,
- "CLOSINGD_COMPLETE": 5,
- "AWAITING_UNILATERAL": 6,
- "FUNDING_SPEND_SEEN": 7,
- "ONCHAIN": 8,
- "DUALOPEND_OPEN_INIT": 9,
- "DUALOPEND_AWAITING_LOCKIN": 10,
- "DUALOPEND_OPEN_COMMITTED": 11,
- "DUALOPEND_OPEN_COMMIT_READY": 12,
- }
-)
-
-func (x ListpeersPeersChannels_ListpeersPeersChannelsState) Enum() *ListpeersPeersChannels_ListpeersPeersChannelsState {
- p := new(ListpeersPeersChannels_ListpeersPeersChannelsState)
- *p = x
- return p
-}
-
-func (x ListpeersPeersChannels_ListpeersPeersChannelsState) String() string {
- return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (ListpeersPeersChannels_ListpeersPeersChannelsState) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[3].Descriptor()
-}
-
-func (ListpeersPeersChannels_ListpeersPeersChannelsState) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[3]
-}
-
-func (x ListpeersPeersChannels_ListpeersPeersChannelsState) Number() protoreflect.EnumNumber {
- return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Use ListpeersPeersChannels_ListpeersPeersChannelsState.Descriptor instead.
-func (ListpeersPeersChannels_ListpeersPeersChannelsState) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{9, 0}
-}
-
-// ListPeers.peers[].channels[].htlcs[].direction
-type ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection int32
-
-const (
- ListpeersPeersChannelsHtlcs_IN ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection = 0
- ListpeersPeersChannelsHtlcs_OUT ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection = 1
-)
-
-// Enum value maps for ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection.
-var (
- ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection_name = map[int32]string{
- 0: "IN",
- 1: "OUT",
- }
- ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection_value = map[string]int32{
- "IN": 0,
- "OUT": 1,
- }
-)
-
-func (x ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) Enum() *ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection {
- p := new(ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection)
- *p = x
- return p
-}
-
-func (x ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) String() string {
- return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[4].Descriptor()
-}
-
-func (ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[4]
-}
-
-func (x ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) Number() protoreflect.EnumNumber {
- return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Use ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection.Descriptor instead.
-func (ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{14, 0}
-}
-
// ListFunds.outputs[].status
type ListfundsOutputs_ListfundsOutputsStatus int32
@@ -361,11 +293,11 @@ func (x ListfundsOutputs_ListfundsOutputsStatus) String() string {
}
func (ListfundsOutputs_ListfundsOutputsStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[5].Descriptor()
+ return file_node_proto_enumTypes[4].Descriptor()
}
func (ListfundsOutputs_ListfundsOutputsStatus) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[5]
+ return &file_node_proto_enumTypes[4]
}
func (x ListfundsOutputs_ListfundsOutputsStatus) Number() protoreflect.EnumNumber {
@@ -374,7 +306,7 @@ func (x ListfundsOutputs_ListfundsOutputsStatus) Number() protoreflect.EnumNumbe
// Deprecated: Use ListfundsOutputs_ListfundsOutputsStatus.Descriptor instead.
func (ListfundsOutputs_ListfundsOutputsStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{17, 0}
+ return file_node_proto_rawDescGZIP(), []int{11, 0}
}
// SendPay.status
@@ -408,11 +340,11 @@ func (x SendpayResponse_SendpayStatus) String() string {
}
func (SendpayResponse_SendpayStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[6].Descriptor()
+ return file_node_proto_enumTypes[5].Descriptor()
}
func (SendpayResponse_SendpayStatus) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[6]
+ return &file_node_proto_enumTypes[5]
}
func (x SendpayResponse_SendpayStatus) Number() protoreflect.EnumNumber {
@@ -421,7 +353,7 @@ func (x SendpayResponse_SendpayStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use SendpayResponse_SendpayStatus.Descriptor instead.
func (SendpayResponse_SendpayStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{20, 0}
+ return file_node_proto_rawDescGZIP(), []int{14, 0}
}
// Close.type
@@ -458,11 +390,11 @@ func (x CloseResponse_CloseType) String() string {
}
func (CloseResponse_CloseType) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[7].Descriptor()
+ return file_node_proto_enumTypes[6].Descriptor()
}
func (CloseResponse_CloseType) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[7]
+ return &file_node_proto_enumTypes[6]
}
func (x CloseResponse_CloseType) Number() protoreflect.EnumNumber {
@@ -471,7 +403,7 @@ func (x CloseResponse_CloseType) Number() protoreflect.EnumNumber {
// Deprecated: Use CloseResponse_CloseType.Descriptor instead.
func (CloseResponse_CloseType) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{32, 0}
+ return file_node_proto_rawDescGZIP(), []int{46, 0}
}
// Connect.direction
@@ -505,11 +437,11 @@ func (x ConnectResponse_ConnectDirection) String() string {
}
func (ConnectResponse_ConnectDirection) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[8].Descriptor()
+ return file_node_proto_enumTypes[7].Descriptor()
}
func (ConnectResponse_ConnectDirection) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[8]
+ return &file_node_proto_enumTypes[7]
}
func (x ConnectResponse_ConnectDirection) Number() protoreflect.EnumNumber {
@@ -518,7 +450,7 @@ func (x ConnectResponse_ConnectDirection) Number() protoreflect.EnumNumber {
// Deprecated: Use ConnectResponse_ConnectDirection.Descriptor instead.
func (ConnectResponse_ConnectDirection) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{34, 0}
+ return file_node_proto_rawDescGZIP(), []int{48, 0}
}
// Connect.address.type
@@ -561,11 +493,11 @@ func (x ConnectAddress_ConnectAddressType) String() string {
}
func (ConnectAddress_ConnectAddressType) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[9].Descriptor()
+ return file_node_proto_enumTypes[8].Descriptor()
}
func (ConnectAddress_ConnectAddressType) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[9]
+ return &file_node_proto_enumTypes[8]
}
func (x ConnectAddress_ConnectAddressType) Number() protoreflect.EnumNumber {
@@ -574,7 +506,7 @@ func (x ConnectAddress_ConnectAddressType) Number() protoreflect.EnumNumber {
// Deprecated: Use ConnectAddress_ConnectAddressType.Descriptor instead.
func (ConnectAddress_ConnectAddressType) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{35, 0}
+ return file_node_proto_rawDescGZIP(), []int{49, 0}
}
// CreateInvoice.status
@@ -611,11 +543,11 @@ func (x CreateinvoiceResponse_CreateinvoiceStatus) String() string {
}
func (CreateinvoiceResponse_CreateinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[10].Descriptor()
+ return file_node_proto_enumTypes[9].Descriptor()
}
func (CreateinvoiceResponse_CreateinvoiceStatus) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[10]
+ return &file_node_proto_enumTypes[9]
}
func (x CreateinvoiceResponse_CreateinvoiceStatus) Number() protoreflect.EnumNumber {
@@ -624,7 +556,7 @@ func (x CreateinvoiceResponse_CreateinvoiceStatus) Number() protoreflect.EnumNum
// Deprecated: Use CreateinvoiceResponse_CreateinvoiceStatus.Descriptor instead.
func (CreateinvoiceResponse_CreateinvoiceStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{37, 0}
+ return file_node_proto_rawDescGZIP(), []int{51, 0}
}
// Datastore.mode
@@ -667,11 +599,11 @@ func (x DatastoreRequest_DatastoreMode) String() string {
}
func (DatastoreRequest_DatastoreMode) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[11].Descriptor()
+ return file_node_proto_enumTypes[10].Descriptor()
}
func (DatastoreRequest_DatastoreMode) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[11]
+ return &file_node_proto_enumTypes[10]
}
func (x DatastoreRequest_DatastoreMode) Number() protoreflect.EnumNumber {
@@ -680,7 +612,7 @@ func (x DatastoreRequest_DatastoreMode) Number() protoreflect.EnumNumber {
// Deprecated: Use DatastoreRequest_DatastoreMode.Descriptor instead.
func (DatastoreRequest_DatastoreMode) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{39, 0}
+ return file_node_proto_rawDescGZIP(), []int{53, 0}
}
// DelInvoice.status
@@ -717,11 +649,11 @@ func (x DelinvoiceRequest_DelinvoiceStatus) String() string {
}
func (DelinvoiceRequest_DelinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[12].Descriptor()
+ return file_node_proto_enumTypes[11].Descriptor()
}
func (DelinvoiceRequest_DelinvoiceStatus) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[12]
+ return &file_node_proto_enumTypes[11]
}
func (x DelinvoiceRequest_DelinvoiceStatus) Number() protoreflect.EnumNumber {
@@ -730,7 +662,7 @@ func (x DelinvoiceRequest_DelinvoiceStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use DelinvoiceRequest_DelinvoiceStatus.Descriptor instead.
func (DelinvoiceRequest_DelinvoiceStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{51, 0}
+ return file_node_proto_rawDescGZIP(), []int{63, 0}
}
// DelInvoice.status
@@ -767,11 +699,11 @@ func (x DelinvoiceResponse_DelinvoiceStatus) String() string {
}
func (DelinvoiceResponse_DelinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
- return file_node_proto_enumTypes[13].Descriptor()
+ return file_node_proto_enumTypes[12].Descriptor()
}
func (DelinvoiceResponse_DelinvoiceStatus) Type() protoreflect.EnumType {
- return &file_node_proto_enumTypes[13]
+ return &file_node_proto_enumTypes[12]
}
func (x DelinvoiceResponse_DelinvoiceStatus) Number() protoreflect.EnumNumber {
@@ -780,7 +712,51 @@ func (x DelinvoiceResponse_DelinvoiceStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use DelinvoiceResponse_DelinvoiceStatus.Descriptor instead.
func (DelinvoiceResponse_DelinvoiceStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{52, 0}
+ return file_node_proto_rawDescGZIP(), []int{64, 0}
+}
+
+// Recover.result
+type RecoverResponse_RecoverResult int32
+
+const (
+ RecoverResponse_RECOVERY_RESTART_IN_PROGRESS RecoverResponse_RecoverResult = 0
+)
+
+// Enum value maps for RecoverResponse_RecoverResult.
+var (
+ RecoverResponse_RecoverResult_name = map[int32]string{
+ 0: "RECOVERY_RESTART_IN_PROGRESS",
+ }
+ RecoverResponse_RecoverResult_value = map[string]int32{
+ "RECOVERY_RESTART_IN_PROGRESS": 0,
+ }
+)
+
+func (x RecoverResponse_RecoverResult) Enum() *RecoverResponse_RecoverResult {
+ p := new(RecoverResponse_RecoverResult)
+ *p = x
+ return p
+}
+
+func (x RecoverResponse_RecoverResult) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (RecoverResponse_RecoverResult) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[13].Descriptor()
+}
+
+func (RecoverResponse_RecoverResult) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[13]
+}
+
+func (x RecoverResponse_RecoverResult) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use RecoverResponse_RecoverResult.Descriptor instead.
+func (RecoverResponse_RecoverResult) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{70, 0}
}
// ListInvoices.index
@@ -827,7 +803,7 @@ func (x ListinvoicesRequest_ListinvoicesIndex) Number() protoreflect.EnumNumber
// Deprecated: Use ListinvoicesRequest_ListinvoicesIndex.Descriptor instead.
func (ListinvoicesRequest_ListinvoicesIndex) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{58, 0}
+ return file_node_proto_rawDescGZIP(), []int{85, 0}
}
// ListInvoices.invoices[].status
@@ -877,7 +853,7 @@ func (x ListinvoicesInvoices_ListinvoicesInvoicesStatus) Number() protoreflect.E
// Deprecated: Use ListinvoicesInvoices_ListinvoicesInvoicesStatus.Descriptor instead.
func (ListinvoicesInvoices_ListinvoicesInvoicesStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{60, 0}
+ return file_node_proto_rawDescGZIP(), []int{87, 0}
}
// SendOnion.status
@@ -924,7 +900,7 @@ func (x SendonionResponse_SendonionStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use SendonionResponse_SendonionStatus.Descriptor instead.
func (SendonionResponse_SendonionStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{63, 0}
+ return file_node_proto_rawDescGZIP(), []int{90, 0}
}
// ListSendPays.status
@@ -974,7 +950,7 @@ func (x ListsendpaysRequest_ListsendpaysStatus) Number() protoreflect.EnumNumber
// Deprecated: Use ListsendpaysRequest_ListsendpaysStatus.Descriptor instead.
func (ListsendpaysRequest_ListsendpaysStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{65, 0}
+ return file_node_proto_rawDescGZIP(), []int{92, 0}
}
// ListSendPays.index
@@ -1021,7 +997,7 @@ func (x ListsendpaysRequest_ListsendpaysIndex) Number() protoreflect.EnumNumber
// Deprecated: Use ListsendpaysRequest_ListsendpaysIndex.Descriptor instead.
func (ListsendpaysRequest_ListsendpaysIndex) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{65, 1}
+ return file_node_proto_rawDescGZIP(), []int{92, 1}
}
// ListSendPays.payments[].status
@@ -1071,7 +1047,7 @@ func (x ListsendpaysPayments_ListsendpaysPaymentsStatus) Number() protoreflect.E
// Deprecated: Use ListsendpaysPayments_ListsendpaysPaymentsStatus.Descriptor instead.
func (ListsendpaysPayments_ListsendpaysPaymentsStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{67, 0}
+ return file_node_proto_rawDescGZIP(), []int{94, 0}
}
// Pay.status
@@ -1121,7 +1097,7 @@ func (x PayResponse_PayStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use PayResponse_PayStatus.Descriptor instead.
func (PayResponse_PayStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{74, 0}
+ return file_node_proto_rawDescGZIP(), []int{103, 0}
}
// ListNodes.nodes[].addresses[].type
@@ -1177,7 +1153,7 @@ func (x ListnodesNodesAddresses_ListnodesNodesAddressesType) Number() protorefle
// Deprecated: Use ListnodesNodesAddresses_ListnodesNodesAddressesType.Descriptor instead.
func (ListnodesNodesAddresses_ListnodesNodesAddressesType) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{78, 0}
+ return file_node_proto_rawDescGZIP(), []int{108, 0}
}
// WaitAnyInvoice.status
@@ -1224,7 +1200,7 @@ func (x WaitanyinvoiceResponse_WaitanyinvoiceStatus) Number() protoreflect.EnumN
// Deprecated: Use WaitanyinvoiceResponse_WaitanyinvoiceStatus.Descriptor instead.
func (WaitanyinvoiceResponse_WaitanyinvoiceStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{80, 0}
+ return file_node_proto_rawDescGZIP(), []int{110, 0}
}
// WaitInvoice.status
@@ -1271,7 +1247,7 @@ func (x WaitinvoiceResponse_WaitinvoiceStatus) Number() protoreflect.EnumNumber
// Deprecated: Use WaitinvoiceResponse_WaitinvoiceStatus.Descriptor instead.
func (WaitinvoiceResponse_WaitinvoiceStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{83, 0}
+ return file_node_proto_rawDescGZIP(), []int{113, 0}
}
// WaitSendPay.status
@@ -1315,7 +1291,7 @@ func (x WaitsendpayResponse_WaitsendpayStatus) Number() protoreflect.EnumNumber
// Deprecated: Use WaitsendpayResponse_WaitsendpayStatus.Descriptor instead.
func (WaitsendpayResponse_WaitsendpayStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{86, 0}
+ return file_node_proto_rawDescGZIP(), []int{116, 0}
}
// NewAddr.addresstype
@@ -1323,21 +1299,21 @@ type NewaddrRequest_NewaddrAddresstype int32
const (
NewaddrRequest_BECH32 NewaddrRequest_NewaddrAddresstype = 0
- NewaddrRequest_P2TR NewaddrRequest_NewaddrAddresstype = 3
NewaddrRequest_ALL NewaddrRequest_NewaddrAddresstype = 2
+ NewaddrRequest_P2TR NewaddrRequest_NewaddrAddresstype = 3
)
// Enum value maps for NewaddrRequest_NewaddrAddresstype.
var (
NewaddrRequest_NewaddrAddresstype_name = map[int32]string{
0: "BECH32",
- 3: "P2TR",
2: "ALL",
+ 3: "P2TR",
}
NewaddrRequest_NewaddrAddresstype_value = map[string]int32{
"BECH32": 0,
- "P2TR": 3,
"ALL": 2,
+ "P2TR": 3,
}
)
@@ -1365,7 +1341,7 @@ func (x NewaddrRequest_NewaddrAddresstype) Number() protoreflect.EnumNumber {
// Deprecated: Use NewaddrRequest_NewaddrAddresstype.Descriptor instead.
func (NewaddrRequest_NewaddrAddresstype) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{87, 0}
+ return file_node_proto_rawDescGZIP(), []int{117, 0}
}
// KeySend.status
@@ -1409,7 +1385,7 @@ func (x KeysendResponse_KeysendStatus) Number() protoreflect.EnumNumber {
// Deprecated: Use KeysendResponse_KeysendStatus.Descriptor instead.
func (KeysendResponse_KeysendStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{92, 0}
+ return file_node_proto_rawDescGZIP(), []int{122, 0}
}
// ListPeerChannels.channels[].state
@@ -1492,7 +1468,7 @@ func (x ListpeerchannelsChannels_ListpeerchannelsChannelsState) Number() protore
// Deprecated: Use ListpeerchannelsChannels_ListpeerchannelsChannelsState.Descriptor instead.
func (ListpeerchannelsChannels_ListpeerchannelsChannelsState) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{111, 0}
+ return file_node_proto_rawDescGZIP(), []int{141, 0}
}
// ListPeerChannels.channels[].htlcs[].direction
@@ -1539,7 +1515,7 @@ func (x ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) Nu
// Deprecated: Use ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection.Descriptor instead.
func (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{119, 0}
+ return file_node_proto_rawDescGZIP(), []int{149, 0}
}
// ListClosedChannels.closedchannels[].close_cause
@@ -1598,7 +1574,7 @@ func (x ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCa
// Deprecated: Use ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause.Descriptor instead.
func (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{122, 0}
+ return file_node_proto_rawDescGZIP(), []int{152, 0}
}
// DecodePay.fallbacks[].type
@@ -1654,7 +1630,7 @@ func (x DecodepayFallbacks_DecodepayFallbacksType) Number() protoreflect.EnumNum
// Deprecated: Use DecodepayFallbacks_DecodepayFallbacksType.Descriptor instead.
func (DecodepayFallbacks_DecodepayFallbacksType) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{126, 0}
+ return file_node_proto_rawDescGZIP(), []int{156, 0}
}
// Decode.type
@@ -1713,1832 +1689,1706 @@ func (x DecodeResponse_DecodeType) Number() protoreflect.EnumNumber {
// Deprecated: Use DecodeResponse_DecodeType.Descriptor instead.
func (DecodeResponse_DecodeType) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{129, 0}
+ return file_node_proto_rawDescGZIP(), []int{159, 0}
}
-// Feerates.style
-type FeeratesRequest_FeeratesStyle int32
+// Decode.fallbacks[].type
+type DecodeFallbacks_DecodeFallbacksType int32
const (
- FeeratesRequest_PERKB FeeratesRequest_FeeratesStyle = 0
- FeeratesRequest_PERKW FeeratesRequest_FeeratesStyle = 1
+ DecodeFallbacks_P2PKH DecodeFallbacks_DecodeFallbacksType = 0
+ DecodeFallbacks_P2SH DecodeFallbacks_DecodeFallbacksType = 1
+ DecodeFallbacks_P2WPKH DecodeFallbacks_DecodeFallbacksType = 2
+ DecodeFallbacks_P2WSH DecodeFallbacks_DecodeFallbacksType = 3
+ DecodeFallbacks_P2TR DecodeFallbacks_DecodeFallbacksType = 4
)
-// Enum value maps for FeeratesRequest_FeeratesStyle.
+// Enum value maps for DecodeFallbacks_DecodeFallbacksType.
var (
- FeeratesRequest_FeeratesStyle_name = map[int32]string{
- 0: "PERKB",
- 1: "PERKW",
+ DecodeFallbacks_DecodeFallbacksType_name = map[int32]string{
+ 0: "P2PKH",
+ 1: "P2SH",
+ 2: "P2WPKH",
+ 3: "P2WSH",
+ 4: "P2TR",
}
- FeeratesRequest_FeeratesStyle_value = map[string]int32{
- "PERKB": 0,
- "PERKW": 1,
+ DecodeFallbacks_DecodeFallbacksType_value = map[string]int32{
+ "P2PKH": 0,
+ "P2SH": 1,
+ "P2WPKH": 2,
+ "P2WSH": 3,
+ "P2TR": 4,
}
)
-func (x FeeratesRequest_FeeratesStyle) Enum() *FeeratesRequest_FeeratesStyle {
- p := new(FeeratesRequest_FeeratesStyle)
+func (x DecodeFallbacks_DecodeFallbacksType) Enum() *DecodeFallbacks_DecodeFallbacksType {
+ p := new(DecodeFallbacks_DecodeFallbacksType)
*p = x
return p
}
-func (x FeeratesRequest_FeeratesStyle) String() string {
+func (x DecodeFallbacks_DecodeFallbacksType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (FeeratesRequest_FeeratesStyle) Descriptor() protoreflect.EnumDescriptor {
+func (DecodeFallbacks_DecodeFallbacksType) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[32].Descriptor()
}
-func (FeeratesRequest_FeeratesStyle) Type() protoreflect.EnumType {
+func (DecodeFallbacks_DecodeFallbacksType) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[32]
}
-func (x FeeratesRequest_FeeratesStyle) Number() protoreflect.EnumNumber {
+func (x DecodeFallbacks_DecodeFallbacksType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use FeeratesRequest_FeeratesStyle.Descriptor instead.
-func (FeeratesRequest_FeeratesStyle) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{139, 0}
+// Deprecated: Use DecodeFallbacks_DecodeFallbacksType.Descriptor instead.
+func (DecodeFallbacks_DecodeFallbacksType) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{164, 0}
}
-// GetRoute.route[].style
-type GetrouteRoute_GetrouteRouteStyle int32
+// DelPay.status
+type DelpayRequest_DelpayStatus int32
const (
- GetrouteRoute_TLV GetrouteRoute_GetrouteRouteStyle = 0
+ DelpayRequest_COMPLETE DelpayRequest_DelpayStatus = 0
+ DelpayRequest_FAILED DelpayRequest_DelpayStatus = 1
)
-// Enum value maps for GetrouteRoute_GetrouteRouteStyle.
+// Enum value maps for DelpayRequest_DelpayStatus.
var (
- GetrouteRoute_GetrouteRouteStyle_name = map[int32]string{
- 0: "TLV",
+ DelpayRequest_DelpayStatus_name = map[int32]string{
+ 0: "COMPLETE",
+ 1: "FAILED",
}
- GetrouteRoute_GetrouteRouteStyle_value = map[string]int32{
- "TLV": 0,
+ DelpayRequest_DelpayStatus_value = map[string]int32{
+ "COMPLETE": 0,
+ "FAILED": 1,
}
)
-func (x GetrouteRoute_GetrouteRouteStyle) Enum() *GetrouteRoute_GetrouteRouteStyle {
- p := new(GetrouteRoute_GetrouteRouteStyle)
+func (x DelpayRequest_DelpayStatus) Enum() *DelpayRequest_DelpayStatus {
+ p := new(DelpayRequest_DelpayStatus)
*p = x
return p
}
-func (x GetrouteRoute_GetrouteRouteStyle) String() string {
+func (x DelpayRequest_DelpayStatus) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (GetrouteRoute_GetrouteRouteStyle) Descriptor() protoreflect.EnumDescriptor {
+func (DelpayRequest_DelpayStatus) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[33].Descriptor()
}
-func (GetrouteRoute_GetrouteRouteStyle) Type() protoreflect.EnumType {
+func (DelpayRequest_DelpayStatus) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[33]
}
-func (x GetrouteRoute_GetrouteRouteStyle) Number() protoreflect.EnumNumber {
+func (x DelpayRequest_DelpayStatus) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use GetrouteRoute_GetrouteRouteStyle.Descriptor instead.
-func (GetrouteRoute_GetrouteRouteStyle) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{155, 0}
+// Deprecated: Use DelpayRequest_DelpayStatus.Descriptor instead.
+func (DelpayRequest_DelpayStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{167, 0}
}
-// ListForwards.status
-type ListforwardsRequest_ListforwardsStatus int32
+// DelPay.payments[].status
+type DelpayPayments_DelpayPaymentsStatus int32
const (
- ListforwardsRequest_OFFERED ListforwardsRequest_ListforwardsStatus = 0
- ListforwardsRequest_SETTLED ListforwardsRequest_ListforwardsStatus = 1
- ListforwardsRequest_LOCAL_FAILED ListforwardsRequest_ListforwardsStatus = 2
- ListforwardsRequest_FAILED ListforwardsRequest_ListforwardsStatus = 3
+ DelpayPayments_PENDING DelpayPayments_DelpayPaymentsStatus = 0
+ DelpayPayments_FAILED DelpayPayments_DelpayPaymentsStatus = 1
+ DelpayPayments_COMPLETE DelpayPayments_DelpayPaymentsStatus = 2
)
-// Enum value maps for ListforwardsRequest_ListforwardsStatus.
+// Enum value maps for DelpayPayments_DelpayPaymentsStatus.
var (
- ListforwardsRequest_ListforwardsStatus_name = map[int32]string{
- 0: "OFFERED",
- 1: "SETTLED",
- 2: "LOCAL_FAILED",
- 3: "FAILED",
+ DelpayPayments_DelpayPaymentsStatus_name = map[int32]string{
+ 0: "PENDING",
+ 1: "FAILED",
+ 2: "COMPLETE",
}
- ListforwardsRequest_ListforwardsStatus_value = map[string]int32{
- "OFFERED": 0,
- "SETTLED": 1,
- "LOCAL_FAILED": 2,
- "FAILED": 3,
+ DelpayPayments_DelpayPaymentsStatus_value = map[string]int32{
+ "PENDING": 0,
+ "FAILED": 1,
+ "COMPLETE": 2,
}
)
-func (x ListforwardsRequest_ListforwardsStatus) Enum() *ListforwardsRequest_ListforwardsStatus {
- p := new(ListforwardsRequest_ListforwardsStatus)
+func (x DelpayPayments_DelpayPaymentsStatus) Enum() *DelpayPayments_DelpayPaymentsStatus {
+ p := new(DelpayPayments_DelpayPaymentsStatus)
*p = x
return p
}
-func (x ListforwardsRequest_ListforwardsStatus) String() string {
+func (x DelpayPayments_DelpayPaymentsStatus) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListforwardsRequest_ListforwardsStatus) Descriptor() protoreflect.EnumDescriptor {
+func (DelpayPayments_DelpayPaymentsStatus) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[34].Descriptor()
}
-func (ListforwardsRequest_ListforwardsStatus) Type() protoreflect.EnumType {
+func (DelpayPayments_DelpayPaymentsStatus) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[34]
}
-func (x ListforwardsRequest_ListforwardsStatus) Number() protoreflect.EnumNumber {
+func (x DelpayPayments_DelpayPaymentsStatus) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListforwardsRequest_ListforwardsStatus.Descriptor instead.
-func (ListforwardsRequest_ListforwardsStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{156, 0}
+// Deprecated: Use DelpayPayments_DelpayPaymentsStatus.Descriptor instead.
+func (DelpayPayments_DelpayPaymentsStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{169, 0}
}
-// ListForwards.index
-type ListforwardsRequest_ListforwardsIndex int32
+// DelForward.status
+type DelforwardRequest_DelforwardStatus int32
const (
- ListforwardsRequest_CREATED ListforwardsRequest_ListforwardsIndex = 0
- ListforwardsRequest_UPDATED ListforwardsRequest_ListforwardsIndex = 1
+ DelforwardRequest_SETTLED DelforwardRequest_DelforwardStatus = 0
+ DelforwardRequest_LOCAL_FAILED DelforwardRequest_DelforwardStatus = 1
+ DelforwardRequest_FAILED DelforwardRequest_DelforwardStatus = 2
)
-// Enum value maps for ListforwardsRequest_ListforwardsIndex.
+// Enum value maps for DelforwardRequest_DelforwardStatus.
var (
- ListforwardsRequest_ListforwardsIndex_name = map[int32]string{
- 0: "CREATED",
- 1: "UPDATED",
+ DelforwardRequest_DelforwardStatus_name = map[int32]string{
+ 0: "SETTLED",
+ 1: "LOCAL_FAILED",
+ 2: "FAILED",
}
- ListforwardsRequest_ListforwardsIndex_value = map[string]int32{
- "CREATED": 0,
- "UPDATED": 1,
+ DelforwardRequest_DelforwardStatus_value = map[string]int32{
+ "SETTLED": 0,
+ "LOCAL_FAILED": 1,
+ "FAILED": 2,
}
)
-func (x ListforwardsRequest_ListforwardsIndex) Enum() *ListforwardsRequest_ListforwardsIndex {
- p := new(ListforwardsRequest_ListforwardsIndex)
+func (x DelforwardRequest_DelforwardStatus) Enum() *DelforwardRequest_DelforwardStatus {
+ p := new(DelforwardRequest_DelforwardStatus)
*p = x
return p
}
-func (x ListforwardsRequest_ListforwardsIndex) String() string {
+func (x DelforwardRequest_DelforwardStatus) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListforwardsRequest_ListforwardsIndex) Descriptor() protoreflect.EnumDescriptor {
+func (DelforwardRequest_DelforwardStatus) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[35].Descriptor()
}
-func (ListforwardsRequest_ListforwardsIndex) Type() protoreflect.EnumType {
+func (DelforwardRequest_DelforwardStatus) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[35]
}
-func (x ListforwardsRequest_ListforwardsIndex) Number() protoreflect.EnumNumber {
+func (x DelforwardRequest_DelforwardStatus) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListforwardsRequest_ListforwardsIndex.Descriptor instead.
-func (ListforwardsRequest_ListforwardsIndex) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{156, 1}
+// Deprecated: Use DelforwardRequest_DelforwardStatus.Descriptor instead.
+func (DelforwardRequest_DelforwardStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{170, 0}
}
-// ListForwards.forwards[].status
-type ListforwardsForwards_ListforwardsForwardsStatus int32
+// Feerates.style
+type FeeratesRequest_FeeratesStyle int32
const (
- ListforwardsForwards_OFFERED ListforwardsForwards_ListforwardsForwardsStatus = 0
- ListforwardsForwards_SETTLED ListforwardsForwards_ListforwardsForwardsStatus = 1
- ListforwardsForwards_LOCAL_FAILED ListforwardsForwards_ListforwardsForwardsStatus = 2
- ListforwardsForwards_FAILED ListforwardsForwards_ListforwardsForwardsStatus = 3
+ FeeratesRequest_PERKB FeeratesRequest_FeeratesStyle = 0
+ FeeratesRequest_PERKW FeeratesRequest_FeeratesStyle = 1
)
-// Enum value maps for ListforwardsForwards_ListforwardsForwardsStatus.
+// Enum value maps for FeeratesRequest_FeeratesStyle.
var (
- ListforwardsForwards_ListforwardsForwardsStatus_name = map[int32]string{
- 0: "OFFERED",
- 1: "SETTLED",
- 2: "LOCAL_FAILED",
- 3: "FAILED",
+ FeeratesRequest_FeeratesStyle_name = map[int32]string{
+ 0: "PERKB",
+ 1: "PERKW",
}
- ListforwardsForwards_ListforwardsForwardsStatus_value = map[string]int32{
- "OFFERED": 0,
- "SETTLED": 1,
- "LOCAL_FAILED": 2,
- "FAILED": 3,
+ FeeratesRequest_FeeratesStyle_value = map[string]int32{
+ "PERKB": 0,
+ "PERKW": 1,
}
)
-func (x ListforwardsForwards_ListforwardsForwardsStatus) Enum() *ListforwardsForwards_ListforwardsForwardsStatus {
- p := new(ListforwardsForwards_ListforwardsForwardsStatus)
+func (x FeeratesRequest_FeeratesStyle) Enum() *FeeratesRequest_FeeratesStyle {
+ p := new(FeeratesRequest_FeeratesStyle)
*p = x
return p
}
-func (x ListforwardsForwards_ListforwardsForwardsStatus) String() string {
+func (x FeeratesRequest_FeeratesStyle) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListforwardsForwards_ListforwardsForwardsStatus) Descriptor() protoreflect.EnumDescriptor {
+func (FeeratesRequest_FeeratesStyle) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[36].Descriptor()
}
-func (ListforwardsForwards_ListforwardsForwardsStatus) Type() protoreflect.EnumType {
+func (FeeratesRequest_FeeratesStyle) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[36]
}
-func (x ListforwardsForwards_ListforwardsForwardsStatus) Number() protoreflect.EnumNumber {
+func (x FeeratesRequest_FeeratesStyle) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStatus.Descriptor instead.
-func (ListforwardsForwards_ListforwardsForwardsStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{158, 0}
+// Deprecated: Use FeeratesRequest_FeeratesStyle.Descriptor instead.
+func (FeeratesRequest_FeeratesStyle) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{176, 0}
}
-// ListForwards.forwards[].style
-type ListforwardsForwards_ListforwardsForwardsStyle int32
+// GetLog.level
+type GetlogRequest_GetlogLevel int32
const (
- ListforwardsForwards_LEGACY ListforwardsForwards_ListforwardsForwardsStyle = 0
- ListforwardsForwards_TLV ListforwardsForwards_ListforwardsForwardsStyle = 1
+ GetlogRequest_BROKEN GetlogRequest_GetlogLevel = 0
+ GetlogRequest_UNUSUAL GetlogRequest_GetlogLevel = 1
+ GetlogRequest_INFO GetlogRequest_GetlogLevel = 2
+ GetlogRequest_DEBUG GetlogRequest_GetlogLevel = 3
+ GetlogRequest_IO GetlogRequest_GetlogLevel = 4
+ GetlogRequest_TRACE GetlogRequest_GetlogLevel = 5
)
-// Enum value maps for ListforwardsForwards_ListforwardsForwardsStyle.
+// Enum value maps for GetlogRequest_GetlogLevel.
var (
- ListforwardsForwards_ListforwardsForwardsStyle_name = map[int32]string{
- 0: "LEGACY",
- 1: "TLV",
- }
- ListforwardsForwards_ListforwardsForwardsStyle_value = map[string]int32{
- "LEGACY": 0,
- "TLV": 1,
+ GetlogRequest_GetlogLevel_name = map[int32]string{
+ 0: "BROKEN",
+ 1: "UNUSUAL",
+ 2: "INFO",
+ 3: "DEBUG",
+ 4: "IO",
+ 5: "TRACE",
+ }
+ GetlogRequest_GetlogLevel_value = map[string]int32{
+ "BROKEN": 0,
+ "UNUSUAL": 1,
+ "INFO": 2,
+ "DEBUG": 3,
+ "IO": 4,
+ "TRACE": 5,
}
)
-func (x ListforwardsForwards_ListforwardsForwardsStyle) Enum() *ListforwardsForwards_ListforwardsForwardsStyle {
- p := new(ListforwardsForwards_ListforwardsForwardsStyle)
+func (x GetlogRequest_GetlogLevel) Enum() *GetlogRequest_GetlogLevel {
+ p := new(GetlogRequest_GetlogLevel)
*p = x
return p
}
-func (x ListforwardsForwards_ListforwardsForwardsStyle) String() string {
+func (x GetlogRequest_GetlogLevel) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListforwardsForwards_ListforwardsForwardsStyle) Descriptor() protoreflect.EnumDescriptor {
+func (GetlogRequest_GetlogLevel) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[37].Descriptor()
}
-func (ListforwardsForwards_ListforwardsForwardsStyle) Type() protoreflect.EnumType {
+func (GetlogRequest_GetlogLevel) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[37]
}
-func (x ListforwardsForwards_ListforwardsForwardsStyle) Number() protoreflect.EnumNumber {
+func (x GetlogRequest_GetlogLevel) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStyle.Descriptor instead.
-func (ListforwardsForwards_ListforwardsForwardsStyle) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{158, 1}
+// Deprecated: Use GetlogRequest_GetlogLevel.Descriptor instead.
+func (GetlogRequest_GetlogLevel) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{197, 0}
}
-// ListPays.status
-type ListpaysRequest_ListpaysStatus int32
+// GetLog.log[].type
+type GetlogLog_GetlogLogType int32
const (
- ListpaysRequest_PENDING ListpaysRequest_ListpaysStatus = 0
- ListpaysRequest_COMPLETE ListpaysRequest_ListpaysStatus = 1
- ListpaysRequest_FAILED ListpaysRequest_ListpaysStatus = 2
+ GetlogLog_SKIPPED GetlogLog_GetlogLogType = 0
+ GetlogLog_BROKEN GetlogLog_GetlogLogType = 1
+ GetlogLog_UNUSUAL GetlogLog_GetlogLogType = 2
+ GetlogLog_INFO GetlogLog_GetlogLogType = 3
+ GetlogLog_DEBUG GetlogLog_GetlogLogType = 4
+ GetlogLog_IO_IN GetlogLog_GetlogLogType = 5
+ GetlogLog_IO_OUT GetlogLog_GetlogLogType = 6
+ GetlogLog_TRACE GetlogLog_GetlogLogType = 7
)
-// Enum value maps for ListpaysRequest_ListpaysStatus.
+// Enum value maps for GetlogLog_GetlogLogType.
var (
- ListpaysRequest_ListpaysStatus_name = map[int32]string{
- 0: "PENDING",
- 1: "COMPLETE",
- 2: "FAILED",
+ GetlogLog_GetlogLogType_name = map[int32]string{
+ 0: "SKIPPED",
+ 1: "BROKEN",
+ 2: "UNUSUAL",
+ 3: "INFO",
+ 4: "DEBUG",
+ 5: "IO_IN",
+ 6: "IO_OUT",
+ 7: "TRACE",
}
- ListpaysRequest_ListpaysStatus_value = map[string]int32{
- "PENDING": 0,
- "COMPLETE": 1,
- "FAILED": 2,
+ GetlogLog_GetlogLogType_value = map[string]int32{
+ "SKIPPED": 0,
+ "BROKEN": 1,
+ "UNUSUAL": 2,
+ "INFO": 3,
+ "DEBUG": 4,
+ "IO_IN": 5,
+ "IO_OUT": 6,
+ "TRACE": 7,
}
)
-func (x ListpaysRequest_ListpaysStatus) Enum() *ListpaysRequest_ListpaysStatus {
- p := new(ListpaysRequest_ListpaysStatus)
+func (x GetlogLog_GetlogLogType) Enum() *GetlogLog_GetlogLogType {
+ p := new(GetlogLog_GetlogLogType)
*p = x
return p
}
-func (x ListpaysRequest_ListpaysStatus) String() string {
+func (x GetlogLog_GetlogLogType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListpaysRequest_ListpaysStatus) Descriptor() protoreflect.EnumDescriptor {
+func (GetlogLog_GetlogLogType) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[38].Descriptor()
}
-func (ListpaysRequest_ListpaysStatus) Type() protoreflect.EnumType {
+func (GetlogLog_GetlogLogType) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[38]
}
-func (x ListpaysRequest_ListpaysStatus) Number() protoreflect.EnumNumber {
+func (x GetlogLog_GetlogLogType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListpaysRequest_ListpaysStatus.Descriptor instead.
-func (ListpaysRequest_ListpaysStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{162, 0}
+// Deprecated: Use GetlogLog_GetlogLogType.Descriptor instead.
+func (GetlogLog_GetlogLogType) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{199, 0}
}
-// ListPays.pays[].status
-type ListpaysPays_ListpaysPaysStatus int32
+// FunderUpdate.policy
+type FunderupdateRequest_FunderupdatePolicy int32
const (
- ListpaysPays_PENDING ListpaysPays_ListpaysPaysStatus = 0
- ListpaysPays_FAILED ListpaysPays_ListpaysPaysStatus = 1
- ListpaysPays_COMPLETE ListpaysPays_ListpaysPaysStatus = 2
+ FunderupdateRequest_MATCH FunderupdateRequest_FunderupdatePolicy = 0
+ FunderupdateRequest_AVAILABLE FunderupdateRequest_FunderupdatePolicy = 1
+ FunderupdateRequest_FIXED FunderupdateRequest_FunderupdatePolicy = 2
)
-// Enum value maps for ListpaysPays_ListpaysPaysStatus.
+// Enum value maps for FunderupdateRequest_FunderupdatePolicy.
var (
- ListpaysPays_ListpaysPaysStatus_name = map[int32]string{
- 0: "PENDING",
- 1: "FAILED",
- 2: "COMPLETE",
+ FunderupdateRequest_FunderupdatePolicy_name = map[int32]string{
+ 0: "MATCH",
+ 1: "AVAILABLE",
+ 2: "FIXED",
}
- ListpaysPays_ListpaysPaysStatus_value = map[string]int32{
- "PENDING": 0,
- "FAILED": 1,
- "COMPLETE": 2,
+ FunderupdateRequest_FunderupdatePolicy_value = map[string]int32{
+ "MATCH": 0,
+ "AVAILABLE": 1,
+ "FIXED": 2,
}
)
-func (x ListpaysPays_ListpaysPaysStatus) Enum() *ListpaysPays_ListpaysPaysStatus {
- p := new(ListpaysPays_ListpaysPaysStatus)
+func (x FunderupdateRequest_FunderupdatePolicy) Enum() *FunderupdateRequest_FunderupdatePolicy {
+ p := new(FunderupdateRequest_FunderupdatePolicy)
*p = x
return p
}
-func (x ListpaysPays_ListpaysPaysStatus) String() string {
+func (x FunderupdateRequest_FunderupdatePolicy) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListpaysPays_ListpaysPaysStatus) Descriptor() protoreflect.EnumDescriptor {
+func (FunderupdateRequest_FunderupdatePolicy) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[39].Descriptor()
}
-func (ListpaysPays_ListpaysPaysStatus) Type() protoreflect.EnumType {
+func (FunderupdateRequest_FunderupdatePolicy) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[39]
}
-func (x ListpaysPays_ListpaysPaysStatus) Number() protoreflect.EnumNumber {
+func (x FunderupdateRequest_FunderupdatePolicy) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListpaysPays_ListpaysPaysStatus.Descriptor instead.
-func (ListpaysPays_ListpaysPaysStatus) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{164, 0}
+// Deprecated: Use FunderupdateRequest_FunderupdatePolicy.Descriptor instead.
+func (FunderupdateRequest_FunderupdatePolicy) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{200, 0}
}
-// ListHtlcs.htlcs[].direction
-type ListhtlcsHtlcs_ListhtlcsHtlcsDirection int32
+// FunderUpdate.policy
+type FunderupdateResponse_FunderupdatePolicy int32
const (
- ListhtlcsHtlcs_OUT ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 0
- ListhtlcsHtlcs_IN ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 1
+ FunderupdateResponse_MATCH FunderupdateResponse_FunderupdatePolicy = 0
+ FunderupdateResponse_AVAILABLE FunderupdateResponse_FunderupdatePolicy = 1
+ FunderupdateResponse_FIXED FunderupdateResponse_FunderupdatePolicy = 2
)
-// Enum value maps for ListhtlcsHtlcs_ListhtlcsHtlcsDirection.
+// Enum value maps for FunderupdateResponse_FunderupdatePolicy.
var (
- ListhtlcsHtlcs_ListhtlcsHtlcsDirection_name = map[int32]string{
- 0: "OUT",
- 1: "IN",
+ FunderupdateResponse_FunderupdatePolicy_name = map[int32]string{
+ 0: "MATCH",
+ 1: "AVAILABLE",
+ 2: "FIXED",
}
- ListhtlcsHtlcs_ListhtlcsHtlcsDirection_value = map[string]int32{
- "OUT": 0,
- "IN": 1,
+ FunderupdateResponse_FunderupdatePolicy_value = map[string]int32{
+ "MATCH": 0,
+ "AVAILABLE": 1,
+ "FIXED": 2,
}
)
-func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Enum() *ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
- p := new(ListhtlcsHtlcs_ListhtlcsHtlcsDirection)
+func (x FunderupdateResponse_FunderupdatePolicy) Enum() *FunderupdateResponse_FunderupdatePolicy {
+ p := new(FunderupdateResponse_FunderupdatePolicy)
*p = x
return p
}
-func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) String() string {
+func (x FunderupdateResponse_FunderupdatePolicy) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Descriptor() protoreflect.EnumDescriptor {
+func (FunderupdateResponse_FunderupdatePolicy) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[40].Descriptor()
}
-func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Type() protoreflect.EnumType {
+func (FunderupdateResponse_FunderupdatePolicy) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[40]
}
-func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Number() protoreflect.EnumNumber {
+func (x FunderupdateResponse_FunderupdatePolicy) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use ListhtlcsHtlcs_ListhtlcsHtlcsDirection.Descriptor instead.
-func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{167, 0}
+// Deprecated: Use FunderupdateResponse_FunderupdatePolicy.Descriptor instead.
+func (FunderupdateResponse_FunderupdatePolicy) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{201, 0}
}
-// Wait.subsystem
-type WaitRequest_WaitSubsystem int32
+// GetRoute.route[].style
+type GetrouteRoute_GetrouteRouteStyle int32
const (
- WaitRequest_INVOICES WaitRequest_WaitSubsystem = 0
- WaitRequest_FORWARDS WaitRequest_WaitSubsystem = 1
- WaitRequest_SENDPAYS WaitRequest_WaitSubsystem = 2
+ GetrouteRoute_TLV GetrouteRoute_GetrouteRouteStyle = 0
)
-// Enum value maps for WaitRequest_WaitSubsystem.
+// Enum value maps for GetrouteRoute_GetrouteRouteStyle.
var (
- WaitRequest_WaitSubsystem_name = map[int32]string{
- 0: "INVOICES",
- 1: "FORWARDS",
- 2: "SENDPAYS",
+ GetrouteRoute_GetrouteRouteStyle_name = map[int32]string{
+ 0: "TLV",
}
- WaitRequest_WaitSubsystem_value = map[string]int32{
- "INVOICES": 0,
- "FORWARDS": 1,
- "SENDPAYS": 2,
+ GetrouteRoute_GetrouteRouteStyle_value = map[string]int32{
+ "TLV": 0,
}
)
-func (x WaitRequest_WaitSubsystem) Enum() *WaitRequest_WaitSubsystem {
- p := new(WaitRequest_WaitSubsystem)
+func (x GetrouteRoute_GetrouteRouteStyle) Enum() *GetrouteRoute_GetrouteRouteStyle {
+ p := new(GetrouteRoute_GetrouteRouteStyle)
*p = x
return p
}
-func (x WaitRequest_WaitSubsystem) String() string {
+func (x GetrouteRoute_GetrouteRouteStyle) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (WaitRequest_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
+func (GetrouteRoute_GetrouteRouteStyle) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[41].Descriptor()
}
-func (WaitRequest_WaitSubsystem) Type() protoreflect.EnumType {
+func (GetrouteRoute_GetrouteRouteStyle) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[41]
}
-func (x WaitRequest_WaitSubsystem) Number() protoreflect.EnumNumber {
+func (x GetrouteRoute_GetrouteRouteStyle) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use WaitRequest_WaitSubsystem.Descriptor instead.
-func (WaitRequest_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{183, 0}
+// Deprecated: Use GetrouteRoute_GetrouteRouteStyle.Descriptor instead.
+func (GetrouteRoute_GetrouteRouteStyle) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{204, 0}
}
-// Wait.indexname
-type WaitRequest_WaitIndexname int32
+// ListForwards.status
+type ListforwardsRequest_ListforwardsStatus int32
const (
- WaitRequest_CREATED WaitRequest_WaitIndexname = 0
- WaitRequest_UPDATED WaitRequest_WaitIndexname = 1
- WaitRequest_DELETED WaitRequest_WaitIndexname = 2
+ ListforwardsRequest_OFFERED ListforwardsRequest_ListforwardsStatus = 0
+ ListforwardsRequest_SETTLED ListforwardsRequest_ListforwardsStatus = 1
+ ListforwardsRequest_LOCAL_FAILED ListforwardsRequest_ListforwardsStatus = 2
+ ListforwardsRequest_FAILED ListforwardsRequest_ListforwardsStatus = 3
)
-// Enum value maps for WaitRequest_WaitIndexname.
+// Enum value maps for ListforwardsRequest_ListforwardsStatus.
var (
- WaitRequest_WaitIndexname_name = map[int32]string{
- 0: "CREATED",
- 1: "UPDATED",
- 2: "DELETED",
- }
- WaitRequest_WaitIndexname_value = map[string]int32{
- "CREATED": 0,
- "UPDATED": 1,
- "DELETED": 2,
+ ListforwardsRequest_ListforwardsStatus_name = map[int32]string{
+ 0: "OFFERED",
+ 1: "SETTLED",
+ 2: "LOCAL_FAILED",
+ 3: "FAILED",
}
-)
-
-func (x WaitRequest_WaitIndexname) Enum() *WaitRequest_WaitIndexname {
- p := new(WaitRequest_WaitIndexname)
+ ListforwardsRequest_ListforwardsStatus_value = map[string]int32{
+ "OFFERED": 0,
+ "SETTLED": 1,
+ "LOCAL_FAILED": 2,
+ "FAILED": 3,
+ }
+)
+
+func (x ListforwardsRequest_ListforwardsStatus) Enum() *ListforwardsRequest_ListforwardsStatus {
+ p := new(ListforwardsRequest_ListforwardsStatus)
*p = x
return p
}
-func (x WaitRequest_WaitIndexname) String() string {
+func (x ListforwardsRequest_ListforwardsStatus) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (WaitRequest_WaitIndexname) Descriptor() protoreflect.EnumDescriptor {
+func (ListforwardsRequest_ListforwardsStatus) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[42].Descriptor()
}
-func (WaitRequest_WaitIndexname) Type() protoreflect.EnumType {
+func (ListforwardsRequest_ListforwardsStatus) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[42]
}
-func (x WaitRequest_WaitIndexname) Number() protoreflect.EnumNumber {
+func (x ListforwardsRequest_ListforwardsStatus) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use WaitRequest_WaitIndexname.Descriptor instead.
-func (WaitRequest_WaitIndexname) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{183, 1}
+// Deprecated: Use ListforwardsRequest_ListforwardsStatus.Descriptor instead.
+func (ListforwardsRequest_ListforwardsStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{205, 0}
}
-// Wait.subsystem
-type WaitResponse_WaitSubsystem int32
+// ListForwards.index
+type ListforwardsRequest_ListforwardsIndex int32
const (
- WaitResponse_INVOICES WaitResponse_WaitSubsystem = 0
- WaitResponse_FORWARDS WaitResponse_WaitSubsystem = 1
- WaitResponse_SENDPAYS WaitResponse_WaitSubsystem = 2
+ ListforwardsRequest_CREATED ListforwardsRequest_ListforwardsIndex = 0
+ ListforwardsRequest_UPDATED ListforwardsRequest_ListforwardsIndex = 1
)
-// Enum value maps for WaitResponse_WaitSubsystem.
+// Enum value maps for ListforwardsRequest_ListforwardsIndex.
var (
- WaitResponse_WaitSubsystem_name = map[int32]string{
- 0: "INVOICES",
- 1: "FORWARDS",
- 2: "SENDPAYS",
+ ListforwardsRequest_ListforwardsIndex_name = map[int32]string{
+ 0: "CREATED",
+ 1: "UPDATED",
}
- WaitResponse_WaitSubsystem_value = map[string]int32{
- "INVOICES": 0,
- "FORWARDS": 1,
- "SENDPAYS": 2,
+ ListforwardsRequest_ListforwardsIndex_value = map[string]int32{
+ "CREATED": 0,
+ "UPDATED": 1,
}
)
-func (x WaitResponse_WaitSubsystem) Enum() *WaitResponse_WaitSubsystem {
- p := new(WaitResponse_WaitSubsystem)
+func (x ListforwardsRequest_ListforwardsIndex) Enum() *ListforwardsRequest_ListforwardsIndex {
+ p := new(ListforwardsRequest_ListforwardsIndex)
*p = x
return p
}
-func (x WaitResponse_WaitSubsystem) String() string {
+func (x ListforwardsRequest_ListforwardsIndex) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (WaitResponse_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
+func (ListforwardsRequest_ListforwardsIndex) Descriptor() protoreflect.EnumDescriptor {
return file_node_proto_enumTypes[43].Descriptor()
}
-func (WaitResponse_WaitSubsystem) Type() protoreflect.EnumType {
+func (ListforwardsRequest_ListforwardsIndex) Type() protoreflect.EnumType {
return &file_node_proto_enumTypes[43]
}
-func (x WaitResponse_WaitSubsystem) Number() protoreflect.EnumNumber {
+func (x ListforwardsRequest_ListforwardsIndex) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
-// Deprecated: Use WaitResponse_WaitSubsystem.Descriptor instead.
-func (WaitResponse_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{184, 0}
-}
-
-type GetinfoRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-}
-
-func (x *GetinfoRequest) Reset() {
- *x = GetinfoRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+// Deprecated: Use ListforwardsRequest_ListforwardsIndex.Descriptor instead.
+func (ListforwardsRequest_ListforwardsIndex) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{205, 1}
}
-func (x *GetinfoRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
+// ListForwards.forwards[].status
+type ListforwardsForwards_ListforwardsForwardsStatus int32
-func (*GetinfoRequest) ProtoMessage() {}
+const (
+ ListforwardsForwards_OFFERED ListforwardsForwards_ListforwardsForwardsStatus = 0
+ ListforwardsForwards_SETTLED ListforwardsForwards_ListforwardsForwardsStatus = 1
+ ListforwardsForwards_LOCAL_FAILED ListforwardsForwards_ListforwardsForwardsStatus = 2
+ ListforwardsForwards_FAILED ListforwardsForwards_ListforwardsForwardsStatus = 3
+)
-func (x *GetinfoRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+// Enum value maps for ListforwardsForwards_ListforwardsForwardsStatus.
+var (
+ ListforwardsForwards_ListforwardsForwardsStatus_name = map[int32]string{
+ 0: "OFFERED",
+ 1: "SETTLED",
+ 2: "LOCAL_FAILED",
+ 3: "FAILED",
}
- return mi.MessageOf(x)
-}
+ ListforwardsForwards_ListforwardsForwardsStatus_value = map[string]int32{
+ "OFFERED": 0,
+ "SETTLED": 1,
+ "LOCAL_FAILED": 2,
+ "FAILED": 3,
+ }
+)
-// Deprecated: Use GetinfoRequest.ProtoReflect.Descriptor instead.
-func (*GetinfoRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{0}
+func (x ListforwardsForwards_ListforwardsForwardsStatus) Enum() *ListforwardsForwards_ListforwardsForwardsStatus {
+ p := new(ListforwardsForwards_ListforwardsForwardsStatus)
+ *p = x
+ return p
}
-type GetinfoResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Alias *string `protobuf:"bytes,2,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
- Color []byte `protobuf:"bytes,3,opt,name=color,proto3" json:"color,omitempty"`
- NumPeers uint32 `protobuf:"varint,4,opt,name=num_peers,json=numPeers,proto3" json:"num_peers,omitempty"`
- NumPendingChannels uint32 `protobuf:"varint,5,opt,name=num_pending_channels,json=numPendingChannels,proto3" json:"num_pending_channels,omitempty"`
- NumActiveChannels uint32 `protobuf:"varint,6,opt,name=num_active_channels,json=numActiveChannels,proto3" json:"num_active_channels,omitempty"`
- NumInactiveChannels uint32 `protobuf:"varint,7,opt,name=num_inactive_channels,json=numInactiveChannels,proto3" json:"num_inactive_channels,omitempty"`
- Version string `protobuf:"bytes,8,opt,name=version,proto3" json:"version,omitempty"`
- LightningDir string `protobuf:"bytes,9,opt,name=lightning_dir,json=lightningDir,proto3" json:"lightning_dir,omitempty"`
- OurFeatures *GetinfoOurFeatures `protobuf:"bytes,10,opt,name=our_features,json=ourFeatures,proto3,oneof" json:"our_features,omitempty"`
- Blockheight uint32 `protobuf:"varint,11,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
- Network string `protobuf:"bytes,12,opt,name=network,proto3" json:"network,omitempty"`
- FeesCollectedMsat *Amount `protobuf:"bytes,13,opt,name=fees_collected_msat,json=feesCollectedMsat,proto3" json:"fees_collected_msat,omitempty"`
- Address []*GetinfoAddress `protobuf:"bytes,14,rep,name=address,proto3" json:"address,omitempty"`
- Binding []*GetinfoBinding `protobuf:"bytes,15,rep,name=binding,proto3" json:"binding,omitempty"`
- WarningBitcoindSync *string `protobuf:"bytes,16,opt,name=warning_bitcoind_sync,json=warningBitcoindSync,proto3,oneof" json:"warning_bitcoind_sync,omitempty"`
- WarningLightningdSync *string `protobuf:"bytes,17,opt,name=warning_lightningd_sync,json=warningLightningdSync,proto3,oneof" json:"warning_lightningd_sync,omitempty"`
+func (x ListforwardsForwards_ListforwardsForwardsStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *GetinfoResponse) Reset() {
- *x = GetinfoResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+func (ListforwardsForwards_ListforwardsForwardsStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[44].Descriptor()
}
-func (x *GetinfoResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (ListforwardsForwards_ListforwardsForwardsStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[44]
}
-func (*GetinfoResponse) ProtoMessage() {}
-
-func (x *GetinfoResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (x ListforwardsForwards_ListforwardsForwardsStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-// Deprecated: Use GetinfoResponse.ProtoReflect.Descriptor instead.
-func (*GetinfoResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{1}
+// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStatus.Descriptor instead.
+func (ListforwardsForwards_ListforwardsForwardsStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{207, 0}
}
-func (x *GetinfoResponse) GetId() []byte {
- if x != nil {
- return x.Id
- }
- return nil
-}
+// ListForwards.forwards[].style
+type ListforwardsForwards_ListforwardsForwardsStyle int32
-func (x *GetinfoResponse) GetAlias() string {
- if x != nil && x.Alias != nil {
- return *x.Alias
- }
- return ""
-}
+const (
+ ListforwardsForwards_LEGACY ListforwardsForwards_ListforwardsForwardsStyle = 0
+ ListforwardsForwards_TLV ListforwardsForwards_ListforwardsForwardsStyle = 1
+)
-func (x *GetinfoResponse) GetColor() []byte {
- if x != nil {
- return x.Color
+// Enum value maps for ListforwardsForwards_ListforwardsForwardsStyle.
+var (
+ ListforwardsForwards_ListforwardsForwardsStyle_name = map[int32]string{
+ 0: "LEGACY",
+ 1: "TLV",
}
- return nil
-}
-
-func (x *GetinfoResponse) GetNumPeers() uint32 {
- if x != nil {
- return x.NumPeers
+ ListforwardsForwards_ListforwardsForwardsStyle_value = map[string]int32{
+ "LEGACY": 0,
+ "TLV": 1,
}
- return 0
-}
+)
-func (x *GetinfoResponse) GetNumPendingChannels() uint32 {
- if x != nil {
- return x.NumPendingChannels
- }
- return 0
+func (x ListforwardsForwards_ListforwardsForwardsStyle) Enum() *ListforwardsForwards_ListforwardsForwardsStyle {
+ p := new(ListforwardsForwards_ListforwardsForwardsStyle)
+ *p = x
+ return p
}
-func (x *GetinfoResponse) GetNumActiveChannels() uint32 {
- if x != nil {
- return x.NumActiveChannels
- }
- return 0
+func (x ListforwardsForwards_ListforwardsForwardsStyle) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *GetinfoResponse) GetNumInactiveChannels() uint32 {
- if x != nil {
- return x.NumInactiveChannels
- }
- return 0
+func (ListforwardsForwards_ListforwardsForwardsStyle) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[45].Descriptor()
}
-func (x *GetinfoResponse) GetVersion() string {
- if x != nil {
- return x.Version
- }
- return ""
+func (ListforwardsForwards_ListforwardsForwardsStyle) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[45]
}
-func (x *GetinfoResponse) GetLightningDir() string {
- if x != nil {
- return x.LightningDir
- }
- return ""
+func (x ListforwardsForwards_ListforwardsForwardsStyle) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoResponse) GetOurFeatures() *GetinfoOurFeatures {
- if x != nil {
- return x.OurFeatures
- }
- return nil
+// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStyle.Descriptor instead.
+func (ListforwardsForwards_ListforwardsForwardsStyle) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{207, 1}
}
-func (x *GetinfoResponse) GetBlockheight() uint32 {
- if x != nil {
- return x.Blockheight
- }
- return 0
-}
+// ListPays.status
+type ListpaysRequest_ListpaysStatus int32
-func (x *GetinfoResponse) GetNetwork() string {
- if x != nil {
- return x.Network
- }
- return ""
-}
+const (
+ ListpaysRequest_PENDING ListpaysRequest_ListpaysStatus = 0
+ ListpaysRequest_COMPLETE ListpaysRequest_ListpaysStatus = 1
+ ListpaysRequest_FAILED ListpaysRequest_ListpaysStatus = 2
+)
-func (x *GetinfoResponse) GetFeesCollectedMsat() *Amount {
- if x != nil {
- return x.FeesCollectedMsat
+// Enum value maps for ListpaysRequest_ListpaysStatus.
+var (
+ ListpaysRequest_ListpaysStatus_name = map[int32]string{
+ 0: "PENDING",
+ 1: "COMPLETE",
+ 2: "FAILED",
}
- return nil
-}
-
-func (x *GetinfoResponse) GetAddress() []*GetinfoAddress {
- if x != nil {
- return x.Address
+ ListpaysRequest_ListpaysStatus_value = map[string]int32{
+ "PENDING": 0,
+ "COMPLETE": 1,
+ "FAILED": 2,
}
- return nil
-}
+)
-func (x *GetinfoResponse) GetBinding() []*GetinfoBinding {
- if x != nil {
- return x.Binding
- }
- return nil
+func (x ListpaysRequest_ListpaysStatus) Enum() *ListpaysRequest_ListpaysStatus {
+ p := new(ListpaysRequest_ListpaysStatus)
+ *p = x
+ return p
}
-func (x *GetinfoResponse) GetWarningBitcoindSync() string {
- if x != nil && x.WarningBitcoindSync != nil {
- return *x.WarningBitcoindSync
- }
- return ""
+func (x ListpaysRequest_ListpaysStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *GetinfoResponse) GetWarningLightningdSync() string {
- if x != nil && x.WarningLightningdSync != nil {
- return *x.WarningLightningdSync
- }
- return ""
+func (ListpaysRequest_ListpaysStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[46].Descriptor()
}
-type GetinfoOurFeatures struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Init []byte `protobuf:"bytes,1,opt,name=init,proto3" json:"init,omitempty"`
- Node []byte `protobuf:"bytes,2,opt,name=node,proto3" json:"node,omitempty"`
- Channel []byte `protobuf:"bytes,3,opt,name=channel,proto3" json:"channel,omitempty"`
- Invoice []byte `protobuf:"bytes,4,opt,name=invoice,proto3" json:"invoice,omitempty"`
+func (ListpaysRequest_ListpaysStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[46]
}
-func (x *GetinfoOurFeatures) Reset() {
- *x = GetinfoOurFeatures{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+func (x ListpaysRequest_ListpaysStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoOurFeatures) String() string {
- return protoimpl.X.MessageStringOf(x)
+// Deprecated: Use ListpaysRequest_ListpaysStatus.Descriptor instead.
+func (ListpaysRequest_ListpaysStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{211, 0}
}
-func (*GetinfoOurFeatures) ProtoMessage() {}
+// ListPays.pays[].status
+type ListpaysPays_ListpaysPaysStatus int32
-func (x *GetinfoOurFeatures) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+const (
+ ListpaysPays_PENDING ListpaysPays_ListpaysPaysStatus = 0
+ ListpaysPays_FAILED ListpaysPays_ListpaysPaysStatus = 1
+ ListpaysPays_COMPLETE ListpaysPays_ListpaysPaysStatus = 2
+)
+
+// Enum value maps for ListpaysPays_ListpaysPaysStatus.
+var (
+ ListpaysPays_ListpaysPaysStatus_name = map[int32]string{
+ 0: "PENDING",
+ 1: "FAILED",
+ 2: "COMPLETE",
}
- return mi.MessageOf(x)
+ ListpaysPays_ListpaysPaysStatus_value = map[string]int32{
+ "PENDING": 0,
+ "FAILED": 1,
+ "COMPLETE": 2,
+ }
+)
+
+func (x ListpaysPays_ListpaysPaysStatus) Enum() *ListpaysPays_ListpaysPaysStatus {
+ p := new(ListpaysPays_ListpaysPaysStatus)
+ *p = x
+ return p
}
-// Deprecated: Use GetinfoOurFeatures.ProtoReflect.Descriptor instead.
-func (*GetinfoOurFeatures) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{2}
+func (x ListpaysPays_ListpaysPaysStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *GetinfoOurFeatures) GetInit() []byte {
- if x != nil {
- return x.Init
- }
- return nil
+func (ListpaysPays_ListpaysPaysStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[47].Descriptor()
}
-func (x *GetinfoOurFeatures) GetNode() []byte {
- if x != nil {
- return x.Node
- }
- return nil
+func (ListpaysPays_ListpaysPaysStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[47]
}
-func (x *GetinfoOurFeatures) GetChannel() []byte {
- if x != nil {
- return x.Channel
- }
- return nil
+func (x ListpaysPays_ListpaysPaysStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoOurFeatures) GetInvoice() []byte {
- if x != nil {
- return x.Invoice
- }
- return nil
+// Deprecated: Use ListpaysPays_ListpaysPaysStatus.Descriptor instead.
+func (ListpaysPays_ListpaysPaysStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{213, 0}
}
-type GetinfoAddress struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+// ListHtlcs.htlcs[].direction
+type ListhtlcsHtlcs_ListhtlcsHtlcsDirection int32
- ItemType GetinfoAddress_GetinfoAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoAddress_GetinfoAddressType" json:"item_type,omitempty"`
- Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
- Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
-}
+const (
+ ListhtlcsHtlcs_OUT ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 0
+ ListhtlcsHtlcs_IN ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 1
+)
-func (x *GetinfoAddress) Reset() {
- *x = GetinfoAddress{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+// Enum value maps for ListhtlcsHtlcs_ListhtlcsHtlcsDirection.
+var (
+ ListhtlcsHtlcs_ListhtlcsHtlcsDirection_name = map[int32]string{
+ 0: "OUT",
+ 1: "IN",
+ }
+ ListhtlcsHtlcs_ListhtlcsHtlcsDirection_value = map[string]int32{
+ "OUT": 0,
+ "IN": 1,
}
+)
+
+func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Enum() *ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
+ p := new(ListhtlcsHtlcs_ListhtlcsHtlcsDirection)
+ *p = x
+ return p
}
-func (x *GetinfoAddress) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (*GetinfoAddress) ProtoMessage() {}
+func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[48].Descriptor()
+}
-func (x *GetinfoAddress) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[48]
}
-// Deprecated: Use GetinfoAddress.ProtoReflect.Descriptor instead.
-func (*GetinfoAddress) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{3}
+func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoAddress) GetItemType() GetinfoAddress_GetinfoAddressType {
- if x != nil {
- return x.ItemType
- }
- return GetinfoAddress_DNS
+// Deprecated: Use ListhtlcsHtlcs_ListhtlcsHtlcsDirection.Descriptor instead.
+func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{216, 0}
}
-func (x *GetinfoAddress) GetPort() uint32 {
- if x != nil {
- return x.Port
+// MultiFundChannel.failed[].method
+type MultifundchannelFailed_MultifundchannelFailedMethod int32
+
+const (
+ MultifundchannelFailed_CONNECT MultifundchannelFailed_MultifundchannelFailedMethod = 0
+ MultifundchannelFailed_OPENCHANNEL_INIT MultifundchannelFailed_MultifundchannelFailedMethod = 1
+ MultifundchannelFailed_FUNDCHANNEL_START MultifundchannelFailed_MultifundchannelFailedMethod = 2
+ MultifundchannelFailed_FUNDCHANNEL_COMPLETE MultifundchannelFailed_MultifundchannelFailedMethod = 3
+)
+
+// Enum value maps for MultifundchannelFailed_MultifundchannelFailedMethod.
+var (
+ MultifundchannelFailed_MultifundchannelFailedMethod_name = map[int32]string{
+ 0: "CONNECT",
+ 1: "OPENCHANNEL_INIT",
+ 2: "FUNDCHANNEL_START",
+ 3: "FUNDCHANNEL_COMPLETE",
+ }
+ MultifundchannelFailed_MultifundchannelFailedMethod_value = map[string]int32{
+ "CONNECT": 0,
+ "OPENCHANNEL_INIT": 1,
+ "FUNDCHANNEL_START": 2,
+ "FUNDCHANNEL_COMPLETE": 3,
}
- return 0
+)
+
+func (x MultifundchannelFailed_MultifundchannelFailedMethod) Enum() *MultifundchannelFailed_MultifundchannelFailedMethod {
+ p := new(MultifundchannelFailed_MultifundchannelFailedMethod)
+ *p = x
+ return p
}
-func (x *GetinfoAddress) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
- }
- return ""
+func (x MultifundchannelFailed_MultifundchannelFailedMethod) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-type GetinfoBinding struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (MultifundchannelFailed_MultifundchannelFailedMethod) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[49].Descriptor()
+}
- ItemType GetinfoBinding_GetinfoBindingType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoBinding_GetinfoBindingType" json:"item_type,omitempty"`
- Address *string `protobuf:"bytes,2,opt,name=address,proto3,oneof" json:"address,omitempty"`
- Port *uint32 `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
- Socket *string `protobuf:"bytes,4,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
+func (MultifundchannelFailed_MultifundchannelFailedMethod) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[49]
}
-func (x *GetinfoBinding) Reset() {
- *x = GetinfoBinding{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+func (x MultifundchannelFailed_MultifundchannelFailedMethod) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoBinding) String() string {
- return protoimpl.X.MessageStringOf(x)
+// Deprecated: Use MultifundchannelFailed_MultifundchannelFailedMethod.Descriptor instead.
+func (MultifundchannelFailed_MultifundchannelFailedMethod) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{222, 0}
}
-func (*GetinfoBinding) ProtoMessage() {}
+// RenePayStatus.paystatus[].status
+type RenepaystatusPaystatus_RenepaystatusPaystatusStatus int32
-func (x *GetinfoBinding) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+const (
+ RenepaystatusPaystatus_COMPLETE RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 0
+ RenepaystatusPaystatus_PENDING RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 1
+ RenepaystatusPaystatus_FAILED RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 2
+)
+
+// Enum value maps for RenepaystatusPaystatus_RenepaystatusPaystatusStatus.
+var (
+ RenepaystatusPaystatus_RenepaystatusPaystatusStatus_name = map[int32]string{
+ 0: "COMPLETE",
+ 1: "PENDING",
+ 2: "FAILED",
}
- return mi.MessageOf(x)
+ RenepaystatusPaystatus_RenepaystatusPaystatusStatus_value = map[string]int32{
+ "COMPLETE": 0,
+ "PENDING": 1,
+ "FAILED": 2,
+ }
+)
+
+func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Enum() *RenepaystatusPaystatus_RenepaystatusPaystatusStatus {
+ p := new(RenepaystatusPaystatus_RenepaystatusPaystatusStatus)
+ *p = x
+ return p
}
-// Deprecated: Use GetinfoBinding.ProtoReflect.Descriptor instead.
-func (*GetinfoBinding) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{4}
+func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *GetinfoBinding) GetItemType() GetinfoBinding_GetinfoBindingType {
- if x != nil {
- return x.ItemType
- }
- return GetinfoBinding_LOCAL_SOCKET
+func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[50].Descriptor()
}
-func (x *GetinfoBinding) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
- }
- return ""
+func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[50]
}
-func (x *GetinfoBinding) GetPort() uint32 {
- if x != nil && x.Port != nil {
- return *x.Port
- }
- return 0
+func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *GetinfoBinding) GetSocket() string {
- if x != nil && x.Socket != nil {
- return *x.Socket
- }
- return ""
+// Deprecated: Use RenepaystatusPaystatus_RenepaystatusPaystatusStatus.Descriptor instead.
+func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{248, 0}
}
-type ListpeersRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+// RenePay.status
+type RenepayResponse_RenepayStatus int32
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
- Level *string `protobuf:"bytes,2,opt,name=level,proto3,oneof" json:"level,omitempty"`
-}
+const (
+ RenepayResponse_COMPLETE RenepayResponse_RenepayStatus = 0
+ RenepayResponse_PENDING RenepayResponse_RenepayStatus = 1
+ RenepayResponse_FAILED RenepayResponse_RenepayStatus = 2
+)
-func (x *ListpeersRequest) Reset() {
- *x = ListpeersRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+// Enum value maps for RenepayResponse_RenepayStatus.
+var (
+ RenepayResponse_RenepayStatus_name = map[int32]string{
+ 0: "COMPLETE",
+ 1: "PENDING",
+ 2: "FAILED",
}
-}
+ RenepayResponse_RenepayStatus_value = map[string]int32{
+ "COMPLETE": 0,
+ "PENDING": 1,
+ "FAILED": 2,
+ }
+)
-func (x *ListpeersRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x RenepayResponse_RenepayStatus) Enum() *RenepayResponse_RenepayStatus {
+ p := new(RenepayResponse_RenepayStatus)
+ *p = x
+ return p
}
-func (*ListpeersRequest) ProtoMessage() {}
+func (x RenepayResponse_RenepayStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
-func (x *ListpeersRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (RenepayResponse_RenepayStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[51].Descriptor()
}
-// Deprecated: Use ListpeersRequest.ProtoReflect.Descriptor instead.
-func (*ListpeersRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{5}
+func (RenepayResponse_RenepayStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[51]
}
-func (x *ListpeersRequest) GetId() []byte {
- if x != nil {
- return x.Id
- }
- return nil
+func (x RenepayResponse_RenepayStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersRequest) GetLevel() string {
- if x != nil && x.Level != nil {
- return *x.Level
- }
- return ""
+// Deprecated: Use RenepayResponse_RenepayStatus.Descriptor instead.
+func (RenepayResponse_RenepayStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{250, 0}
}
-type ListpeersResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+// SendInvoice.status
+type SendinvoiceResponse_SendinvoiceStatus int32
- Peers []*ListpeersPeers `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
-}
+const (
+ SendinvoiceResponse_UNPAID SendinvoiceResponse_SendinvoiceStatus = 0
+ SendinvoiceResponse_PAID SendinvoiceResponse_SendinvoiceStatus = 1
+ SendinvoiceResponse_EXPIRED SendinvoiceResponse_SendinvoiceStatus = 2
+)
-func (x *ListpeersResponse) Reset() {
- *x = ListpeersResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[6]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+// Enum value maps for SendinvoiceResponse_SendinvoiceStatus.
+var (
+ SendinvoiceResponse_SendinvoiceStatus_name = map[int32]string{
+ 0: "UNPAID",
+ 1: "PAID",
+ 2: "EXPIRED",
}
-}
+ SendinvoiceResponse_SendinvoiceStatus_value = map[string]int32{
+ "UNPAID": 0,
+ "PAID": 1,
+ "EXPIRED": 2,
+ }
+)
-func (x *ListpeersResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x SendinvoiceResponse_SendinvoiceStatus) Enum() *SendinvoiceResponse_SendinvoiceStatus {
+ p := new(SendinvoiceResponse_SendinvoiceStatus)
+ *p = x
+ return p
}
-func (*ListpeersResponse) ProtoMessage() {}
-
-func (x *ListpeersResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[6]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (x SendinvoiceResponse_SendinvoiceStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-// Deprecated: Use ListpeersResponse.ProtoReflect.Descriptor instead.
-func (*ListpeersResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{6}
+func (SendinvoiceResponse_SendinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[52].Descriptor()
}
-func (x *ListpeersResponse) GetPeers() []*ListpeersPeers {
- if x != nil {
- return x.Peers
- }
- return nil
+func (SendinvoiceResponse_SendinvoiceStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[52]
}
-type ListpeersPeers struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Connected bool `protobuf:"varint,2,opt,name=connected,proto3" json:"connected,omitempty"`
- NumChannels *uint32 `protobuf:"varint,8,opt,name=num_channels,json=numChannels,proto3,oneof" json:"num_channels,omitempty"`
- Log []*ListpeersPeersLog `protobuf:"bytes,3,rep,name=log,proto3" json:"log,omitempty"`
- Channels []*ListpeersPeersChannels `protobuf:"bytes,4,rep,name=channels,proto3" json:"channels,omitempty"`
- Netaddr []string `protobuf:"bytes,5,rep,name=netaddr,proto3" json:"netaddr,omitempty"`
- RemoteAddr *string `protobuf:"bytes,7,opt,name=remote_addr,json=remoteAddr,proto3,oneof" json:"remote_addr,omitempty"`
- Features []byte `protobuf:"bytes,6,opt,name=features,proto3,oneof" json:"features,omitempty"`
+func (x SendinvoiceResponse_SendinvoiceStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeers) Reset() {
- *x = ListpeersPeers{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[7]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+// Deprecated: Use SendinvoiceResponse_SendinvoiceStatus.Descriptor instead.
+func (SendinvoiceResponse_SendinvoiceStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{257, 0}
}
-func (x *ListpeersPeers) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
+// Wait.subsystem
+type WaitRequest_WaitSubsystem int32
-func (*ListpeersPeers) ProtoMessage() {}
+const (
+ WaitRequest_INVOICES WaitRequest_WaitSubsystem = 0
+ WaitRequest_FORWARDS WaitRequest_WaitSubsystem = 1
+ WaitRequest_SENDPAYS WaitRequest_WaitSubsystem = 2
+)
-func (x *ListpeersPeers) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[7]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+// Enum value maps for WaitRequest_WaitSubsystem.
+var (
+ WaitRequest_WaitSubsystem_name = map[int32]string{
+ 0: "INVOICES",
+ 1: "FORWARDS",
+ 2: "SENDPAYS",
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use ListpeersPeers.ProtoReflect.Descriptor instead.
-func (*ListpeersPeers) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{7}
-}
-
-func (x *ListpeersPeers) GetId() []byte {
- if x != nil {
- return x.Id
+ WaitRequest_WaitSubsystem_value = map[string]int32{
+ "INVOICES": 0,
+ "FORWARDS": 1,
+ "SENDPAYS": 2,
}
- return nil
-}
+)
-func (x *ListpeersPeers) GetConnected() bool {
- if x != nil {
- return x.Connected
- }
- return false
+func (x WaitRequest_WaitSubsystem) Enum() *WaitRequest_WaitSubsystem {
+ p := new(WaitRequest_WaitSubsystem)
+ *p = x
+ return p
}
-func (x *ListpeersPeers) GetNumChannels() uint32 {
- if x != nil && x.NumChannels != nil {
- return *x.NumChannels
- }
- return 0
+func (x WaitRequest_WaitSubsystem) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeers) GetLog() []*ListpeersPeersLog {
- if x != nil {
- return x.Log
- }
- return nil
+func (WaitRequest_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[53].Descriptor()
}
-func (x *ListpeersPeers) GetChannels() []*ListpeersPeersChannels {
- if x != nil {
- return x.Channels
- }
- return nil
+func (WaitRequest_WaitSubsystem) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[53]
}
-func (x *ListpeersPeers) GetNetaddr() []string {
- if x != nil {
- return x.Netaddr
- }
- return nil
+func (x WaitRequest_WaitSubsystem) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeers) GetRemoteAddr() string {
- if x != nil && x.RemoteAddr != nil {
- return *x.RemoteAddr
- }
- return ""
+// Deprecated: Use WaitRequest_WaitSubsystem.Descriptor instead.
+func (WaitRequest_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{286, 0}
}
-func (x *ListpeersPeers) GetFeatures() []byte {
- if x != nil {
- return x.Features
- }
- return nil
-}
+// Wait.indexname
+type WaitRequest_WaitIndexname int32
-type ListpeersPeersLog struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- ItemType ListpeersPeersLog_ListpeersPeersLogType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListpeersPeersLog_ListpeersPeersLogType" json:"item_type,omitempty"`
- NumSkipped *uint32 `protobuf:"varint,2,opt,name=num_skipped,json=numSkipped,proto3,oneof" json:"num_skipped,omitempty"`
- Time *string `protobuf:"bytes,3,opt,name=time,proto3,oneof" json:"time,omitempty"`
- Source *string `protobuf:"bytes,4,opt,name=source,proto3,oneof" json:"source,omitempty"`
- Log *string `protobuf:"bytes,5,opt,name=log,proto3,oneof" json:"log,omitempty"`
- NodeId []byte `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"`
- Data []byte `protobuf:"bytes,7,opt,name=data,proto3,oneof" json:"data,omitempty"`
-}
+const (
+ WaitRequest_CREATED WaitRequest_WaitIndexname = 0
+ WaitRequest_UPDATED WaitRequest_WaitIndexname = 1
+ WaitRequest_DELETED WaitRequest_WaitIndexname = 2
+)
-func (x *ListpeersPeersLog) Reset() {
- *x = ListpeersPeersLog{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[8]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+// Enum value maps for WaitRequest_WaitIndexname.
+var (
+ WaitRequest_WaitIndexname_name = map[int32]string{
+ 0: "CREATED",
+ 1: "UPDATED",
+ 2: "DELETED",
}
-}
+ WaitRequest_WaitIndexname_value = map[string]int32{
+ "CREATED": 0,
+ "UPDATED": 1,
+ "DELETED": 2,
+ }
+)
-func (x *ListpeersPeersLog) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x WaitRequest_WaitIndexname) Enum() *WaitRequest_WaitIndexname {
+ p := new(WaitRequest_WaitIndexname)
+ *p = x
+ return p
}
-func (*ListpeersPeersLog) ProtoMessage() {}
-
-func (x *ListpeersPeersLog) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[8]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (x WaitRequest_WaitIndexname) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-// Deprecated: Use ListpeersPeersLog.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersLog) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{8}
+func (WaitRequest_WaitIndexname) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[54].Descriptor()
}
-func (x *ListpeersPeersLog) GetItemType() ListpeersPeersLog_ListpeersPeersLogType {
- if x != nil {
- return x.ItemType
- }
- return ListpeersPeersLog_SKIPPED
+func (WaitRequest_WaitIndexname) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[54]
}
-func (x *ListpeersPeersLog) GetNumSkipped() uint32 {
- if x != nil && x.NumSkipped != nil {
- return *x.NumSkipped
- }
- return 0
+func (x WaitRequest_WaitIndexname) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersLog) GetTime() string {
- if x != nil && x.Time != nil {
- return *x.Time
- }
- return ""
+// Deprecated: Use WaitRequest_WaitIndexname.Descriptor instead.
+func (WaitRequest_WaitIndexname) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{286, 1}
}
-func (x *ListpeersPeersLog) GetSource() string {
- if x != nil && x.Source != nil {
- return *x.Source
+// Wait.subsystem
+type WaitResponse_WaitSubsystem int32
+
+const (
+ WaitResponse_INVOICES WaitResponse_WaitSubsystem = 0
+ WaitResponse_FORWARDS WaitResponse_WaitSubsystem = 1
+ WaitResponse_SENDPAYS WaitResponse_WaitSubsystem = 2
+)
+
+// Enum value maps for WaitResponse_WaitSubsystem.
+var (
+ WaitResponse_WaitSubsystem_name = map[int32]string{
+ 0: "INVOICES",
+ 1: "FORWARDS",
+ 2: "SENDPAYS",
}
- return ""
+ WaitResponse_WaitSubsystem_value = map[string]int32{
+ "INVOICES": 0,
+ "FORWARDS": 1,
+ "SENDPAYS": 2,
+ }
+)
+
+func (x WaitResponse_WaitSubsystem) Enum() *WaitResponse_WaitSubsystem {
+ p := new(WaitResponse_WaitSubsystem)
+ *p = x
+ return p
}
-func (x *ListpeersPeersLog) GetLog() string {
- if x != nil && x.Log != nil {
- return *x.Log
- }
- return ""
+func (x WaitResponse_WaitSubsystem) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersLog) GetNodeId() []byte {
- if x != nil {
- return x.NodeId
- }
- return nil
+func (WaitResponse_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[55].Descriptor()
}
-func (x *ListpeersPeersLog) GetData() []byte {
- if x != nil {
- return x.Data
- }
- return nil
+func (WaitResponse_WaitSubsystem) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[55]
}
-type ListpeersPeersChannels struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- State ListpeersPeersChannels_ListpeersPeersChannelsState `protobuf:"varint,1,opt,name=state,proto3,enum=cln.ListpeersPeersChannels_ListpeersPeersChannelsState" json:"state,omitempty"`
- ScratchTxid []byte `protobuf:"bytes,2,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
- Feerate *ListpeersPeersChannelsFeerate `protobuf:"bytes,3,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- Owner *string `protobuf:"bytes,4,opt,name=owner,proto3,oneof" json:"owner,omitempty"`
- ShortChannelId *string `protobuf:"bytes,5,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
- ChannelId []byte `protobuf:"bytes,6,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
- FundingTxid []byte `protobuf:"bytes,7,opt,name=funding_txid,json=fundingTxid,proto3,oneof" json:"funding_txid,omitempty"`
- FundingOutnum *uint32 `protobuf:"varint,8,opt,name=funding_outnum,json=fundingOutnum,proto3,oneof" json:"funding_outnum,omitempty"`
- InitialFeerate *string `protobuf:"bytes,9,opt,name=initial_feerate,json=initialFeerate,proto3,oneof" json:"initial_feerate,omitempty"`
- LastFeerate *string `protobuf:"bytes,10,opt,name=last_feerate,json=lastFeerate,proto3,oneof" json:"last_feerate,omitempty"`
- NextFeerate *string `protobuf:"bytes,11,opt,name=next_feerate,json=nextFeerate,proto3,oneof" json:"next_feerate,omitempty"`
- NextFeeStep *uint32 `protobuf:"varint,12,opt,name=next_fee_step,json=nextFeeStep,proto3,oneof" json:"next_fee_step,omitempty"`
- Inflight []*ListpeersPeersChannelsInflight `protobuf:"bytes,13,rep,name=inflight,proto3" json:"inflight,omitempty"`
- CloseTo []byte `protobuf:"bytes,14,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
- Private *bool `protobuf:"varint,15,opt,name=private,proto3,oneof" json:"private,omitempty"`
- Opener ChannelSide `protobuf:"varint,16,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
- Closer *ChannelSide `protobuf:"varint,17,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
- Features []string `protobuf:"bytes,18,rep,name=features,proto3" json:"features,omitempty"`
- Funding *ListpeersPeersChannelsFunding `protobuf:"bytes,19,opt,name=funding,proto3,oneof" json:"funding,omitempty"`
- ToUsMsat *Amount `protobuf:"bytes,20,opt,name=to_us_msat,json=toUsMsat,proto3,oneof" json:"to_us_msat,omitempty"`
- MinToUsMsat *Amount `protobuf:"bytes,21,opt,name=min_to_us_msat,json=minToUsMsat,proto3,oneof" json:"min_to_us_msat,omitempty"`
- MaxToUsMsat *Amount `protobuf:"bytes,22,opt,name=max_to_us_msat,json=maxToUsMsat,proto3,oneof" json:"max_to_us_msat,omitempty"`
- TotalMsat *Amount `protobuf:"bytes,23,opt,name=total_msat,json=totalMsat,proto3,oneof" json:"total_msat,omitempty"`
- FeeBaseMsat *Amount `protobuf:"bytes,24,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
- FeeProportionalMillionths *uint32 `protobuf:"varint,25,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
- DustLimitMsat *Amount `protobuf:"bytes,26,opt,name=dust_limit_msat,json=dustLimitMsat,proto3,oneof" json:"dust_limit_msat,omitempty"`
- MaxTotalHtlcInMsat *Amount `protobuf:"bytes,27,opt,name=max_total_htlc_in_msat,json=maxTotalHtlcInMsat,proto3,oneof" json:"max_total_htlc_in_msat,omitempty"`
- TheirReserveMsat *Amount `protobuf:"bytes,28,opt,name=their_reserve_msat,json=theirReserveMsat,proto3,oneof" json:"their_reserve_msat,omitempty"`
- OurReserveMsat *Amount `protobuf:"bytes,29,opt,name=our_reserve_msat,json=ourReserveMsat,proto3,oneof" json:"our_reserve_msat,omitempty"`
- SpendableMsat *Amount `protobuf:"bytes,30,opt,name=spendable_msat,json=spendableMsat,proto3,oneof" json:"spendable_msat,omitempty"`
- ReceivableMsat *Amount `protobuf:"bytes,31,opt,name=receivable_msat,json=receivableMsat,proto3,oneof" json:"receivable_msat,omitempty"`
- MinimumHtlcInMsat *Amount `protobuf:"bytes,32,opt,name=minimum_htlc_in_msat,json=minimumHtlcInMsat,proto3,oneof" json:"minimum_htlc_in_msat,omitempty"`
- MinimumHtlcOutMsat *Amount `protobuf:"bytes,48,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3,oneof" json:"minimum_htlc_out_msat,omitempty"`
- MaximumHtlcOutMsat *Amount `protobuf:"bytes,49,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3,oneof" json:"maximum_htlc_out_msat,omitempty"`
- TheirToSelfDelay *uint32 `protobuf:"varint,33,opt,name=their_to_self_delay,json=theirToSelfDelay,proto3,oneof" json:"their_to_self_delay,omitempty"`
- OurToSelfDelay *uint32 `protobuf:"varint,34,opt,name=our_to_self_delay,json=ourToSelfDelay,proto3,oneof" json:"our_to_self_delay,omitempty"`
- MaxAcceptedHtlcs *uint32 `protobuf:"varint,35,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3,oneof" json:"max_accepted_htlcs,omitempty"`
- Alias *ListpeersPeersChannelsAlias `protobuf:"bytes,50,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
- Status []string `protobuf:"bytes,37,rep,name=status,proto3" json:"status,omitempty"`
- InPaymentsOffered *uint64 `protobuf:"varint,38,opt,name=in_payments_offered,json=inPaymentsOffered,proto3,oneof" json:"in_payments_offered,omitempty"`
- InOfferedMsat *Amount `protobuf:"bytes,39,opt,name=in_offered_msat,json=inOfferedMsat,proto3,oneof" json:"in_offered_msat,omitempty"`
- InPaymentsFulfilled *uint64 `protobuf:"varint,40,opt,name=in_payments_fulfilled,json=inPaymentsFulfilled,proto3,oneof" json:"in_payments_fulfilled,omitempty"`
- InFulfilledMsat *Amount `protobuf:"bytes,41,opt,name=in_fulfilled_msat,json=inFulfilledMsat,proto3,oneof" json:"in_fulfilled_msat,omitempty"`
- OutPaymentsOffered *uint64 `protobuf:"varint,42,opt,name=out_payments_offered,json=outPaymentsOffered,proto3,oneof" json:"out_payments_offered,omitempty"`
- OutOfferedMsat *Amount `protobuf:"bytes,43,opt,name=out_offered_msat,json=outOfferedMsat,proto3,oneof" json:"out_offered_msat,omitempty"`
- OutPaymentsFulfilled *uint64 `protobuf:"varint,44,opt,name=out_payments_fulfilled,json=outPaymentsFulfilled,proto3,oneof" json:"out_payments_fulfilled,omitempty"`
- OutFulfilledMsat *Amount `protobuf:"bytes,45,opt,name=out_fulfilled_msat,json=outFulfilledMsat,proto3,oneof" json:"out_fulfilled_msat,omitempty"`
- Htlcs []*ListpeersPeersChannelsHtlcs `protobuf:"bytes,46,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
- CloseToAddr *string `protobuf:"bytes,47,opt,name=close_to_addr,json=closeToAddr,proto3,oneof" json:"close_to_addr,omitempty"`
-}
-
-func (x *ListpeersPeersChannels) Reset() {
- *x = ListpeersPeersChannels{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[9]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+func (x WaitResponse_WaitSubsystem) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) String() string {
- return protoimpl.X.MessageStringOf(x)
+// Deprecated: Use WaitResponse_WaitSubsystem.Descriptor instead.
+func (WaitResponse_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{287, 0}
}
-func (*ListpeersPeersChannels) ProtoMessage() {}
+// Wait.details.status
+type WaitDetails_WaitDetailsStatus int32
-func (x *ListpeersPeersChannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[9]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+const (
+ WaitDetails_UNPAID WaitDetails_WaitDetailsStatus = 0
+ WaitDetails_PAID WaitDetails_WaitDetailsStatus = 1
+ WaitDetails_EXPIRED WaitDetails_WaitDetailsStatus = 2
+ WaitDetails_PENDING WaitDetails_WaitDetailsStatus = 3
+ WaitDetails_FAILED WaitDetails_WaitDetailsStatus = 4
+ WaitDetails_COMPLETE WaitDetails_WaitDetailsStatus = 5
+ WaitDetails_OFFERED WaitDetails_WaitDetailsStatus = 6
+ WaitDetails_SETTLED WaitDetails_WaitDetailsStatus = 7
+ WaitDetails_LOCAL_FAILED WaitDetails_WaitDetailsStatus = 8
+)
+
+// Enum value maps for WaitDetails_WaitDetailsStatus.
+var (
+ WaitDetails_WaitDetailsStatus_name = map[int32]string{
+ 0: "UNPAID",
+ 1: "PAID",
+ 2: "EXPIRED",
+ 3: "PENDING",
+ 4: "FAILED",
+ 5: "COMPLETE",
+ 6: "OFFERED",
+ 7: "SETTLED",
+ 8: "LOCAL_FAILED",
+ }
+ WaitDetails_WaitDetailsStatus_value = map[string]int32{
+ "UNPAID": 0,
+ "PAID": 1,
+ "EXPIRED": 2,
+ "PENDING": 3,
+ "FAILED": 4,
+ "COMPLETE": 5,
+ "OFFERED": 6,
+ "SETTLED": 7,
+ "LOCAL_FAILED": 8,
}
- return mi.MessageOf(x)
-}
+)
-// Deprecated: Use ListpeersPeersChannels.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{9}
+func (x WaitDetails_WaitDetailsStatus) Enum() *WaitDetails_WaitDetailsStatus {
+ p := new(WaitDetails_WaitDetailsStatus)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetState() ListpeersPeersChannels_ListpeersPeersChannelsState {
- if x != nil {
- return x.State
- }
- return ListpeersPeersChannels_OPENINGD
+func (x WaitDetails_WaitDetailsStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetScratchTxid() []byte {
- if x != nil {
- return x.ScratchTxid
- }
- return nil
+func (WaitDetails_WaitDetailsStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[56].Descriptor()
}
-func (x *ListpeersPeersChannels) GetFeerate() *ListpeersPeersChannelsFeerate {
- if x != nil {
- return x.Feerate
- }
- return nil
+func (WaitDetails_WaitDetailsStatus) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[56]
}
-func (x *ListpeersPeersChannels) GetOwner() string {
- if x != nil && x.Owner != nil {
- return *x.Owner
- }
- return ""
+func (x WaitDetails_WaitDetailsStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetShortChannelId() string {
- if x != nil && x.ShortChannelId != nil {
- return *x.ShortChannelId
- }
- return ""
+// Deprecated: Use WaitDetails_WaitDetailsStatus.Descriptor instead.
+func (WaitDetails_WaitDetailsStatus) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{288, 0}
}
-func (x *ListpeersPeersChannels) GetChannelId() []byte {
- if x != nil {
- return x.ChannelId
- }
- return nil
-}
+// ListConfigs.configs.conf.source
+type ListconfigsConfigsConf_ListconfigsConfigsConfSource int32
-func (x *ListpeersPeersChannels) GetFundingTxid() []byte {
- if x != nil {
- return x.FundingTxid
+const (
+ ListconfigsConfigsConf_CMDLINE ListconfigsConfigsConf_ListconfigsConfigsConfSource = 0
+)
+
+// Enum value maps for ListconfigsConfigsConf_ListconfigsConfigsConfSource.
+var (
+ ListconfigsConfigsConf_ListconfigsConfigsConfSource_name = map[int32]string{
+ 0: "CMDLINE",
}
- return nil
+ ListconfigsConfigsConf_ListconfigsConfigsConfSource_value = map[string]int32{
+ "CMDLINE": 0,
+ }
+)
+
+func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) Enum() *ListconfigsConfigsConf_ListconfigsConfigsConfSource {
+ p := new(ListconfigsConfigsConf_ListconfigsConfigsConfSource)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetFundingOutnum() uint32 {
- if x != nil && x.FundingOutnum != nil {
- return *x.FundingOutnum
- }
- return 0
+func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetInitialFeerate() string {
- if x != nil && x.InitialFeerate != nil {
- return *x.InitialFeerate
- }
- return ""
+func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[57].Descriptor()
}
-func (x *ListpeersPeersChannels) GetLastFeerate() string {
- if x != nil && x.LastFeerate != nil {
- return *x.LastFeerate
- }
- return ""
+func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[57]
}
-func (x *ListpeersPeersChannels) GetNextFeerate() string {
- if x != nil && x.NextFeerate != nil {
- return *x.NextFeerate
- }
- return ""
+func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetNextFeeStep() uint32 {
- if x != nil && x.NextFeeStep != nil {
- return *x.NextFeeStep
- }
- return 0
+// Deprecated: Use ListconfigsConfigsConf_ListconfigsConfigsConfSource.Descriptor instead.
+func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{292, 0}
}
-func (x *ListpeersPeersChannels) GetInflight() []*ListpeersPeersChannelsInflight {
- if x != nil {
- return x.Inflight
+// ListConfigs.configs.announce-addr-discovered.value_str
+type ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr int32
+
+const (
+ ListconfigsConfigsAnnounceaddrdiscovered_TRUE ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 0
+ ListconfigsConfigsAnnounceaddrdiscovered_FALSE ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 1
+ ListconfigsConfigsAnnounceaddrdiscovered_AUTO ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 2
+)
+
+// Enum value maps for ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr.
+var (
+ ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr_name = map[int32]string{
+ 0: "TRUE",
+ 1: "FALSE",
+ 2: "AUTO",
}
- return nil
+ ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr_value = map[string]int32{
+ "TRUE": 0,
+ "FALSE": 1,
+ "AUTO": 2,
+ }
+)
+
+func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Enum() *ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr {
+ p := new(ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetCloseTo() []byte {
- if x != nil {
- return x.CloseTo
- }
- return nil
+func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetPrivate() bool {
- if x != nil && x.Private != nil {
- return *x.Private
- }
- return false
+func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[58].Descriptor()
}
-func (x *ListpeersPeersChannels) GetOpener() ChannelSide {
- if x != nil {
- return x.Opener
- }
- return ChannelSide_LOCAL
+func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[58]
}
-func (x *ListpeersPeersChannels) GetCloser() ChannelSide {
- if x != nil && x.Closer != nil {
- return *x.Closer
- }
- return ChannelSide_LOCAL
+func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetFeatures() []string {
- if x != nil {
- return x.Features
- }
- return nil
+// Deprecated: Use ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr.Descriptor instead.
+func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{345, 0}
}
-func (x *ListpeersPeersChannels) GetFunding() *ListpeersPeersChannelsFunding {
- if x != nil {
- return x.Funding
- }
- return nil
-}
+// Stop.result
+type StopResponse_StopResult int32
-func (x *ListpeersPeersChannels) GetToUsMsat() *Amount {
- if x != nil {
- return x.ToUsMsat
+const (
+ StopResponse_SHUTDOWN_COMPLETE StopResponse_StopResult = 0
+)
+
+// Enum value maps for StopResponse_StopResult.
+var (
+ StopResponse_StopResult_name = map[int32]string{
+ 0: "SHUTDOWN_COMPLETE",
}
- return nil
+ StopResponse_StopResult_value = map[string]int32{
+ "SHUTDOWN_COMPLETE": 0,
+ }
+)
+
+func (x StopResponse_StopResult) Enum() *StopResponse_StopResult {
+ p := new(StopResponse_StopResult)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetMinToUsMsat() *Amount {
- if x != nil {
- return x.MinToUsMsat
- }
- return nil
+func (x StopResponse_StopResult) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetMaxToUsMsat() *Amount {
- if x != nil {
- return x.MaxToUsMsat
- }
- return nil
+func (StopResponse_StopResult) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[59].Descriptor()
}
-func (x *ListpeersPeersChannels) GetTotalMsat() *Amount {
- if x != nil {
- return x.TotalMsat
- }
- return nil
+func (StopResponse_StopResult) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[59]
}
-func (x *ListpeersPeersChannels) GetFeeBaseMsat() *Amount {
- if x != nil {
- return x.FeeBaseMsat
- }
- return nil
+func (x StopResponse_StopResult) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetFeeProportionalMillionths() uint32 {
- if x != nil && x.FeeProportionalMillionths != nil {
- return *x.FeeProportionalMillionths
- }
- return 0
+// Deprecated: Use StopResponse_StopResult.Descriptor instead.
+func (StopResponse_StopResult) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{367, 0}
}
-func (x *ListpeersPeersChannels) GetDustLimitMsat() *Amount {
- if x != nil {
- return x.DustLimitMsat
+// Help.format-hint
+type HelpResponse_HelpFormathint int32
+
+const (
+ HelpResponse_SIMPLE HelpResponse_HelpFormathint = 0
+)
+
+// Enum value maps for HelpResponse_HelpFormathint.
+var (
+ HelpResponse_HelpFormathint_name = map[int32]string{
+ 0: "SIMPLE",
}
- return nil
+ HelpResponse_HelpFormathint_value = map[string]int32{
+ "SIMPLE": 0,
+ }
+)
+
+func (x HelpResponse_HelpFormathint) Enum() *HelpResponse_HelpFormathint {
+ p := new(HelpResponse_HelpFormathint)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetMaxTotalHtlcInMsat() *Amount {
- if x != nil {
- return x.MaxTotalHtlcInMsat
- }
- return nil
+func (x HelpResponse_HelpFormathint) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetTheirReserveMsat() *Amount {
- if x != nil {
- return x.TheirReserveMsat
- }
- return nil
+func (HelpResponse_HelpFormathint) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[60].Descriptor()
}
-func (x *ListpeersPeersChannels) GetOurReserveMsat() *Amount {
- if x != nil {
- return x.OurReserveMsat
- }
- return nil
+func (HelpResponse_HelpFormathint) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[60]
}
-func (x *ListpeersPeersChannels) GetSpendableMsat() *Amount {
- if x != nil {
- return x.SpendableMsat
- }
- return nil
+func (x HelpResponse_HelpFormathint) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetReceivableMsat() *Amount {
- if x != nil {
- return x.ReceivableMsat
- }
- return nil
+// Deprecated: Use HelpResponse_HelpFormathint.Descriptor instead.
+func (HelpResponse_HelpFormathint) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{369, 0}
}
-func (x *ListpeersPeersChannels) GetMinimumHtlcInMsat() *Amount {
- if x != nil {
- return x.MinimumHtlcInMsat
+// Bkpr-DumpIncomeCsv.csv_format
+type BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat int32
+
+const (
+ BkprdumpincomecsvResponse_COINTRACKER BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 0
+ BkprdumpincomecsvResponse_KOINLY BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 1
+ BkprdumpincomecsvResponse_HARMONY BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 2
+ BkprdumpincomecsvResponse_QUICKBOOKS BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 3
+)
+
+// Enum value maps for BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat.
+var (
+ BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat_name = map[int32]string{
+ 0: "COINTRACKER",
+ 1: "KOINLY",
+ 2: "HARMONY",
+ 3: "QUICKBOOKS",
+ }
+ BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat_value = map[string]int32{
+ "COINTRACKER": 0,
+ "KOINLY": 1,
+ "HARMONY": 2,
+ "QUICKBOOKS": 3,
}
- return nil
+)
+
+func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Enum() *BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat {
+ p := new(BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetMinimumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MinimumHtlcOutMsat
- }
- return nil
+func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetMaximumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MaximumHtlcOutMsat
- }
- return nil
+func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[61].Descriptor()
}
-func (x *ListpeersPeersChannels) GetTheirToSelfDelay() uint32 {
- if x != nil && x.TheirToSelfDelay != nil {
- return *x.TheirToSelfDelay
- }
- return 0
+func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[61]
}
-func (x *ListpeersPeersChannels) GetOurToSelfDelay() uint32 {
- if x != nil && x.OurToSelfDelay != nil {
- return *x.OurToSelfDelay
- }
- return 0
+func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetMaxAcceptedHtlcs() uint32 {
- if x != nil && x.MaxAcceptedHtlcs != nil {
- return *x.MaxAcceptedHtlcs
- }
- return 0
+// Deprecated: Use BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat.Descriptor instead.
+func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{381, 0}
}
-func (x *ListpeersPeersChannels) GetAlias() *ListpeersPeersChannelsAlias {
- if x != nil {
- return x.Alias
+// Bkpr-ListAccountEvents.events[].type
+type BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType int32
+
+const (
+ BkprlistaccounteventsEvents_ONCHAIN_FEE BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 0
+ BkprlistaccounteventsEvents_CHAIN BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 1
+ BkprlistaccounteventsEvents_CHANNEL BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 2
+)
+
+// Enum value maps for BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType.
+var (
+ BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType_name = map[int32]string{
+ 0: "ONCHAIN_FEE",
+ 1: "CHAIN",
+ 2: "CHANNEL",
}
- return nil
+ BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType_value = map[string]int32{
+ "ONCHAIN_FEE": 0,
+ "CHAIN": 1,
+ "CHANNEL": 2,
+ }
+)
+
+func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Enum() *BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType {
+ p := new(BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetStatus() []string {
- if x != nil {
- return x.Status
- }
- return nil
+func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetInPaymentsOffered() uint64 {
- if x != nil && x.InPaymentsOffered != nil {
- return *x.InPaymentsOffered
- }
- return 0
+func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[62].Descriptor()
}
-func (x *ListpeersPeersChannels) GetInOfferedMsat() *Amount {
- if x != nil {
- return x.InOfferedMsat
- }
- return nil
+func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[62]
}
-func (x *ListpeersPeersChannels) GetInPaymentsFulfilled() uint64 {
- if x != nil && x.InPaymentsFulfilled != nil {
- return *x.InPaymentsFulfilled
- }
- return 0
+func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetInFulfilledMsat() *Amount {
- if x != nil {
- return x.InFulfilledMsat
- }
- return nil
+// Deprecated: Use BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType.Descriptor instead.
+func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{388, 0}
}
-func (x *ListpeersPeersChannels) GetOutPaymentsOffered() uint64 {
- if x != nil && x.OutPaymentsOffered != nil {
- return *x.OutPaymentsOffered
+// connect.direction
+type PeerConnectNotification_PeerConnectDirection int32
+
+const (
+ PeerConnectNotification_IN PeerConnectNotification_PeerConnectDirection = 0
+ PeerConnectNotification_OUT PeerConnectNotification_PeerConnectDirection = 1
+)
+
+// Enum value maps for PeerConnectNotification_PeerConnectDirection.
+var (
+ PeerConnectNotification_PeerConnectDirection_name = map[int32]string{
+ 0: "IN",
+ 1: "OUT",
}
- return 0
+ PeerConnectNotification_PeerConnectDirection_value = map[string]int32{
+ "IN": 0,
+ "OUT": 1,
+ }
+)
+
+func (x PeerConnectNotification_PeerConnectDirection) Enum() *PeerConnectNotification_PeerConnectDirection {
+ p := new(PeerConnectNotification_PeerConnectDirection)
+ *p = x
+ return p
}
-func (x *ListpeersPeersChannels) GetOutOfferedMsat() *Amount {
- if x != nil {
- return x.OutOfferedMsat
- }
- return nil
+func (x PeerConnectNotification_PeerConnectDirection) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
-func (x *ListpeersPeersChannels) GetOutPaymentsFulfilled() uint64 {
- if x != nil && x.OutPaymentsFulfilled != nil {
- return *x.OutPaymentsFulfilled
- }
- return 0
+func (PeerConnectNotification_PeerConnectDirection) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[63].Descriptor()
}
-func (x *ListpeersPeersChannels) GetOutFulfilledMsat() *Amount {
- if x != nil {
- return x.OutFulfilledMsat
- }
- return nil
+func (PeerConnectNotification_PeerConnectDirection) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[63]
}
-func (x *ListpeersPeersChannels) GetHtlcs() []*ListpeersPeersChannelsHtlcs {
- if x != nil {
- return x.Htlcs
- }
- return nil
+func (x PeerConnectNotification_PeerConnectDirection) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannels) GetCloseToAddr() string {
- if x != nil && x.CloseToAddr != nil {
- return *x.CloseToAddr
- }
- return ""
+// Deprecated: Use PeerConnectNotification_PeerConnectDirection.Descriptor instead.
+func (PeerConnectNotification_PeerConnectDirection) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{415, 0}
}
-type ListpeersPeersChannelsFeerate struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+// connect.address.type
+type PeerConnectAddress_PeerConnectAddressType int32
- Perkw uint32 `protobuf:"varint,1,opt,name=perkw,proto3" json:"perkw,omitempty"`
- Perkb uint32 `protobuf:"varint,2,opt,name=perkb,proto3" json:"perkb,omitempty"`
-}
+const (
+ PeerConnectAddress_LOCAL_SOCKET PeerConnectAddress_PeerConnectAddressType = 0
+ PeerConnectAddress_IPV4 PeerConnectAddress_PeerConnectAddressType = 1
+ PeerConnectAddress_IPV6 PeerConnectAddress_PeerConnectAddressType = 2
+ PeerConnectAddress_TORV2 PeerConnectAddress_PeerConnectAddressType = 3
+ PeerConnectAddress_TORV3 PeerConnectAddress_PeerConnectAddressType = 4
+)
-func (x *ListpeersPeersChannelsFeerate) Reset() {
- *x = ListpeersPeersChannelsFeerate{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[10]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+// Enum value maps for PeerConnectAddress_PeerConnectAddressType.
+var (
+ PeerConnectAddress_PeerConnectAddressType_name = map[int32]string{
+ 0: "LOCAL_SOCKET",
+ 1: "IPV4",
+ 2: "IPV6",
+ 3: "TORV2",
+ 4: "TORV3",
}
-}
+ PeerConnectAddress_PeerConnectAddressType_value = map[string]int32{
+ "LOCAL_SOCKET": 0,
+ "IPV4": 1,
+ "IPV6": 2,
+ "TORV2": 3,
+ "TORV3": 4,
+ }
+)
-func (x *ListpeersPeersChannelsFeerate) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x PeerConnectAddress_PeerConnectAddressType) Enum() *PeerConnectAddress_PeerConnectAddressType {
+ p := new(PeerConnectAddress_PeerConnectAddressType)
+ *p = x
+ return p
}
-func (*ListpeersPeersChannelsFeerate) ProtoMessage() {}
+func (x PeerConnectAddress_PeerConnectAddressType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
-func (x *ListpeersPeersChannelsFeerate) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[10]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
+func (PeerConnectAddress_PeerConnectAddressType) Descriptor() protoreflect.EnumDescriptor {
+ return file_node_proto_enumTypes[64].Descriptor()
}
-// Deprecated: Use ListpeersPeersChannelsFeerate.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannelsFeerate) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{10}
+func (PeerConnectAddress_PeerConnectAddressType) Type() protoreflect.EnumType {
+ return &file_node_proto_enumTypes[64]
}
-func (x *ListpeersPeersChannelsFeerate) GetPerkw() uint32 {
- if x != nil {
- return x.Perkw
- }
- return 0
+func (x PeerConnectAddress_PeerConnectAddressType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
}
-func (x *ListpeersPeersChannelsFeerate) GetPerkb() uint32 {
- if x != nil {
- return x.Perkb
- }
- return 0
+// Deprecated: Use PeerConnectAddress_PeerConnectAddressType.Descriptor instead.
+func (PeerConnectAddress_PeerConnectAddressType) EnumDescriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{416, 0}
}
-type ListpeersPeersChannelsInflight struct {
+type GetinfoRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- FundingTxid []byte `protobuf:"bytes,1,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
- FundingOutnum uint32 `protobuf:"varint,2,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
- Feerate string `protobuf:"bytes,3,opt,name=feerate,proto3" json:"feerate,omitempty"`
- TotalFundingMsat *Amount `protobuf:"bytes,4,opt,name=total_funding_msat,json=totalFundingMsat,proto3" json:"total_funding_msat,omitempty"`
- OurFundingMsat *Amount `protobuf:"bytes,5,opt,name=our_funding_msat,json=ourFundingMsat,proto3" json:"our_funding_msat,omitempty"`
- SpliceAmount *int64 `protobuf:"zigzag64,7,opt,name=splice_amount,json=spliceAmount,proto3,oneof" json:"splice_amount,omitempty"`
- ScratchTxid []byte `protobuf:"bytes,6,opt,name=scratch_txid,json=scratchTxid,proto3" json:"scratch_txid,omitempty"`
}
-func (x *ListpeersPeersChannelsInflight) Reset() {
- *x = ListpeersPeersChannelsInflight{}
+func (x *GetinfoRequest) Reset() {
+ *x = GetinfoRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[11]
+ mi := &file_node_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeersPeersChannelsInflight) String() string {
+func (x *GetinfoRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeersPeersChannelsInflight) ProtoMessage() {}
+func (*GetinfoRequest) ProtoMessage() {}
-func (x *ListpeersPeersChannelsInflight) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[11]
+func (x *GetinfoRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3549,89 +3399,214 @@ func (x *ListpeersPeersChannelsInflight) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeersPeersChannelsInflight.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannelsInflight) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{11}
+// Deprecated: Use GetinfoRequest.ProtoReflect.Descriptor instead.
+func (*GetinfoRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{0}
}
-func (x *ListpeersPeersChannelsInflight) GetFundingTxid() []byte {
- if x != nil {
- return x.FundingTxid
- }
- return nil
+type GetinfoResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Alias *string `protobuf:"bytes,2,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ Color []byte `protobuf:"bytes,3,opt,name=color,proto3" json:"color,omitempty"`
+ NumPeers uint32 `protobuf:"varint,4,opt,name=num_peers,json=numPeers,proto3" json:"num_peers,omitempty"`
+ NumPendingChannels uint32 `protobuf:"varint,5,opt,name=num_pending_channels,json=numPendingChannels,proto3" json:"num_pending_channels,omitempty"`
+ NumActiveChannels uint32 `protobuf:"varint,6,opt,name=num_active_channels,json=numActiveChannels,proto3" json:"num_active_channels,omitempty"`
+ NumInactiveChannels uint32 `protobuf:"varint,7,opt,name=num_inactive_channels,json=numInactiveChannels,proto3" json:"num_inactive_channels,omitempty"`
+ Version string `protobuf:"bytes,8,opt,name=version,proto3" json:"version,omitempty"`
+ LightningDir string `protobuf:"bytes,9,opt,name=lightning_dir,json=lightningDir,proto3" json:"lightning_dir,omitempty"`
+ OurFeatures *GetinfoOurFeatures `protobuf:"bytes,10,opt,name=our_features,json=ourFeatures,proto3,oneof" json:"our_features,omitempty"`
+ Blockheight uint32 `protobuf:"varint,11,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
+ Network string `protobuf:"bytes,12,opt,name=network,proto3" json:"network,omitempty"`
+ FeesCollectedMsat *Amount `protobuf:"bytes,13,opt,name=fees_collected_msat,json=feesCollectedMsat,proto3" json:"fees_collected_msat,omitempty"`
+ Address []*GetinfoAddress `protobuf:"bytes,14,rep,name=address,proto3" json:"address,omitempty"`
+ Binding []*GetinfoBinding `protobuf:"bytes,15,rep,name=binding,proto3" json:"binding,omitempty"`
+ WarningBitcoindSync *string `protobuf:"bytes,16,opt,name=warning_bitcoind_sync,json=warningBitcoindSync,proto3,oneof" json:"warning_bitcoind_sync,omitempty"`
+ WarningLightningdSync *string `protobuf:"bytes,17,opt,name=warning_lightningd_sync,json=warningLightningdSync,proto3,oneof" json:"warning_lightningd_sync,omitempty"`
+}
+
+func (x *GetinfoResponse) Reset() {
+ *x = GetinfoResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[1]
+ 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_node_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetinfoResponse.ProtoReflect.Descriptor instead.
+func (*GetinfoResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{1}
}
-func (x *ListpeersPeersChannelsInflight) GetFundingOutnum() uint32 {
+func (x *GetinfoResponse) GetId() []byte {
if x != nil {
- return x.FundingOutnum
+ return x.Id
+ }
+ return nil
+}
+
+func (x *GetinfoResponse) GetAlias() string {
+ if x != nil && x.Alias != nil {
+ return *x.Alias
+ }
+ return ""
+}
+
+func (x *GetinfoResponse) GetColor() []byte {
+ if x != nil {
+ return x.Color
+ }
+ return nil
+}
+
+func (x *GetinfoResponse) GetNumPeers() uint32 {
+ if x != nil {
+ return x.NumPeers
}
return 0
}
-func (x *ListpeersPeersChannelsInflight) GetFeerate() string {
+func (x *GetinfoResponse) GetNumPendingChannels() uint32 {
if x != nil {
- return x.Feerate
+ return x.NumPendingChannels
+ }
+ return 0
+}
+
+func (x *GetinfoResponse) GetNumActiveChannels() uint32 {
+ if x != nil {
+ return x.NumActiveChannels
+ }
+ return 0
+}
+
+func (x *GetinfoResponse) GetNumInactiveChannels() uint32 {
+ if x != nil {
+ return x.NumInactiveChannels
+ }
+ return 0
+}
+
+func (x *GetinfoResponse) GetVersion() string {
+ if x != nil {
+ return x.Version
}
return ""
}
-func (x *ListpeersPeersChannelsInflight) GetTotalFundingMsat() *Amount {
+func (x *GetinfoResponse) GetLightningDir() string {
if x != nil {
- return x.TotalFundingMsat
+ return x.LightningDir
}
- return nil
+ return ""
}
-func (x *ListpeersPeersChannelsInflight) GetOurFundingMsat() *Amount {
+func (x *GetinfoResponse) GetOurFeatures() *GetinfoOurFeatures {
if x != nil {
- return x.OurFundingMsat
+ return x.OurFeatures
}
return nil
}
-func (x *ListpeersPeersChannelsInflight) GetSpliceAmount() int64 {
- if x != nil && x.SpliceAmount != nil {
- return *x.SpliceAmount
+func (x *GetinfoResponse) GetBlockheight() uint32 {
+ if x != nil {
+ return x.Blockheight
}
return 0
}
-func (x *ListpeersPeersChannelsInflight) GetScratchTxid() []byte {
+func (x *GetinfoResponse) GetNetwork() string {
if x != nil {
- return x.ScratchTxid
+ return x.Network
+ }
+ return ""
+}
+
+func (x *GetinfoResponse) GetFeesCollectedMsat() *Amount {
+ if x != nil {
+ return x.FeesCollectedMsat
+ }
+ return nil
+}
+
+func (x *GetinfoResponse) GetAddress() []*GetinfoAddress {
+ if x != nil {
+ return x.Address
+ }
+ return nil
+}
+
+func (x *GetinfoResponse) GetBinding() []*GetinfoBinding {
+ if x != nil {
+ return x.Binding
}
return nil
}
-type ListpeersPeersChannelsFunding struct {
+func (x *GetinfoResponse) GetWarningBitcoindSync() string {
+ if x != nil && x.WarningBitcoindSync != nil {
+ return *x.WarningBitcoindSync
+ }
+ return ""
+}
+
+func (x *GetinfoResponse) GetWarningLightningdSync() string {
+ if x != nil && x.WarningLightningdSync != nil {
+ return *x.WarningLightningdSync
+ }
+ return ""
+}
+
+type GetinfoOurFeatures struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PushedMsat *Amount `protobuf:"bytes,3,opt,name=pushed_msat,json=pushedMsat,proto3,oneof" json:"pushed_msat,omitempty"`
- LocalFundsMsat *Amount `protobuf:"bytes,4,opt,name=local_funds_msat,json=localFundsMsat,proto3" json:"local_funds_msat,omitempty"`
- RemoteFundsMsat *Amount `protobuf:"bytes,7,opt,name=remote_funds_msat,json=remoteFundsMsat,proto3" json:"remote_funds_msat,omitempty"`
- FeePaidMsat *Amount `protobuf:"bytes,5,opt,name=fee_paid_msat,json=feePaidMsat,proto3,oneof" json:"fee_paid_msat,omitempty"`
- FeeRcvdMsat *Amount `protobuf:"bytes,6,opt,name=fee_rcvd_msat,json=feeRcvdMsat,proto3,oneof" json:"fee_rcvd_msat,omitempty"`
+ Init []byte `protobuf:"bytes,1,opt,name=init,proto3" json:"init,omitempty"`
+ Node []byte `protobuf:"bytes,2,opt,name=node,proto3" json:"node,omitempty"`
+ Channel []byte `protobuf:"bytes,3,opt,name=channel,proto3" json:"channel,omitempty"`
+ Invoice []byte `protobuf:"bytes,4,opt,name=invoice,proto3" json:"invoice,omitempty"`
}
-func (x *ListpeersPeersChannelsFunding) Reset() {
- *x = ListpeersPeersChannelsFunding{}
+func (x *GetinfoOurFeatures) Reset() {
+ *x = GetinfoOurFeatures{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[12]
+ mi := &file_node_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeersPeersChannelsFunding) String() string {
+func (x *GetinfoOurFeatures) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeersPeersChannelsFunding) ProtoMessage() {}
+func (*GetinfoOurFeatures) ProtoMessage() {}
-func (x *ListpeersPeersChannelsFunding) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[12]
+func (x *GetinfoOurFeatures) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3642,72 +3617,66 @@ func (x *ListpeersPeersChannelsFunding) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeersPeersChannelsFunding.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannelsFunding) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{12}
-}
-
-func (x *ListpeersPeersChannelsFunding) GetPushedMsat() *Amount {
- if x != nil {
- return x.PushedMsat
- }
- return nil
+// Deprecated: Use GetinfoOurFeatures.ProtoReflect.Descriptor instead.
+func (*GetinfoOurFeatures) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{2}
}
-func (x *ListpeersPeersChannelsFunding) GetLocalFundsMsat() *Amount {
+func (x *GetinfoOurFeatures) GetInit() []byte {
if x != nil {
- return x.LocalFundsMsat
+ return x.Init
}
return nil
}
-func (x *ListpeersPeersChannelsFunding) GetRemoteFundsMsat() *Amount {
+func (x *GetinfoOurFeatures) GetNode() []byte {
if x != nil {
- return x.RemoteFundsMsat
+ return x.Node
}
return nil
}
-func (x *ListpeersPeersChannelsFunding) GetFeePaidMsat() *Amount {
+func (x *GetinfoOurFeatures) GetChannel() []byte {
if x != nil {
- return x.FeePaidMsat
+ return x.Channel
}
return nil
}
-func (x *ListpeersPeersChannelsFunding) GetFeeRcvdMsat() *Amount {
+func (x *GetinfoOurFeatures) GetInvoice() []byte {
if x != nil {
- return x.FeeRcvdMsat
+ return x.Invoice
}
return nil
}
-type ListpeersPeersChannelsAlias struct {
+type GetinfoAddress struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Local *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
- Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
+ ItemType GetinfoAddress_GetinfoAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoAddress_GetinfoAddressType" json:"item_type,omitempty"`
+ Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
+ Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}
-func (x *ListpeersPeersChannelsAlias) Reset() {
- *x = ListpeersPeersChannelsAlias{}
+func (x *GetinfoAddress) Reset() {
+ *x = GetinfoAddress{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[13]
+ mi := &file_node_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeersPeersChannelsAlias) String() string {
+func (x *GetinfoAddress) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeersPeersChannelsAlias) ProtoMessage() {}
+func (*GetinfoAddress) ProtoMessage() {}
-func (x *ListpeersPeersChannelsAlias) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[13]
+func (x *GetinfoAddress) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3718,57 +3687,61 @@ func (x *ListpeersPeersChannelsAlias) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeersPeersChannelsAlias.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannelsAlias) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{13}
+// Deprecated: Use GetinfoAddress.ProtoReflect.Descriptor instead.
+func (*GetinfoAddress) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{3}
}
-func (x *ListpeersPeersChannelsAlias) GetLocal() string {
- if x != nil && x.Local != nil {
- return *x.Local
+func (x *GetinfoAddress) GetItemType() GetinfoAddress_GetinfoAddressType {
+ if x != nil {
+ return x.ItemType
}
- return ""
+ return GetinfoAddress_DNS
}
-func (x *ListpeersPeersChannelsAlias) GetRemote() string {
- if x != nil && x.Remote != nil {
- return *x.Remote
+func (x *GetinfoAddress) GetPort() uint32 {
+ if x != nil {
+ return x.Port
+ }
+ return 0
+}
+
+func (x *GetinfoAddress) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
}
return ""
}
-type ListpeersPeersChannelsHtlcs struct {
+type GetinfoBinding struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Direction ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=cln.ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection" json:"direction,omitempty"`
- Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Expiry uint32 `protobuf:"varint,4,opt,name=expiry,proto3" json:"expiry,omitempty"`
- PaymentHash []byte `protobuf:"bytes,5,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- LocalTrimmed *bool `protobuf:"varint,6,opt,name=local_trimmed,json=localTrimmed,proto3,oneof" json:"local_trimmed,omitempty"`
- Status *string `protobuf:"bytes,7,opt,name=status,proto3,oneof" json:"status,omitempty"`
- State HtlcState `protobuf:"varint,8,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
+ ItemType GetinfoBinding_GetinfoBindingType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoBinding_GetinfoBindingType" json:"item_type,omitempty"`
+ Address *string `protobuf:"bytes,2,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Port *uint32 `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
+ Socket *string `protobuf:"bytes,4,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
+ Subtype *string `protobuf:"bytes,5,opt,name=subtype,proto3,oneof" json:"subtype,omitempty"`
}
-func (x *ListpeersPeersChannelsHtlcs) Reset() {
- *x = ListpeersPeersChannelsHtlcs{}
+func (x *GetinfoBinding) Reset() {
+ *x = GetinfoBinding{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[14]
+ mi := &file_node_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeersPeersChannelsHtlcs) String() string {
+func (x *GetinfoBinding) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeersPeersChannelsHtlcs) ProtoMessage() {}
+func (*GetinfoBinding) ProtoMessage() {}
-func (x *ListpeersPeersChannelsHtlcs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[14]
+func (x *GetinfoBinding) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3779,92 +3752,72 @@ func (x *ListpeersPeersChannelsHtlcs) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeersPeersChannelsHtlcs.ProtoReflect.Descriptor instead.
-func (*ListpeersPeersChannelsHtlcs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{14}
+// Deprecated: Use GetinfoBinding.ProtoReflect.Descriptor instead.
+func (*GetinfoBinding) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{4}
}
-func (x *ListpeersPeersChannelsHtlcs) GetDirection() ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection {
+func (x *GetinfoBinding) GetItemType() GetinfoBinding_GetinfoBindingType {
if x != nil {
- return x.Direction
+ return x.ItemType
}
- return ListpeersPeersChannelsHtlcs_IN
+ return GetinfoBinding_LOCAL_SOCKET
}
-func (x *ListpeersPeersChannelsHtlcs) GetId() uint64 {
- if x != nil {
- return x.Id
+func (x *GetinfoBinding) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
}
- return 0
+ return ""
}
-func (x *ListpeersPeersChannelsHtlcs) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
-}
-
-func (x *ListpeersPeersChannelsHtlcs) GetExpiry() uint32 {
- if x != nil {
- return x.Expiry
+func (x *GetinfoBinding) GetPort() uint32 {
+ if x != nil && x.Port != nil {
+ return *x.Port
}
return 0
}
-func (x *ListpeersPeersChannelsHtlcs) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
-}
-
-func (x *ListpeersPeersChannelsHtlcs) GetLocalTrimmed() bool {
- if x != nil && x.LocalTrimmed != nil {
- return *x.LocalTrimmed
- }
- return false
-}
-
-func (x *ListpeersPeersChannelsHtlcs) GetStatus() string {
- if x != nil && x.Status != nil {
- return *x.Status
+func (x *GetinfoBinding) GetSocket() string {
+ if x != nil && x.Socket != nil {
+ return *x.Socket
}
return ""
}
-func (x *ListpeersPeersChannelsHtlcs) GetState() HtlcState {
- if x != nil {
- return x.State
+func (x *GetinfoBinding) GetSubtype() string {
+ if x != nil && x.Subtype != nil {
+ return *x.Subtype
}
- return HtlcState_SentAddHtlc
+ return ""
}
-type ListfundsRequest struct {
+type ListpeersRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Spent *bool `protobuf:"varint,1,opt,name=spent,proto3,oneof" json:"spent,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+ Level *ListpeersRequest_ListpeersLevel `protobuf:"varint,2,opt,name=level,proto3,enum=cln.ListpeersRequest_ListpeersLevel,oneof" json:"level,omitempty"`
}
-func (x *ListfundsRequest) Reset() {
- *x = ListfundsRequest{}
+func (x *ListpeersRequest) Reset() {
+ *x = ListpeersRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[15]
+ mi := &file_node_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListfundsRequest) String() string {
+func (x *ListpeersRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListfundsRequest) ProtoMessage() {}
+func (*ListpeersRequest) ProtoMessage() {}
-func (x *ListfundsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[15]
+func (x *ListpeersRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3875,44 +3828,50 @@ func (x *ListfundsRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListfundsRequest.ProtoReflect.Descriptor instead.
-func (*ListfundsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{15}
+// Deprecated: Use ListpeersRequest.ProtoReflect.Descriptor instead.
+func (*ListpeersRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{5}
}
-func (x *ListfundsRequest) GetSpent() bool {
- if x != nil && x.Spent != nil {
- return *x.Spent
+func (x *ListpeersRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
}
- return false
+ return nil
}
-type ListfundsResponse struct {
+func (x *ListpeersRequest) GetLevel() ListpeersRequest_ListpeersLevel {
+ if x != nil && x.Level != nil {
+ return *x.Level
+ }
+ return ListpeersRequest_IO
+}
+
+type ListpeersResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Outputs []*ListfundsOutputs `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
- Channels []*ListfundsChannels `protobuf:"bytes,2,rep,name=channels,proto3" json:"channels,omitempty"`
+ Peers []*ListpeersPeers `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
}
-func (x *ListfundsResponse) Reset() {
- *x = ListfundsResponse{}
+func (x *ListpeersResponse) Reset() {
+ *x = ListpeersResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[16]
+ mi := &file_node_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListfundsResponse) String() string {
+func (x *ListpeersResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListfundsResponse) ProtoMessage() {}
+func (*ListpeersResponse) ProtoMessage() {}
-func (x *ListfundsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[16]
+func (x *ListpeersResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3923,58 +3882,49 @@ func (x *ListfundsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListfundsResponse.ProtoReflect.Descriptor instead.
-func (*ListfundsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{16}
-}
-
-func (x *ListfundsResponse) GetOutputs() []*ListfundsOutputs {
- if x != nil {
- return x.Outputs
- }
- return nil
+// Deprecated: Use ListpeersResponse.ProtoReflect.Descriptor instead.
+func (*ListpeersResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{6}
}
-func (x *ListfundsResponse) GetChannels() []*ListfundsChannels {
+func (x *ListpeersResponse) GetPeers() []*ListpeersPeers {
if x != nil {
- return x.Channels
+ return x.Peers
}
return nil
}
-type ListfundsOutputs struct {
+type ListpeersPeers struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
- Output uint32 `protobuf:"varint,2,opt,name=output,proto3" json:"output,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Scriptpubkey []byte `protobuf:"bytes,4,opt,name=scriptpubkey,proto3" json:"scriptpubkey,omitempty"`
- Address *string `protobuf:"bytes,5,opt,name=address,proto3,oneof" json:"address,omitempty"`
- Redeemscript []byte `protobuf:"bytes,6,opt,name=redeemscript,proto3,oneof" json:"redeemscript,omitempty"`
- Status ListfundsOutputs_ListfundsOutputsStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.ListfundsOutputs_ListfundsOutputsStatus" json:"status,omitempty"`
- Reserved bool `protobuf:"varint,9,opt,name=reserved,proto3" json:"reserved,omitempty"`
- Blockheight *uint32 `protobuf:"varint,8,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Connected bool `protobuf:"varint,2,opt,name=connected,proto3" json:"connected,omitempty"`
+ Log []*ListpeersPeersLog `protobuf:"bytes,3,rep,name=log,proto3" json:"log,omitempty"`
+ Netaddr []string `protobuf:"bytes,5,rep,name=netaddr,proto3" json:"netaddr,omitempty"`
+ Features []byte `protobuf:"bytes,6,opt,name=features,proto3,oneof" json:"features,omitempty"`
+ RemoteAddr *string `protobuf:"bytes,7,opt,name=remote_addr,json=remoteAddr,proto3,oneof" json:"remote_addr,omitempty"`
+ NumChannels *uint32 `protobuf:"varint,8,opt,name=num_channels,json=numChannels,proto3,oneof" json:"num_channels,omitempty"`
}
-func (x *ListfundsOutputs) Reset() {
- *x = ListfundsOutputs{}
+func (x *ListpeersPeers) Reset() {
+ *x = ListpeersPeers{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[17]
+ mi := &file_node_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListfundsOutputs) String() string {
+func (x *ListpeersPeers) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListfundsOutputs) ProtoMessage() {}
+func (*ListpeersPeers) ProtoMessage() {}
-func (x *ListfundsOutputs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[17]
+func (x *ListpeersPeers) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -3985,107 +3935,91 @@ func (x *ListfundsOutputs) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListfundsOutputs.ProtoReflect.Descriptor instead.
-func (*ListfundsOutputs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{17}
+// Deprecated: Use ListpeersPeers.ProtoReflect.Descriptor instead.
+func (*ListpeersPeers) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{7}
}
-func (x *ListfundsOutputs) GetTxid() []byte {
+func (x *ListpeersPeers) GetId() []byte {
if x != nil {
- return x.Txid
+ return x.Id
}
return nil
}
-func (x *ListfundsOutputs) GetOutput() uint32 {
+func (x *ListpeersPeers) GetConnected() bool {
if x != nil {
- return x.Output
+ return x.Connected
}
- return 0
+ return false
}
-func (x *ListfundsOutputs) GetAmountMsat() *Amount {
+func (x *ListpeersPeers) GetLog() []*ListpeersPeersLog {
if x != nil {
- return x.AmountMsat
+ return x.Log
}
return nil
}
-func (x *ListfundsOutputs) GetScriptpubkey() []byte {
+func (x *ListpeersPeers) GetNetaddr() []string {
if x != nil {
- return x.Scriptpubkey
+ return x.Netaddr
}
return nil
}
-func (x *ListfundsOutputs) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
- }
- return ""
-}
-
-func (x *ListfundsOutputs) GetRedeemscript() []byte {
+func (x *ListpeersPeers) GetFeatures() []byte {
if x != nil {
- return x.Redeemscript
+ return x.Features
}
return nil
}
-func (x *ListfundsOutputs) GetStatus() ListfundsOutputs_ListfundsOutputsStatus {
- if x != nil {
- return x.Status
- }
- return ListfundsOutputs_UNCONFIRMED
-}
-
-func (x *ListfundsOutputs) GetReserved() bool {
- if x != nil {
- return x.Reserved
+func (x *ListpeersPeers) GetRemoteAddr() string {
+ if x != nil && x.RemoteAddr != nil {
+ return *x.RemoteAddr
}
- return false
+ return ""
}
-func (x *ListfundsOutputs) GetBlockheight() uint32 {
- if x != nil && x.Blockheight != nil {
- return *x.Blockheight
+func (x *ListpeersPeers) GetNumChannels() uint32 {
+ if x != nil && x.NumChannels != nil {
+ return *x.NumChannels
}
return 0
}
-type ListfundsChannels struct {
+type ListpeersPeersLog struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
- OurAmountMsat *Amount `protobuf:"bytes,2,opt,name=our_amount_msat,json=ourAmountMsat,proto3" json:"our_amount_msat,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- FundingTxid []byte `protobuf:"bytes,4,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
- FundingOutput uint32 `protobuf:"varint,5,opt,name=funding_output,json=fundingOutput,proto3" json:"funding_output,omitempty"`
- Connected bool `protobuf:"varint,6,opt,name=connected,proto3" json:"connected,omitempty"`
- State ChannelState `protobuf:"varint,7,opt,name=state,proto3,enum=cln.ChannelState" json:"state,omitempty"`
- ChannelId []byte `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
- ShortChannelId *string `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ ItemType ListpeersPeersLog_ListpeersPeersLogType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListpeersPeersLog_ListpeersPeersLogType" json:"item_type,omitempty"`
+ NumSkipped *uint32 `protobuf:"varint,2,opt,name=num_skipped,json=numSkipped,proto3,oneof" json:"num_skipped,omitempty"`
+ Time *string `protobuf:"bytes,3,opt,name=time,proto3,oneof" json:"time,omitempty"`
+ Source *string `protobuf:"bytes,4,opt,name=source,proto3,oneof" json:"source,omitempty"`
+ Log *string `protobuf:"bytes,5,opt,name=log,proto3,oneof" json:"log,omitempty"`
+ NodeId []byte `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"`
+ Data []byte `protobuf:"bytes,7,opt,name=data,proto3,oneof" json:"data,omitempty"`
}
-func (x *ListfundsChannels) Reset() {
- *x = ListfundsChannels{}
+func (x *ListpeersPeersLog) Reset() {
+ *x = ListpeersPeersLog{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[18]
+ mi := &file_node_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListfundsChannels) String() string {
+func (x *ListpeersPeersLog) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListfundsChannels) ProtoMessage() {}
+func (*ListpeersPeersLog) ProtoMessage() {}
-func (x *ListfundsChannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[18]
+func (x *ListpeersPeersLog) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4096,107 +4030,85 @@ func (x *ListfundsChannels) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListfundsChannels.ProtoReflect.Descriptor instead.
-func (*ListfundsChannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{18}
+// Deprecated: Use ListpeersPeersLog.ProtoReflect.Descriptor instead.
+func (*ListpeersPeersLog) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{8}
}
-func (x *ListfundsChannels) GetPeerId() []byte {
+func (x *ListpeersPeersLog) GetItemType() ListpeersPeersLog_ListpeersPeersLogType {
if x != nil {
- return x.PeerId
+ return x.ItemType
}
- return nil
+ return ListpeersPeersLog_SKIPPED
}
-func (x *ListfundsChannels) GetOurAmountMsat() *Amount {
- if x != nil {
- return x.OurAmountMsat
+func (x *ListpeersPeersLog) GetNumSkipped() uint32 {
+ if x != nil && x.NumSkipped != nil {
+ return *x.NumSkipped
}
- return nil
+ return 0
}
-func (x *ListfundsChannels) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *ListpeersPeersLog) GetTime() string {
+ if x != nil && x.Time != nil {
+ return *x.Time
}
- return nil
+ return ""
}
-func (x *ListfundsChannels) GetFundingTxid() []byte {
- if x != nil {
- return x.FundingTxid
+func (x *ListpeersPeersLog) GetSource() string {
+ if x != nil && x.Source != nil {
+ return *x.Source
}
- return nil
+ return ""
}
-func (x *ListfundsChannels) GetFundingOutput() uint32 {
- if x != nil {
- return x.FundingOutput
+func (x *ListpeersPeersLog) GetLog() string {
+ if x != nil && x.Log != nil {
+ return *x.Log
}
- return 0
+ return ""
}
-func (x *ListfundsChannels) GetConnected() bool {
+func (x *ListpeersPeersLog) GetNodeId() []byte {
if x != nil {
- return x.Connected
+ return x.NodeId
}
- return false
-}
-
-func (x *ListfundsChannels) GetState() ChannelState {
- if x != nil {
- return x.State
- }
- return ChannelState_Openingd
+ return nil
}
-func (x *ListfundsChannels) GetChannelId() []byte {
+func (x *ListpeersPeersLog) GetData() []byte {
if x != nil {
- return x.ChannelId
+ return x.Data
}
return nil
}
-func (x *ListfundsChannels) GetShortChannelId() string {
- if x != nil && x.ShortChannelId != nil {
- return *x.ShortChannelId
- }
- return ""
-}
-
-type SendpayRequest struct {
+type ListfundsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Route []*SendpayRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Bolt11 *string `protobuf:"bytes,5,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- PaymentSecret []byte `protobuf:"bytes,6,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
- Partid *uint32 `protobuf:"varint,7,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- Localinvreqid []byte `protobuf:"bytes,11,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
- Groupid *uint64 `protobuf:"varint,9,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ Spent *bool `protobuf:"varint,1,opt,name=spent,proto3,oneof" json:"spent,omitempty"`
}
-func (x *SendpayRequest) Reset() {
- *x = SendpayRequest{}
+func (x *ListfundsRequest) Reset() {
+ *x = ListfundsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[19]
+ mi := &file_node_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendpayRequest) String() string {
+func (x *ListfundsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendpayRequest) ProtoMessage() {}
+func (*ListfundsRequest) ProtoMessage() {}
-func (x *SendpayRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[19]
+func (x *ListfundsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4207,115 +4119,107 @@ func (x *SendpayRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendpayRequest.ProtoReflect.Descriptor instead.
-func (*SendpayRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{19}
+// Deprecated: Use ListfundsRequest.ProtoReflect.Descriptor instead.
+func (*ListfundsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{9}
}
-func (x *SendpayRequest) GetRoute() []*SendpayRoute {
- if x != nil {
- return x.Route
+func (x *ListfundsRequest) GetSpent() bool {
+ if x != nil && x.Spent != nil {
+ return *x.Spent
}
- return nil
+ return false
}
-func (x *SendpayRequest) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
-}
+type ListfundsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *SendpayRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
- }
- return ""
+ Outputs []*ListfundsOutputs `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
+ Channels []*ListfundsChannels `protobuf:"bytes,2,rep,name=channels,proto3" json:"channels,omitempty"`
}
-func (x *SendpayRequest) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *ListfundsResponse) Reset() {
+ *x = ListfundsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *SendpayRequest) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
+func (x *ListfundsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *SendpayRequest) GetPaymentSecret() []byte {
- if x != nil {
- return x.PaymentSecret
+func (*ListfundsResponse) ProtoMessage() {}
+
+func (x *ListfundsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return nil
+ return mi.MessageOf(x)
}
-func (x *SendpayRequest) GetPartid() uint32 {
- if x != nil && x.Partid != nil {
- return *x.Partid
- }
- return 0
+// Deprecated: Use ListfundsResponse.ProtoReflect.Descriptor instead.
+func (*ListfundsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{10}
}
-func (x *SendpayRequest) GetLocalinvreqid() []byte {
+func (x *ListfundsResponse) GetOutputs() []*ListfundsOutputs {
if x != nil {
- return x.Localinvreqid
+ return x.Outputs
}
return nil
}
-func (x *SendpayRequest) GetGroupid() uint64 {
- if x != nil && x.Groupid != nil {
- return *x.Groupid
+func (x *ListfundsResponse) GetChannels() []*ListfundsChannels {
+ if x != nil {
+ return x.Channels
}
- return 0
+ return nil
}
-type SendpayResponse struct {
+type ListfundsOutputs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
- Groupid *uint64 `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status SendpayResponse_SendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.SendpayResponse_SendpayStatus" json:"status,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- CompletedAt *uint64 `protobuf:"varint,15,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Partid *uint64 `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- Bolt11 *string `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
- Message *string `protobuf:"bytes,14,opt,name=message,proto3,oneof" json:"message,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Output uint32 `protobuf:"varint,2,opt,name=output,proto3" json:"output,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ Scriptpubkey []byte `protobuf:"bytes,4,opt,name=scriptpubkey,proto3" json:"scriptpubkey,omitempty"`
+ Address *string `protobuf:"bytes,5,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Redeemscript []byte `protobuf:"bytes,6,opt,name=redeemscript,proto3,oneof" json:"redeemscript,omitempty"`
+ Status ListfundsOutputs_ListfundsOutputsStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.ListfundsOutputs_ListfundsOutputsStatus" json:"status,omitempty"`
+ Blockheight *uint32 `protobuf:"varint,8,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
+ Reserved bool `protobuf:"varint,9,opt,name=reserved,proto3" json:"reserved,omitempty"`
+ ReservedToBlock *uint32 `protobuf:"varint,10,opt,name=reserved_to_block,json=reservedToBlock,proto3,oneof" json:"reserved_to_block,omitempty"`
}
-func (x *SendpayResponse) Reset() {
- *x = SendpayResponse{}
+func (x *ListfundsOutputs) Reset() {
+ *x = ListfundsOutputs{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[20]
+ mi := &file_node_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendpayResponse) String() string {
+func (x *ListfundsOutputs) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendpayResponse) ProtoMessage() {}
+func (*ListfundsOutputs) ProtoMessage() {}
-func (x *SendpayResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[20]
+func (x *ListfundsOutputs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4326,158 +4230,114 @@ func (x *SendpayResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendpayResponse.ProtoReflect.Descriptor instead.
-func (*SendpayResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{20}
-}
-
-func (x *SendpayResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
-}
-
-func (x *SendpayResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
- }
- return 0
+// Deprecated: Use ListfundsOutputs.ProtoReflect.Descriptor instead.
+func (*ListfundsOutputs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{11}
}
-func (x *SendpayResponse) GetId() uint64 {
+func (x *ListfundsOutputs) GetTxid() []byte {
if x != nil {
- return x.Id
+ return x.Txid
}
- return 0
+ return nil
}
-func (x *SendpayResponse) GetGroupid() uint64 {
- if x != nil && x.Groupid != nil {
- return *x.Groupid
+func (x *ListfundsOutputs) GetOutput() uint32 {
+ if x != nil {
+ return x.Output
}
return 0
}
-func (x *SendpayResponse) GetPaymentHash() []byte {
+func (x *ListfundsOutputs) GetAmountMsat() *Amount {
if x != nil {
- return x.PaymentHash
+ return x.AmountMsat
}
return nil
}
-func (x *SendpayResponse) GetStatus() SendpayResponse_SendpayStatus {
+func (x *ListfundsOutputs) GetScriptpubkey() []byte {
if x != nil {
- return x.Status
+ return x.Scriptpubkey
}
- return SendpayResponse_PENDING
+ return nil
}
-func (x *SendpayResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *ListfundsOutputs) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
}
- return nil
+ return ""
}
-func (x *SendpayResponse) GetDestination() []byte {
+func (x *ListfundsOutputs) GetRedeemscript() []byte {
if x != nil {
- return x.Destination
+ return x.Redeemscript
}
return nil
}
-func (x *SendpayResponse) GetCreatedAt() uint64 {
+func (x *ListfundsOutputs) GetStatus() ListfundsOutputs_ListfundsOutputsStatus {
if x != nil {
- return x.CreatedAt
+ return x.Status
}
- return 0
+ return ListfundsOutputs_UNCONFIRMED
}
-func (x *SendpayResponse) GetCompletedAt() uint64 {
- if x != nil && x.CompletedAt != nil {
- return *x.CompletedAt
+func (x *ListfundsOutputs) GetBlockheight() uint32 {
+ if x != nil && x.Blockheight != nil {
+ return *x.Blockheight
}
return 0
}
-func (x *SendpayResponse) GetAmountSentMsat() *Amount {
+func (x *ListfundsOutputs) GetReserved() bool {
if x != nil {
- return x.AmountSentMsat
- }
- return nil
-}
-
-func (x *SendpayResponse) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+ return x.Reserved
}
- return ""
+ return false
}
-func (x *SendpayResponse) GetPartid() uint64 {
- if x != nil && x.Partid != nil {
- return *x.Partid
+func (x *ListfundsOutputs) GetReservedToBlock() uint32 {
+ if x != nil && x.ReservedToBlock != nil {
+ return *x.ReservedToBlock
}
return 0
}
-func (x *SendpayResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
+type ListfundsChannels struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
+ OurAmountMsat *Amount `protobuf:"bytes,2,opt,name=our_amount_msat,json=ourAmountMsat,proto3" json:"our_amount_msat,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,4,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
+ FundingOutput uint32 `protobuf:"varint,5,opt,name=funding_output,json=fundingOutput,proto3" json:"funding_output,omitempty"`
+ Connected bool `protobuf:"varint,6,opt,name=connected,proto3" json:"connected,omitempty"`
+ State ChannelState `protobuf:"varint,7,opt,name=state,proto3,enum=cln.ChannelState" json:"state,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ ChannelId []byte `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
}
-func (x *SendpayResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
- }
- return ""
-}
-
-func (x *SendpayResponse) GetPaymentPreimage() []byte {
- if x != nil {
- return x.PaymentPreimage
- }
- return nil
-}
-
-func (x *SendpayResponse) GetMessage() string {
- if x != nil && x.Message != nil {
- return *x.Message
- }
- return ""
-}
-
-type SendpayRoute struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Id []byte `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
- Delay uint32 `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
- Channel string `protobuf:"bytes,4,opt,name=channel,proto3" json:"channel,omitempty"`
-}
-
-func (x *SendpayRoute) Reset() {
- *x = SendpayRoute{}
+func (x *ListfundsChannels) Reset() {
+ *x = ListfundsChannels{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[21]
+ mi := &file_node_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendpayRoute) String() string {
+func (x *ListfundsChannels) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendpayRoute) ProtoMessage() {}
+func (*ListfundsChannels) ProtoMessage() {}
-func (x *SendpayRoute) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[21]
+func (x *ListfundsChannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4488,127 +4348,109 @@ func (x *SendpayRoute) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendpayRoute.ProtoReflect.Descriptor instead.
-func (*SendpayRoute) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{21}
+// Deprecated: Use ListfundsChannels.ProtoReflect.Descriptor instead.
+func (*ListfundsChannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{12}
}
-func (x *SendpayRoute) GetAmountMsat() *Amount {
+func (x *ListfundsChannels) GetPeerId() []byte {
if x != nil {
- return x.AmountMsat
+ return x.PeerId
}
return nil
}
-func (x *SendpayRoute) GetId() []byte {
+func (x *ListfundsChannels) GetOurAmountMsat() *Amount {
if x != nil {
- return x.Id
+ return x.OurAmountMsat
}
return nil
}
-func (x *SendpayRoute) GetDelay() uint32 {
+func (x *ListfundsChannels) GetAmountMsat() *Amount {
if x != nil {
- return x.Delay
+ return x.AmountMsat
}
- return 0
+ return nil
}
-func (x *SendpayRoute) GetChannel() string {
+func (x *ListfundsChannels) GetFundingTxid() []byte {
if x != nil {
- return x.Channel
+ return x.FundingTxid
}
- return ""
-}
-
-type ListchannelsRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- ShortChannelId *string `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
- Source []byte `protobuf:"bytes,2,opt,name=source,proto3,oneof" json:"source,omitempty"`
- Destination []byte `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ return nil
}
-func (x *ListchannelsRequest) Reset() {
- *x = ListchannelsRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[22]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListfundsChannels) GetFundingOutput() uint32 {
+ if x != nil {
+ return x.FundingOutput
}
+ return 0
}
-func (x *ListchannelsRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ListchannelsRequest) ProtoMessage() {}
-
-func (x *ListchannelsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[22]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListfundsChannels) GetConnected() bool {
+ if x != nil {
+ return x.Connected
}
- return mi.MessageOf(x)
+ return false
}
-// Deprecated: Use ListchannelsRequest.ProtoReflect.Descriptor instead.
-func (*ListchannelsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{22}
+func (x *ListfundsChannels) GetState() ChannelState {
+ if x != nil {
+ return x.State
+ }
+ return ChannelState_Openingd
}
-func (x *ListchannelsRequest) GetShortChannelId() string {
+func (x *ListfundsChannels) GetShortChannelId() string {
if x != nil && x.ShortChannelId != nil {
return *x.ShortChannelId
}
return ""
}
-func (x *ListchannelsRequest) GetSource() []byte {
- if x != nil {
- return x.Source
- }
- return nil
-}
-
-func (x *ListchannelsRequest) GetDestination() []byte {
+func (x *ListfundsChannels) GetChannelId() []byte {
if x != nil {
- return x.Destination
+ return x.ChannelId
}
return nil
}
-type ListchannelsResponse struct {
+type SendpayRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Channels []*ListchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
+ Route []*SendpayRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,5,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ PaymentSecret []byte `protobuf:"bytes,6,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
+ Partid *uint64 `protobuf:"varint,7,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Groupid *uint64 `protobuf:"varint,9,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Localinvreqid []byte `protobuf:"bytes,11,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
+ PaymentMetadata []byte `protobuf:"bytes,12,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
+ Description *string `protobuf:"bytes,13,opt,name=description,proto3,oneof" json:"description,omitempty"`
}
-func (x *ListchannelsResponse) Reset() {
- *x = ListchannelsResponse{}
+func (x *SendpayRequest) Reset() {
+ *x = SendpayRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[23]
+ mi := &file_node_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListchannelsResponse) String() string {
+func (x *SendpayRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListchannelsResponse) ProtoMessage() {}
+func (*SendpayRequest) ProtoMessage() {}
-func (x *ListchannelsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[23]
+func (x *SendpayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4619,255 +4461,291 @@ func (x *ListchannelsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListchannelsResponse.ProtoReflect.Descriptor instead.
-func (*ListchannelsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{23}
+// Deprecated: Use SendpayRequest.ProtoReflect.Descriptor instead.
+func (*SendpayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{13}
}
-func (x *ListchannelsResponse) GetChannels() []*ListchannelsChannels {
+func (x *SendpayRequest) GetRoute() []*SendpayRoute {
if x != nil {
- return x.Channels
+ return x.Route
}
return nil
}
-type ListchannelsChannels struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Source []byte `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
- Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
- ShortChannelId string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
- Direction uint32 `protobuf:"varint,16,opt,name=direction,proto3" json:"direction,omitempty"`
- Public bool `protobuf:"varint,4,opt,name=public,proto3" json:"public,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- MessageFlags uint32 `protobuf:"varint,6,opt,name=message_flags,json=messageFlags,proto3" json:"message_flags,omitempty"`
- ChannelFlags uint32 `protobuf:"varint,7,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"`
- Active bool `protobuf:"varint,8,opt,name=active,proto3" json:"active,omitempty"`
- LastUpdate uint32 `protobuf:"varint,9,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"`
- BaseFeeMillisatoshi uint32 `protobuf:"varint,10,opt,name=base_fee_millisatoshi,json=baseFeeMillisatoshi,proto3" json:"base_fee_millisatoshi,omitempty"`
- FeePerMillionth uint32 `protobuf:"varint,11,opt,name=fee_per_millionth,json=feePerMillionth,proto3" json:"fee_per_millionth,omitempty"`
- Delay uint32 `protobuf:"varint,12,opt,name=delay,proto3" json:"delay,omitempty"`
- HtlcMinimumMsat *Amount `protobuf:"bytes,13,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
- HtlcMaximumMsat *Amount `protobuf:"bytes,14,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
- Features []byte `protobuf:"bytes,15,opt,name=features,proto3" json:"features,omitempty"`
-}
-
-func (x *ListchannelsChannels) Reset() {
- *x = ListchannelsChannels{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[24]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *SendpayRequest) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
+ return nil
}
-func (x *ListchannelsChannels) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ListchannelsChannels) ProtoMessage() {}
-
-func (x *ListchannelsChannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[24]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *SendpayRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use ListchannelsChannels.ProtoReflect.Descriptor instead.
-func (*ListchannelsChannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{24}
+ return ""
}
-func (x *ListchannelsChannels) GetSource() []byte {
- if x != nil {
- return x.Source
+func (x *SendpayRequest) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
- return nil
+ return ""
}
-func (x *ListchannelsChannels) GetDestination() []byte {
+func (x *SendpayRequest) GetPaymentSecret() []byte {
if x != nil {
- return x.Destination
+ return x.PaymentSecret
}
return nil
}
-func (x *ListchannelsChannels) GetShortChannelId() string {
- if x != nil {
- return x.ShortChannelId
+func (x *SendpayRequest) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
}
- return ""
+ return 0
}
-func (x *ListchannelsChannels) GetDirection() uint32 {
- if x != nil {
- return x.Direction
+func (x *SendpayRequest) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
}
return 0
}
-func (x *ListchannelsChannels) GetPublic() bool {
+func (x *SendpayRequest) GetAmountMsat() *Amount {
if x != nil {
- return x.Public
+ return x.AmountMsat
}
- return false
+ return nil
}
-func (x *ListchannelsChannels) GetAmountMsat() *Amount {
+func (x *SendpayRequest) GetLocalinvreqid() []byte {
if x != nil {
- return x.AmountMsat
+ return x.Localinvreqid
}
return nil
}
-func (x *ListchannelsChannels) GetMessageFlags() uint32 {
+func (x *SendpayRequest) GetPaymentMetadata() []byte {
if x != nil {
- return x.MessageFlags
+ return x.PaymentMetadata
}
- return 0
+ return nil
}
-func (x *ListchannelsChannels) GetChannelFlags() uint32 {
- if x != nil {
- return x.ChannelFlags
+func (x *SendpayRequest) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
}
- return 0
+ return ""
}
-func (x *ListchannelsChannels) GetActive() bool {
- if x != nil {
- return x.Active
+type SendpayResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
+ Groupid *uint64 `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status SendpayResponse_SendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.SendpayResponse_SendpayStatus" json:"status,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Partid *uint64 `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Bolt11 *string `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Message *string `protobuf:"bytes,14,opt,name=message,proto3,oneof" json:"message,omitempty"`
+ CompletedAt *uint64 `protobuf:"varint,15,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+}
+
+func (x *SendpayResponse) Reset() {
+ *x = SendpayResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return false
}
-func (x *ListchannelsChannels) GetLastUpdate() uint32 {
+func (x *SendpayResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendpayResponse) ProtoMessage() {}
+
+func (x *SendpayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SendpayResponse.ProtoReflect.Descriptor instead.
+func (*SendpayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *SendpayResponse) GetId() uint64 {
if x != nil {
- return x.LastUpdate
+ return x.Id
}
return 0
}
-func (x *ListchannelsChannels) GetBaseFeeMillisatoshi() uint32 {
- if x != nil {
- return x.BaseFeeMillisatoshi
+func (x *SendpayResponse) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
}
return 0
}
-func (x *ListchannelsChannels) GetFeePerMillionth() uint32 {
+func (x *SendpayResponse) GetPaymentHash() []byte {
if x != nil {
- return x.FeePerMillionth
+ return x.PaymentHash
}
- return 0
+ return nil
}
-func (x *ListchannelsChannels) GetDelay() uint32 {
+func (x *SendpayResponse) GetStatus() SendpayResponse_SendpayStatus {
if x != nil {
- return x.Delay
+ return x.Status
}
- return 0
+ return SendpayResponse_PENDING
}
-func (x *ListchannelsChannels) GetHtlcMinimumMsat() *Amount {
+func (x *SendpayResponse) GetAmountMsat() *Amount {
if x != nil {
- return x.HtlcMinimumMsat
+ return x.AmountMsat
}
return nil
}
-func (x *ListchannelsChannels) GetHtlcMaximumMsat() *Amount {
+func (x *SendpayResponse) GetDestination() []byte {
if x != nil {
- return x.HtlcMaximumMsat
+ return x.Destination
}
return nil
}
-func (x *ListchannelsChannels) GetFeatures() []byte {
+func (x *SendpayResponse) GetCreatedAt() uint64 {
if x != nil {
- return x.Features
+ return x.CreatedAt
+ }
+ return 0
+}
+
+func (x *SendpayResponse) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
}
return nil
}
-type AddgossipRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *SendpayResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
- Message []byte `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
+func (x *SendpayResponse) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
+ }
+ return 0
}
-func (x *AddgossipRequest) Reset() {
- *x = AddgossipRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[25]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *SendpayResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *SendpayResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
}
+ return ""
}
-func (x *AddgossipRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *SendpayResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
}
-func (*AddgossipRequest) ProtoMessage() {}
+func (x *SendpayResponse) GetMessage() string {
+ if x != nil && x.Message != nil {
+ return *x.Message
+ }
+ return ""
+}
-func (x *AddgossipRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[25]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *SendpayResponse) GetCompletedAt() uint64 {
+ if x != nil && x.CompletedAt != nil {
+ return *x.CompletedAt
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use AddgossipRequest.ProtoReflect.Descriptor instead.
-func (*AddgossipRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{25}
+func (x *SendpayResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
}
-func (x *AddgossipRequest) GetMessage() []byte {
- if x != nil {
- return x.Message
+func (x *SendpayResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
}
- return nil
+ return 0
}
-type AddgossipResponse struct {
+type SendpayRoute struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
+ Delay uint32 `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
+ Channel string `protobuf:"bytes,4,opt,name=channel,proto3" json:"channel,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}
-func (x *AddgossipResponse) Reset() {
- *x = AddgossipResponse{}
+func (x *SendpayRoute) Reset() {
+ *x = SendpayRoute{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[26]
+ mi := &file_node_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *AddgossipResponse) String() string {
+func (x *SendpayRoute) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*AddgossipResponse) ProtoMessage() {}
+func (*SendpayRoute) ProtoMessage() {}
-func (x *AddgossipResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[26]
+func (x *SendpayRoute) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4878,37 +4756,66 @@ func (x *AddgossipResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use AddgossipResponse.ProtoReflect.Descriptor instead.
-func (*AddgossipResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{26}
+// Deprecated: Use SendpayRoute.ProtoReflect.Descriptor instead.
+func (*SendpayRoute) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{15}
}
-type AutocleaninvoiceRequest struct {
+func (x *SendpayRoute) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *SendpayRoute) GetDelay() uint32 {
+ if x != nil {
+ return x.Delay
+ }
+ return 0
+}
+
+func (x *SendpayRoute) GetChannel() string {
+ if x != nil {
+ return x.Channel
+ }
+ return ""
+}
+
+func (x *SendpayRoute) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+type ListchannelsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ExpiredBy *uint64 `protobuf:"varint,1,opt,name=expired_by,json=expiredBy,proto3,oneof" json:"expired_by,omitempty"`
- CycleSeconds *uint64 `protobuf:"varint,2,opt,name=cycle_seconds,json=cycleSeconds,proto3,oneof" json:"cycle_seconds,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ Source []byte `protobuf:"bytes,2,opt,name=source,proto3,oneof" json:"source,omitempty"`
+ Destination []byte `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
}
-func (x *AutocleaninvoiceRequest) Reset() {
- *x = AutocleaninvoiceRequest{}
+func (x *ListchannelsRequest) Reset() {
+ *x = ListchannelsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[27]
+ mi := &file_node_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *AutocleaninvoiceRequest) String() string {
+func (x *ListchannelsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*AutocleaninvoiceRequest) ProtoMessage() {}
+func (*ListchannelsRequest) ProtoMessage() {}
-func (x *AutocleaninvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[27]
+func (x *ListchannelsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4919,52 +4826,57 @@ func (x *AutocleaninvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use AutocleaninvoiceRequest.ProtoReflect.Descriptor instead.
-func (*AutocleaninvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{27}
+// Deprecated: Use ListchannelsRequest.ProtoReflect.Descriptor instead.
+func (*ListchannelsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{16}
}
-func (x *AutocleaninvoiceRequest) GetExpiredBy() uint64 {
- if x != nil && x.ExpiredBy != nil {
- return *x.ExpiredBy
+func (x *ListchannelsRequest) GetShortChannelId() string {
+ if x != nil && x.ShortChannelId != nil {
+ return *x.ShortChannelId
}
- return 0
+ return ""
}
-func (x *AutocleaninvoiceRequest) GetCycleSeconds() uint64 {
- if x != nil && x.CycleSeconds != nil {
- return *x.CycleSeconds
+func (x *ListchannelsRequest) GetSource() []byte {
+ if x != nil {
+ return x.Source
}
- return 0
+ return nil
}
-type AutocleaninvoiceResponse struct {
+func (x *ListchannelsRequest) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type ListchannelsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
- ExpiredBy *uint64 `protobuf:"varint,2,opt,name=expired_by,json=expiredBy,proto3,oneof" json:"expired_by,omitempty"`
- CycleSeconds *uint64 `protobuf:"varint,3,opt,name=cycle_seconds,json=cycleSeconds,proto3,oneof" json:"cycle_seconds,omitempty"`
+ Channels []*ListchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}
-func (x *AutocleaninvoiceResponse) Reset() {
- *x = AutocleaninvoiceResponse{}
+func (x *ListchannelsResponse) Reset() {
+ *x = ListchannelsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[28]
+ mi := &file_node_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *AutocleaninvoiceResponse) String() string {
+func (x *ListchannelsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*AutocleaninvoiceResponse) ProtoMessage() {}
+func (*ListchannelsResponse) ProtoMessage() {}
-func (x *AutocleaninvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[28]
+func (x *ListchannelsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -4975,59 +4887,58 @@ func (x *AutocleaninvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use AutocleaninvoiceResponse.ProtoReflect.Descriptor instead.
-func (*AutocleaninvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{28}
+// Deprecated: Use ListchannelsResponse.ProtoReflect.Descriptor instead.
+func (*ListchannelsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{17}
}
-func (x *AutocleaninvoiceResponse) GetEnabled() bool {
+func (x *ListchannelsResponse) GetChannels() []*ListchannelsChannels {
if x != nil {
- return x.Enabled
- }
- return false
-}
-
-func (x *AutocleaninvoiceResponse) GetExpiredBy() uint64 {
- if x != nil && x.ExpiredBy != nil {
- return *x.ExpiredBy
- }
- return 0
-}
-
-func (x *AutocleaninvoiceResponse) GetCycleSeconds() uint64 {
- if x != nil && x.CycleSeconds != nil {
- return *x.CycleSeconds
+ return x.Channels
}
- return 0
+ return nil
}
-type CheckmessageRequest struct {
+type ListchannelsChannels struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
- Zbase string `protobuf:"bytes,2,opt,name=zbase,proto3" json:"zbase,omitempty"`
- Pubkey []byte `protobuf:"bytes,3,opt,name=pubkey,proto3,oneof" json:"pubkey,omitempty"`
+ Source []byte `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
+ Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
+ ShortChannelId string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
+ Public bool `protobuf:"varint,4,opt,name=public,proto3" json:"public,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ MessageFlags uint32 `protobuf:"varint,6,opt,name=message_flags,json=messageFlags,proto3" json:"message_flags,omitempty"`
+ ChannelFlags uint32 `protobuf:"varint,7,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"`
+ Active bool `protobuf:"varint,8,opt,name=active,proto3" json:"active,omitempty"`
+ LastUpdate uint32 `protobuf:"varint,9,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"`
+ BaseFeeMillisatoshi uint32 `protobuf:"varint,10,opt,name=base_fee_millisatoshi,json=baseFeeMillisatoshi,proto3" json:"base_fee_millisatoshi,omitempty"`
+ FeePerMillionth uint32 `protobuf:"varint,11,opt,name=fee_per_millionth,json=feePerMillionth,proto3" json:"fee_per_millionth,omitempty"`
+ Delay uint32 `protobuf:"varint,12,opt,name=delay,proto3" json:"delay,omitempty"`
+ HtlcMinimumMsat *Amount `protobuf:"bytes,13,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
+ HtlcMaximumMsat *Amount `protobuf:"bytes,14,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
+ Features []byte `protobuf:"bytes,15,opt,name=features,proto3" json:"features,omitempty"`
+ Direction uint32 `protobuf:"varint,16,opt,name=direction,proto3" json:"direction,omitempty"`
}
-func (x *CheckmessageRequest) Reset() {
- *x = CheckmessageRequest{}
+func (x *ListchannelsChannels) Reset() {
+ *x = ListchannelsChannels{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[29]
+ mi := &file_node_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CheckmessageRequest) String() string {
+func (x *ListchannelsChannels) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CheckmessageRequest) ProtoMessage() {}
+func (*ListchannelsChannels) ProtoMessage() {}
-func (x *CheckmessageRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[29]
+func (x *ListchannelsChannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5038,118 +4949,148 @@ func (x *CheckmessageRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CheckmessageRequest.ProtoReflect.Descriptor instead.
-func (*CheckmessageRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{29}
+// Deprecated: Use ListchannelsChannels.ProtoReflect.Descriptor instead.
+func (*ListchannelsChannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{18}
}
-func (x *CheckmessageRequest) GetMessage() string {
+func (x *ListchannelsChannels) GetSource() []byte {
if x != nil {
- return x.Message
+ return x.Source
}
- return ""
+ return nil
}
-func (x *CheckmessageRequest) GetZbase() string {
+func (x *ListchannelsChannels) GetDestination() []byte {
if x != nil {
- return x.Zbase
+ return x.Destination
+ }
+ return nil
+}
+
+func (x *ListchannelsChannels) GetShortChannelId() string {
+ if x != nil {
+ return x.ShortChannelId
}
return ""
}
-func (x *CheckmessageRequest) GetPubkey() []byte {
+func (x *ListchannelsChannels) GetPublic() bool {
if x != nil {
- return x.Pubkey
+ return x.Public
+ }
+ return false
+}
+
+func (x *ListchannelsChannels) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
return nil
}
-type CheckmessageResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *ListchannelsChannels) GetMessageFlags() uint32 {
+ if x != nil {
+ return x.MessageFlags
+ }
+ return 0
+}
- Verified bool `protobuf:"varint,1,opt,name=verified,proto3" json:"verified,omitempty"`
- Pubkey []byte `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
+func (x *ListchannelsChannels) GetChannelFlags() uint32 {
+ if x != nil {
+ return x.ChannelFlags
+ }
+ return 0
}
-func (x *CheckmessageResponse) Reset() {
- *x = CheckmessageResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[30]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListchannelsChannels) GetActive() bool {
+ if x != nil {
+ return x.Active
}
+ return false
}
-func (x *CheckmessageResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListchannelsChannels) GetLastUpdate() uint32 {
+ if x != nil {
+ return x.LastUpdate
+ }
+ return 0
}
-func (*CheckmessageResponse) ProtoMessage() {}
+func (x *ListchannelsChannels) GetBaseFeeMillisatoshi() uint32 {
+ if x != nil {
+ return x.BaseFeeMillisatoshi
+ }
+ return 0
+}
-func (x *CheckmessageResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[30]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListchannelsChannels) GetFeePerMillionth() uint32 {
+ if x != nil {
+ return x.FeePerMillionth
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use CheckmessageResponse.ProtoReflect.Descriptor instead.
-func (*CheckmessageResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{30}
+func (x *ListchannelsChannels) GetDelay() uint32 {
+ if x != nil {
+ return x.Delay
+ }
+ return 0
}
-func (x *CheckmessageResponse) GetVerified() bool {
+func (x *ListchannelsChannels) GetHtlcMinimumMsat() *Amount {
if x != nil {
- return x.Verified
+ return x.HtlcMinimumMsat
}
- return false
+ return nil
}
-func (x *CheckmessageResponse) GetPubkey() []byte {
+func (x *ListchannelsChannels) GetHtlcMaximumMsat() *Amount {
if x != nil {
- return x.Pubkey
+ return x.HtlcMaximumMsat
}
return nil
}
-type CloseRequest struct {
+func (x *ListchannelsChannels) GetFeatures() []byte {
+ if x != nil {
+ return x.Features
+ }
+ return nil
+}
+
+func (x *ListchannelsChannels) GetDirection() uint32 {
+ if x != nil {
+ return x.Direction
+ }
+ return 0
+}
+
+type AddgossipRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Unilateraltimeout *uint32 `protobuf:"varint,2,opt,name=unilateraltimeout,proto3,oneof" json:"unilateraltimeout,omitempty"`
- Destination *string `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- FeeNegotiationStep *string `protobuf:"bytes,4,opt,name=fee_negotiation_step,json=feeNegotiationStep,proto3,oneof" json:"fee_negotiation_step,omitempty"`
- WrongFunding *Outpoint `protobuf:"bytes,5,opt,name=wrong_funding,json=wrongFunding,proto3,oneof" json:"wrong_funding,omitempty"`
- ForceLeaseClosed *bool `protobuf:"varint,6,opt,name=force_lease_closed,json=forceLeaseClosed,proto3,oneof" json:"force_lease_closed,omitempty"`
- Feerange []*Feerate `protobuf:"bytes,7,rep,name=feerange,proto3" json:"feerange,omitempty"`
+ Message []byte `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}
-func (x *CloseRequest) Reset() {
- *x = CloseRequest{}
+func (x *AddgossipRequest) Reset() {
+ *x = AddgossipRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[31]
+ mi := &file_node_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CloseRequest) String() string {
+func (x *AddgossipRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CloseRequest) ProtoMessage() {}
+func (*AddgossipRequest) ProtoMessage() {}
-func (x *CloseRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[31]
+func (x *AddgossipRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5160,87 +5101,41 @@ func (x *CloseRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CloseRequest.ProtoReflect.Descriptor instead.
-func (*CloseRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{31}
-}
-
-func (x *CloseRequest) GetId() string {
- if x != nil {
- return x.Id
- }
- return ""
-}
-
-func (x *CloseRequest) GetUnilateraltimeout() uint32 {
- if x != nil && x.Unilateraltimeout != nil {
- return *x.Unilateraltimeout
- }
- return 0
-}
-
-func (x *CloseRequest) GetDestination() string {
- if x != nil && x.Destination != nil {
- return *x.Destination
- }
- return ""
-}
-
-func (x *CloseRequest) GetFeeNegotiationStep() string {
- if x != nil && x.FeeNegotiationStep != nil {
- return *x.FeeNegotiationStep
- }
- return ""
-}
-
-func (x *CloseRequest) GetWrongFunding() *Outpoint {
- if x != nil {
- return x.WrongFunding
- }
- return nil
-}
-
-func (x *CloseRequest) GetForceLeaseClosed() bool {
- if x != nil && x.ForceLeaseClosed != nil {
- return *x.ForceLeaseClosed
- }
- return false
+// Deprecated: Use AddgossipRequest.ProtoReflect.Descriptor instead.
+func (*AddgossipRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{19}
}
-func (x *CloseRequest) GetFeerange() []*Feerate {
+func (x *AddgossipRequest) GetMessage() []byte {
if x != nil {
- return x.Feerange
+ return x.Message
}
return nil
}
-type CloseResponse struct {
+type AddgossipResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- ItemType CloseResponse_CloseType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.CloseResponse_CloseType" json:"item_type,omitempty"`
- Tx []byte `protobuf:"bytes,2,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
- Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
}
-func (x *CloseResponse) Reset() {
- *x = CloseResponse{}
+func (x *AddgossipResponse) Reset() {
+ *x = AddgossipResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[32]
+ mi := &file_node_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CloseResponse) String() string {
+func (x *AddgossipResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CloseResponse) ProtoMessage() {}
+func (*AddgossipResponse) ProtoMessage() {}
-func (x *CloseResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[32]
+func (x *AddgossipResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5251,59 +5146,39 @@ func (x *CloseResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CloseResponse.ProtoReflect.Descriptor instead.
-func (*CloseResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{32}
-}
-
-func (x *CloseResponse) GetItemType() CloseResponse_CloseType {
- if x != nil {
- return x.ItemType
- }
- return CloseResponse_MUTUAL
-}
-
-func (x *CloseResponse) GetTx() []byte {
- if x != nil {
- return x.Tx
- }
- return nil
-}
-
-func (x *CloseResponse) GetTxid() []byte {
- if x != nil {
- return x.Txid
- }
- return nil
+// Deprecated: Use AddgossipResponse.ProtoReflect.Descriptor instead.
+func (*AddgossipResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{20}
}
-type ConnectRequest struct {
+type AddpsbtoutputRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Host *string `protobuf:"bytes,2,opt,name=host,proto3,oneof" json:"host,omitempty"`
- Port *uint32 `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
+ Satoshi *Amount `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
+ Locktime *uint32 `protobuf:"varint,2,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
+ Initialpsbt *string `protobuf:"bytes,3,opt,name=initialpsbt,proto3,oneof" json:"initialpsbt,omitempty"`
+ Destination *string `protobuf:"bytes,4,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
}
-func (x *ConnectRequest) Reset() {
- *x = ConnectRequest{}
+func (x *AddpsbtoutputRequest) Reset() {
+ *x = AddpsbtoutputRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[33]
+ mi := &file_node_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ConnectRequest) String() string {
+func (x *AddpsbtoutputRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ConnectRequest) ProtoMessage() {}
+func (*AddpsbtoutputRequest) ProtoMessage() {}
-func (x *ConnectRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[33]
+func (x *AddpsbtoutputRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5314,60 +5189,66 @@ func (x *ConnectRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ConnectRequest.ProtoReflect.Descriptor instead.
-func (*ConnectRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{33}
+// Deprecated: Use AddpsbtoutputRequest.ProtoReflect.Descriptor instead.
+func (*AddpsbtoutputRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{21}
}
-func (x *ConnectRequest) GetId() string {
+func (x *AddpsbtoutputRequest) GetSatoshi() *Amount {
if x != nil {
- return x.Id
+ return x.Satoshi
}
- return ""
+ return nil
}
-func (x *ConnectRequest) GetHost() string {
- if x != nil && x.Host != nil {
- return *x.Host
+func (x *AddpsbtoutputRequest) GetLocktime() uint32 {
+ if x != nil && x.Locktime != nil {
+ return *x.Locktime
+ }
+ return 0
+}
+
+func (x *AddpsbtoutputRequest) GetInitialpsbt() string {
+ if x != nil && x.Initialpsbt != nil {
+ return *x.Initialpsbt
}
return ""
}
-func (x *ConnectRequest) GetPort() uint32 {
- if x != nil && x.Port != nil {
- return *x.Port
+func (x *AddpsbtoutputRequest) GetDestination() string {
+ if x != nil && x.Destination != nil {
+ return *x.Destination
}
- return 0
+ return ""
}
-type ConnectResponse struct {
+type AddpsbtoutputResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Features []byte `protobuf:"bytes,2,opt,name=features,proto3" json:"features,omitempty"`
- Direction ConnectResponse_ConnectDirection `protobuf:"varint,3,opt,name=direction,proto3,enum=cln.ConnectResponse_ConnectDirection" json:"direction,omitempty"`
- Address *ConnectAddress `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ EstimatedAddedWeight uint32 `protobuf:"varint,2,opt,name=estimated_added_weight,json=estimatedAddedWeight,proto3" json:"estimated_added_weight,omitempty"`
+ Outnum uint32 `protobuf:"varint,3,opt,name=outnum,proto3" json:"outnum,omitempty"`
}
-func (x *ConnectResponse) Reset() {
- *x = ConnectResponse{}
+func (x *AddpsbtoutputResponse) Reset() {
+ *x = AddpsbtoutputResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[34]
+ mi := &file_node_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ConnectResponse) String() string {
+func (x *AddpsbtoutputResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ConnectResponse) ProtoMessage() {}
+func (*AddpsbtoutputResponse) ProtoMessage() {}
-func (x *ConnectResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[34]
+func (x *AddpsbtoutputResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5378,67 +5259,58 @@ func (x *ConnectResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ConnectResponse.ProtoReflect.Descriptor instead.
-func (*ConnectResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{34}
-}
-
-func (x *ConnectResponse) GetId() []byte {
- if x != nil {
- return x.Id
- }
- return nil
+// Deprecated: Use AddpsbtoutputResponse.ProtoReflect.Descriptor instead.
+func (*AddpsbtoutputResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{22}
}
-func (x *ConnectResponse) GetFeatures() []byte {
+func (x *AddpsbtoutputResponse) GetPsbt() string {
if x != nil {
- return x.Features
+ return x.Psbt
}
- return nil
+ return ""
}
-func (x *ConnectResponse) GetDirection() ConnectResponse_ConnectDirection {
+func (x *AddpsbtoutputResponse) GetEstimatedAddedWeight() uint32 {
if x != nil {
- return x.Direction
+ return x.EstimatedAddedWeight
}
- return ConnectResponse_IN
+ return 0
}
-func (x *ConnectResponse) GetAddress() *ConnectAddress {
+func (x *AddpsbtoutputResponse) GetOutnum() uint32 {
if x != nil {
- return x.Address
+ return x.Outnum
}
- return nil
+ return 0
}
-type ConnectAddress struct {
+type AutocleaninvoiceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ItemType ConnectAddress_ConnectAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ConnectAddress_ConnectAddressType" json:"item_type,omitempty"`
- Socket *string `protobuf:"bytes,2,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
- Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
- Port *uint32 `protobuf:"varint,4,opt,name=port,proto3,oneof" json:"port,omitempty"`
+ ExpiredBy *uint64 `protobuf:"varint,1,opt,name=expired_by,json=expiredBy,proto3,oneof" json:"expired_by,omitempty"`
+ CycleSeconds *uint64 `protobuf:"varint,2,opt,name=cycle_seconds,json=cycleSeconds,proto3,oneof" json:"cycle_seconds,omitempty"`
}
-func (x *ConnectAddress) Reset() {
- *x = ConnectAddress{}
+func (x *AutocleaninvoiceRequest) Reset() {
+ *x = AutocleaninvoiceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[35]
+ mi := &file_node_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ConnectAddress) String() string {
+func (x *AutocleaninvoiceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ConnectAddress) ProtoMessage() {}
+func (*AutocleaninvoiceRequest) ProtoMessage() {}
-func (x *ConnectAddress) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[35]
+func (x *AutocleaninvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5449,66 +5321,52 @@ func (x *ConnectAddress) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ConnectAddress.ProtoReflect.Descriptor instead.
-func (*ConnectAddress) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{35}
-}
-
-func (x *ConnectAddress) GetItemType() ConnectAddress_ConnectAddressType {
- if x != nil {
- return x.ItemType
- }
- return ConnectAddress_LOCAL_SOCKET
-}
-
-func (x *ConnectAddress) GetSocket() string {
- if x != nil && x.Socket != nil {
- return *x.Socket
- }
- return ""
+// Deprecated: Use AutocleaninvoiceRequest.ProtoReflect.Descriptor instead.
+func (*AutocleaninvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{23}
}
-func (x *ConnectAddress) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
+func (x *AutocleaninvoiceRequest) GetExpiredBy() uint64 {
+ if x != nil && x.ExpiredBy != nil {
+ return *x.ExpiredBy
}
- return ""
+ return 0
}
-func (x *ConnectAddress) GetPort() uint32 {
- if x != nil && x.Port != nil {
- return *x.Port
+func (x *AutocleaninvoiceRequest) GetCycleSeconds() uint64 {
+ if x != nil && x.CycleSeconds != nil {
+ return *x.CycleSeconds
}
return 0
}
-type CreateinvoiceRequest struct {
+type AutocleaninvoiceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
- Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
- Preimage []byte `protobuf:"bytes,3,opt,name=preimage,proto3" json:"preimage,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ ExpiredBy *uint64 `protobuf:"varint,2,opt,name=expired_by,json=expiredBy,proto3,oneof" json:"expired_by,omitempty"`
+ CycleSeconds *uint64 `protobuf:"varint,3,opt,name=cycle_seconds,json=cycleSeconds,proto3,oneof" json:"cycle_seconds,omitempty"`
}
-func (x *CreateinvoiceRequest) Reset() {
- *x = CreateinvoiceRequest{}
+func (x *AutocleaninvoiceResponse) Reset() {
+ *x = AutocleaninvoiceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[36]
+ mi := &file_node_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateinvoiceRequest) String() string {
+func (x *AutocleaninvoiceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateinvoiceRequest) ProtoMessage() {}
+func (*AutocleaninvoiceResponse) ProtoMessage() {}
-func (x *CreateinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[36]
+func (x *AutocleaninvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5519,72 +5377,58 @@ func (x *CreateinvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*CreateinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{36}
+// Deprecated: Use AutocleaninvoiceResponse.ProtoReflect.Descriptor instead.
+func (*AutocleaninvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{24}
}
-func (x *CreateinvoiceRequest) GetInvstring() string {
+func (x *AutocleaninvoiceResponse) GetEnabled() bool {
if x != nil {
- return x.Invstring
+ return x.Enabled
}
- return ""
+ return false
}
-func (x *CreateinvoiceRequest) GetLabel() string {
- if x != nil {
- return x.Label
+func (x *AutocleaninvoiceResponse) GetExpiredBy() uint64 {
+ if x != nil && x.ExpiredBy != nil {
+ return *x.ExpiredBy
}
- return ""
+ return 0
}
-func (x *CreateinvoiceRequest) GetPreimage() []byte {
- if x != nil {
- return x.Preimage
+func (x *AutocleaninvoiceResponse) GetCycleSeconds() uint64 {
+ if x != nil && x.CycleSeconds != nil {
+ return *x.CycleSeconds
}
- return nil
+ return 0
}
-type CreateinvoiceResponse struct {
+type AutocleanonceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Bolt11 *string `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- PaymentHash []byte `protobuf:"bytes,4,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Status CreateinvoiceResponse_CreateinvoiceStatus `protobuf:"varint,6,opt,name=status,proto3,enum=cln.CreateinvoiceResponse_CreateinvoiceStatus" json:"status,omitempty"`
- Description string `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
- AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
- PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
- PaidOutpoint *CreateinvoicePaidOutpoint `protobuf:"bytes,17,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
- LocalOfferId []byte `protobuf:"bytes,13,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
- InvreqPayerNote *string `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ Subsystem AutocleanSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.AutocleanSubsystem" json:"subsystem,omitempty"`
+ Age uint64 `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
}
-func (x *CreateinvoiceResponse) Reset() {
- *x = CreateinvoiceResponse{}
+func (x *AutocleanonceRequest) Reset() {
+ *x = AutocleanonceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[37]
+ mi := &file_node_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateinvoiceResponse) String() string {
+func (x *AutocleanonceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateinvoiceResponse) ProtoMessage() {}
+func (*AutocleanonceRequest) ProtoMessage() {}
-func (x *CreateinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[37]
+func (x *AutocleanonceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5595,149 +5439,185 @@ func (x *CreateinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*CreateinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{37}
+// Deprecated: Use AutocleanonceRequest.ProtoReflect.Descriptor instead.
+func (*AutocleanonceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{25}
}
-func (x *CreateinvoiceResponse) GetLabel() string {
+func (x *AutocleanonceRequest) GetSubsystem() AutocleanSubsystem {
if x != nil {
- return x.Label
+ return x.Subsystem
}
- return ""
+ return AutocleanSubsystem_SUCCEEDEDFORWARDS
}
-func (x *CreateinvoiceResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *AutocleanonceRequest) GetAge() uint64 {
+ if x != nil {
+ return x.Age
}
- return ""
+ return 0
}
-func (x *CreateinvoiceResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+type AutocleanonceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Autoclean *AutocleanonceAutoclean `protobuf:"bytes,1,opt,name=autoclean,proto3" json:"autoclean,omitempty"`
+}
+
+func (x *AutocleanonceResponse) Reset() {
+ *x = AutocleanonceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *CreateinvoiceResponse) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
+func (x *AutocleanonceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AutocleanonceResponse) ProtoMessage() {}
+
+func (x *AutocleanonceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[26]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return nil
+ return mi.MessageOf(x)
}
-func (x *CreateinvoiceResponse) GetAmountMsat() *Amount {
+// Deprecated: Use AutocleanonceResponse.ProtoReflect.Descriptor instead.
+func (*AutocleanonceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{26}
+}
+
+func (x *AutocleanonceResponse) GetAutoclean() *AutocleanonceAutoclean {
if x != nil {
- return x.AmountMsat
+ return x.Autoclean
}
return nil
}
-func (x *CreateinvoiceResponse) GetStatus() CreateinvoiceResponse_CreateinvoiceStatus {
- if x != nil {
- return x.Status
- }
- return CreateinvoiceResponse_PAID
+type AutocleanonceAutoclean struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Succeededforwards *AutocleanonceAutocleanSucceededforwards `protobuf:"bytes,1,opt,name=succeededforwards,proto3,oneof" json:"succeededforwards,omitempty"`
+ Failedforwards *AutocleanonceAutocleanFailedforwards `protobuf:"bytes,2,opt,name=failedforwards,proto3,oneof" json:"failedforwards,omitempty"`
+ Succeededpays *AutocleanonceAutocleanSucceededpays `protobuf:"bytes,3,opt,name=succeededpays,proto3,oneof" json:"succeededpays,omitempty"`
+ Failedpays *AutocleanonceAutocleanFailedpays `protobuf:"bytes,4,opt,name=failedpays,proto3,oneof" json:"failedpays,omitempty"`
+ Paidinvoices *AutocleanonceAutocleanPaidinvoices `protobuf:"bytes,5,opt,name=paidinvoices,proto3,oneof" json:"paidinvoices,omitempty"`
+ Expiredinvoices *AutocleanonceAutocleanExpiredinvoices `protobuf:"bytes,6,opt,name=expiredinvoices,proto3,oneof" json:"expiredinvoices,omitempty"`
}
-func (x *CreateinvoiceResponse) GetDescription() string {
- if x != nil {
- return x.Description
+func (x *AutocleanonceAutoclean) Reset() {
+ *x = AutocleanonceAutoclean{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *CreateinvoiceResponse) GetExpiresAt() uint64 {
- if x != nil {
- return x.ExpiresAt
- }
- return 0
+func (x *AutocleanonceAutoclean) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *CreateinvoiceResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
+func (*AutocleanonceAutoclean) ProtoMessage() {}
+
+func (x *AutocleanonceAutoclean) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[27]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *CreateinvoiceResponse) GetPayIndex() uint64 {
- if x != nil && x.PayIndex != nil {
- return *x.PayIndex
- }
- return 0
+// Deprecated: Use AutocleanonceAutoclean.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutoclean) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{27}
}
-func (x *CreateinvoiceResponse) GetAmountReceivedMsat() *Amount {
+func (x *AutocleanonceAutoclean) GetSucceededforwards() *AutocleanonceAutocleanSucceededforwards {
if x != nil {
- return x.AmountReceivedMsat
+ return x.Succeededforwards
}
return nil
}
-func (x *CreateinvoiceResponse) GetPaidAt() uint64 {
- if x != nil && x.PaidAt != nil {
- return *x.PaidAt
+func (x *AutocleanonceAutoclean) GetFailedforwards() *AutocleanonceAutocleanFailedforwards {
+ if x != nil {
+ return x.Failedforwards
}
- return 0
+ return nil
}
-func (x *CreateinvoiceResponse) GetPaidOutpoint() *CreateinvoicePaidOutpoint {
+func (x *AutocleanonceAutoclean) GetSucceededpays() *AutocleanonceAutocleanSucceededpays {
if x != nil {
- return x.PaidOutpoint
+ return x.Succeededpays
}
return nil
}
-func (x *CreateinvoiceResponse) GetPaymentPreimage() []byte {
+func (x *AutocleanonceAutoclean) GetFailedpays() *AutocleanonceAutocleanFailedpays {
if x != nil {
- return x.PaymentPreimage
+ return x.Failedpays
}
return nil
}
-func (x *CreateinvoiceResponse) GetLocalOfferId() []byte {
+func (x *AutocleanonceAutoclean) GetPaidinvoices() *AutocleanonceAutocleanPaidinvoices {
if x != nil {
- return x.LocalOfferId
+ return x.Paidinvoices
}
return nil
}
-func (x *CreateinvoiceResponse) GetInvreqPayerNote() string {
- if x != nil && x.InvreqPayerNote != nil {
- return *x.InvreqPayerNote
+func (x *AutocleanonceAutoclean) GetExpiredinvoices() *AutocleanonceAutocleanExpiredinvoices {
+ if x != nil {
+ return x.Expiredinvoices
}
- return ""
+ return nil
}
-type CreateinvoicePaidOutpoint struct {
+type AutocleanonceAutocleanSucceededforwards struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
- Outnum *uint32 `protobuf:"varint,2,opt,name=outnum,proto3,oneof" json:"outnum,omitempty"`
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *CreateinvoicePaidOutpoint) Reset() {
- *x = CreateinvoicePaidOutpoint{}
+func (x *AutocleanonceAutocleanSucceededforwards) Reset() {
+ *x = AutocleanonceAutocleanSucceededforwards{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[38]
+ mi := &file_node_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateinvoicePaidOutpoint) String() string {
+func (x *AutocleanonceAutocleanSucceededforwards) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateinvoicePaidOutpoint) ProtoMessage() {}
+func (*AutocleanonceAutocleanSucceededforwards) ProtoMessage() {}
-func (x *CreateinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[38]
+func (x *AutocleanonceAutocleanSucceededforwards) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5748,54 +5628,51 @@ func (x *CreateinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
-func (*CreateinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{38}
+// Deprecated: Use AutocleanonceAutocleanSucceededforwards.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanSucceededforwards) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{28}
}
-func (x *CreateinvoicePaidOutpoint) GetTxid() []byte {
+func (x *AutocleanonceAutocleanSucceededforwards) GetCleaned() uint64 {
if x != nil {
- return x.Txid
+ return x.Cleaned
}
- return nil
+ return 0
}
-func (x *CreateinvoicePaidOutpoint) GetOutnum() uint32 {
- if x != nil && x.Outnum != nil {
- return *x.Outnum
+func (x *AutocleanonceAutocleanSucceededforwards) GetUncleaned() uint64 {
+ if x != nil {
+ return x.Uncleaned
}
return 0
}
-type DatastoreRequest struct {
+type AutocleanonceAutocleanFailedforwards struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
- String_ *string `protobuf:"bytes,6,opt,name=string,proto3,oneof" json:"string,omitempty"`
- Hex []byte `protobuf:"bytes,2,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
- Mode *DatastoreRequest_DatastoreMode `protobuf:"varint,3,opt,name=mode,proto3,enum=cln.DatastoreRequest_DatastoreMode,oneof" json:"mode,omitempty"`
- Generation *uint64 `protobuf:"varint,4,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *DatastoreRequest) Reset() {
- *x = DatastoreRequest{}
+func (x *AutocleanonceAutocleanFailedforwards) Reset() {
+ *x = AutocleanonceAutocleanFailedforwards{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[39]
+ mi := &file_node_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DatastoreRequest) String() string {
+func (x *AutocleanonceAutocleanFailedforwards) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DatastoreRequest) ProtoMessage() {}
+func (*AutocleanonceAutocleanFailedforwards) ProtoMessage() {}
-func (x *DatastoreRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[39]
+func (x *AutocleanonceAutocleanFailedforwards) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5806,74 +5683,51 @@ func (x *DatastoreRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DatastoreRequest.ProtoReflect.Descriptor instead.
-func (*DatastoreRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{39}
+// Deprecated: Use AutocleanonceAutocleanFailedforwards.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanFailedforwards) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{29}
}
-func (x *DatastoreRequest) GetKey() []string {
+func (x *AutocleanonceAutocleanFailedforwards) GetCleaned() uint64 {
if x != nil {
- return x.Key
+ return x.Cleaned
}
- return nil
-}
-
-func (x *DatastoreRequest) GetString_() string {
- if x != nil && x.String_ != nil {
- return *x.String_
- }
- return ""
+ return 0
}
-func (x *DatastoreRequest) GetHex() []byte {
+func (x *AutocleanonceAutocleanFailedforwards) GetUncleaned() uint64 {
if x != nil {
- return x.Hex
- }
- return nil
-}
-
-func (x *DatastoreRequest) GetMode() DatastoreRequest_DatastoreMode {
- if x != nil && x.Mode != nil {
- return *x.Mode
- }
- return DatastoreRequest_MUST_CREATE
-}
-
-func (x *DatastoreRequest) GetGeneration() uint64 {
- if x != nil && x.Generation != nil {
- return *x.Generation
+ return x.Uncleaned
}
return 0
}
-type DatastoreResponse struct {
+type AutocleanonceAutocleanSucceededpays struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
- Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
- Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
- String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *DatastoreResponse) Reset() {
- *x = DatastoreResponse{}
+func (x *AutocleanonceAutocleanSucceededpays) Reset() {
+ *x = AutocleanonceAutocleanSucceededpays{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[40]
+ mi := &file_node_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DatastoreResponse) String() string {
+func (x *AutocleanonceAutocleanSucceededpays) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DatastoreResponse) ProtoMessage() {}
+func (*AutocleanonceAutocleanSucceededpays) ProtoMessage() {}
-func (x *DatastoreResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[40]
+func (x *AutocleanonceAutocleanSucceededpays) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5884,62 +5738,51 @@ func (x *DatastoreResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DatastoreResponse.ProtoReflect.Descriptor instead.
-func (*DatastoreResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{40}
+// Deprecated: Use AutocleanonceAutocleanSucceededpays.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanSucceededpays) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{30}
}
-func (x *DatastoreResponse) GetKey() []string {
+func (x *AutocleanonceAutocleanSucceededpays) GetCleaned() uint64 {
if x != nil {
- return x.Key
- }
- return nil
-}
-
-func (x *DatastoreResponse) GetGeneration() uint64 {
- if x != nil && x.Generation != nil {
- return *x.Generation
+ return x.Cleaned
}
return 0
}
-func (x *DatastoreResponse) GetHex() []byte {
+func (x *AutocleanonceAutocleanSucceededpays) GetUncleaned() uint64 {
if x != nil {
- return x.Hex
+ return x.Uncleaned
}
- return nil
+ return 0
}
-func (x *DatastoreResponse) GetString_() string {
- if x != nil && x.String_ != nil {
- return *x.String_
- }
- return ""
-}
-
-type DatastoreusageRequest struct {
+type AutocleanonceAutocleanFailedpays struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *DatastoreusageRequest) Reset() {
- *x = DatastoreusageRequest{}
+func (x *AutocleanonceAutocleanFailedpays) Reset() {
+ *x = AutocleanonceAutocleanFailedpays{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[41]
+ mi := &file_node_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DatastoreusageRequest) String() string {
+func (x *AutocleanonceAutocleanFailedpays) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DatastoreusageRequest) ProtoMessage() {}
+func (*AutocleanonceAutocleanFailedpays) ProtoMessage() {}
-func (x *DatastoreusageRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[41]
+func (x *AutocleanonceAutocleanFailedpays) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5950,36 +5793,51 @@ func (x *DatastoreusageRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DatastoreusageRequest.ProtoReflect.Descriptor instead.
-func (*DatastoreusageRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{41}
+// Deprecated: Use AutocleanonceAutocleanFailedpays.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanFailedpays) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{31}
}
-type DatastoreusageResponse struct {
+func (x *AutocleanonceAutocleanFailedpays) GetCleaned() uint64 {
+ if x != nil {
+ return x.Cleaned
+ }
+ return 0
+}
+
+func (x *AutocleanonceAutocleanFailedpays) GetUncleaned() uint64 {
+ if x != nil {
+ return x.Uncleaned
+ }
+ return 0
+}
+
+type AutocleanonceAutocleanPaidinvoices struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Datastoreusage *DatastoreusageDatastoreusage `protobuf:"bytes,1,opt,name=datastoreusage,proto3,oneof" json:"datastoreusage,omitempty"`
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *DatastoreusageResponse) Reset() {
- *x = DatastoreusageResponse{}
+func (x *AutocleanonceAutocleanPaidinvoices) Reset() {
+ *x = AutocleanonceAutocleanPaidinvoices{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[42]
+ mi := &file_node_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DatastoreusageResponse) String() string {
+func (x *AutocleanonceAutocleanPaidinvoices) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DatastoreusageResponse) ProtoMessage() {}
+func (*AutocleanonceAutocleanPaidinvoices) ProtoMessage() {}
-func (x *DatastoreusageResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[42]
+func (x *AutocleanonceAutocleanPaidinvoices) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5990,44 +5848,51 @@ func (x *DatastoreusageResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DatastoreusageResponse.ProtoReflect.Descriptor instead.
-func (*DatastoreusageResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{42}
+// Deprecated: Use AutocleanonceAutocleanPaidinvoices.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanPaidinvoices) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{32}
}
-func (x *DatastoreusageResponse) GetDatastoreusage() *DatastoreusageDatastoreusage {
+func (x *AutocleanonceAutocleanPaidinvoices) GetCleaned() uint64 {
if x != nil {
- return x.Datastoreusage
+ return x.Cleaned
}
- return nil
+ return 0
}
-type DatastoreusageDatastoreusage struct {
+func (x *AutocleanonceAutocleanPaidinvoices) GetUncleaned() uint64 {
+ if x != nil {
+ return x.Uncleaned
+ }
+ return 0
+}
+
+type AutocleanonceAutocleanExpiredinvoices struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key *string `protobuf:"bytes,1,opt,name=key,proto3,oneof" json:"key,omitempty"`
- TotalBytes *uint64 `protobuf:"varint,2,opt,name=total_bytes,json=totalBytes,proto3,oneof" json:"total_bytes,omitempty"`
+ Cleaned uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}
-func (x *DatastoreusageDatastoreusage) Reset() {
- *x = DatastoreusageDatastoreusage{}
+func (x *AutocleanonceAutocleanExpiredinvoices) Reset() {
+ *x = AutocleanonceAutocleanExpiredinvoices{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[43]
+ mi := &file_node_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DatastoreusageDatastoreusage) String() string {
+func (x *AutocleanonceAutocleanExpiredinvoices) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DatastoreusageDatastoreusage) ProtoMessage() {}
+func (*AutocleanonceAutocleanExpiredinvoices) ProtoMessage() {}
-func (x *DatastoreusageDatastoreusage) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[43]
+func (x *AutocleanonceAutocleanExpiredinvoices) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6038,53 +5903,50 @@ func (x *DatastoreusageDatastoreusage) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DatastoreusageDatastoreusage.ProtoReflect.Descriptor instead.
-func (*DatastoreusageDatastoreusage) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{43}
+// Deprecated: Use AutocleanonceAutocleanExpiredinvoices.ProtoReflect.Descriptor instead.
+func (*AutocleanonceAutocleanExpiredinvoices) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{33}
}
-func (x *DatastoreusageDatastoreusage) GetKey() string {
- if x != nil && x.Key != nil {
- return *x.Key
+func (x *AutocleanonceAutocleanExpiredinvoices) GetCleaned() uint64 {
+ if x != nil {
+ return x.Cleaned
}
- return ""
+ return 0
}
-func (x *DatastoreusageDatastoreusage) GetTotalBytes() uint64 {
- if x != nil && x.TotalBytes != nil {
- return *x.TotalBytes
+func (x *AutocleanonceAutocleanExpiredinvoices) GetUncleaned() uint64 {
+ if x != nil {
+ return x.Uncleaned
}
return 0
}
-type CreateonionRequest struct {
+type AutocleanstatusRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Hops []*CreateonionHops `protobuf:"bytes,1,rep,name=hops,proto3" json:"hops,omitempty"`
- Assocdata []byte `protobuf:"bytes,2,opt,name=assocdata,proto3" json:"assocdata,omitempty"`
- SessionKey []byte `protobuf:"bytes,3,opt,name=session_key,json=sessionKey,proto3,oneof" json:"session_key,omitempty"`
- OnionSize *uint32 `protobuf:"varint,4,opt,name=onion_size,json=onionSize,proto3,oneof" json:"onion_size,omitempty"`
+ Subsystem *AutocleanSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.AutocleanSubsystem,oneof" json:"subsystem,omitempty"`
}
-func (x *CreateonionRequest) Reset() {
- *x = CreateonionRequest{}
+func (x *AutocleanstatusRequest) Reset() {
+ *x = AutocleanstatusRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[44]
+ mi := &file_node_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateonionRequest) String() string {
+func (x *AutocleanstatusRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateonionRequest) ProtoMessage() {}
+func (*AutocleanstatusRequest) ProtoMessage() {}
-func (x *CreateonionRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[44]
+func (x *AutocleanstatusRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6095,65 +5957,43 @@ func (x *CreateonionRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateonionRequest.ProtoReflect.Descriptor instead.
-func (*CreateonionRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{44}
-}
-
-func (x *CreateonionRequest) GetHops() []*CreateonionHops {
- if x != nil {
- return x.Hops
- }
- return nil
-}
-
-func (x *CreateonionRequest) GetAssocdata() []byte {
- if x != nil {
- return x.Assocdata
- }
- return nil
-}
-
-func (x *CreateonionRequest) GetSessionKey() []byte {
- if x != nil {
- return x.SessionKey
- }
- return nil
+// Deprecated: Use AutocleanstatusRequest.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{34}
}
-func (x *CreateonionRequest) GetOnionSize() uint32 {
- if x != nil && x.OnionSize != nil {
- return *x.OnionSize
+func (x *AutocleanstatusRequest) GetSubsystem() AutocleanSubsystem {
+ if x != nil && x.Subsystem != nil {
+ return *x.Subsystem
}
- return 0
+ return AutocleanSubsystem_SUCCEEDEDFORWARDS
}
-type CreateonionResponse struct {
+type AutocleanstatusResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Onion []byte `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
- SharedSecrets [][]byte `protobuf:"bytes,2,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
+ Autoclean *AutocleanstatusAutoclean `protobuf:"bytes,1,opt,name=autoclean,proto3" json:"autoclean,omitempty"`
}
-func (x *CreateonionResponse) Reset() {
- *x = CreateonionResponse{}
+func (x *AutocleanstatusResponse) Reset() {
+ *x = AutocleanstatusResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[45]
+ mi := &file_node_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateonionResponse) String() string {
+func (x *AutocleanstatusResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateonionResponse) ProtoMessage() {}
+func (*AutocleanstatusResponse) ProtoMessage() {}
-func (x *CreateonionResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[45]
+func (x *AutocleanstatusResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6164,51 +6004,48 @@ func (x *CreateonionResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateonionResponse.ProtoReflect.Descriptor instead.
-func (*CreateonionResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{45}
-}
-
-func (x *CreateonionResponse) GetOnion() []byte {
- if x != nil {
- return x.Onion
- }
- return nil
+// Deprecated: Use AutocleanstatusResponse.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{35}
}
-func (x *CreateonionResponse) GetSharedSecrets() [][]byte {
+func (x *AutocleanstatusResponse) GetAutoclean() *AutocleanstatusAutoclean {
if x != nil {
- return x.SharedSecrets
+ return x.Autoclean
}
return nil
}
-type CreateonionHops struct {
+type AutocleanstatusAutoclean struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Pubkey []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
- Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
+ Succeededforwards *AutocleanstatusAutocleanSucceededforwards `protobuf:"bytes,1,opt,name=succeededforwards,proto3,oneof" json:"succeededforwards,omitempty"`
+ Failedforwards *AutocleanstatusAutocleanFailedforwards `protobuf:"bytes,2,opt,name=failedforwards,proto3,oneof" json:"failedforwards,omitempty"`
+ Succeededpays *AutocleanstatusAutocleanSucceededpays `protobuf:"bytes,3,opt,name=succeededpays,proto3,oneof" json:"succeededpays,omitempty"`
+ Failedpays *AutocleanstatusAutocleanFailedpays `protobuf:"bytes,4,opt,name=failedpays,proto3,oneof" json:"failedpays,omitempty"`
+ Paidinvoices *AutocleanstatusAutocleanPaidinvoices `protobuf:"bytes,5,opt,name=paidinvoices,proto3,oneof" json:"paidinvoices,omitempty"`
+ Expiredinvoices *AutocleanstatusAutocleanExpiredinvoices `protobuf:"bytes,6,opt,name=expiredinvoices,proto3,oneof" json:"expiredinvoices,omitempty"`
}
-func (x *CreateonionHops) Reset() {
- *x = CreateonionHops{}
+func (x *AutocleanstatusAutoclean) Reset() {
+ *x = AutocleanstatusAutoclean{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[46]
+ mi := &file_node_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *CreateonionHops) String() string {
+func (x *AutocleanstatusAutoclean) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*CreateonionHops) ProtoMessage() {}
+func (*AutocleanstatusAutoclean) ProtoMessage() {}
-func (x *CreateonionHops) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[46]
+func (x *AutocleanstatusAutoclean) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6219,51 +6056,80 @@ func (x *CreateonionHops) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use CreateonionHops.ProtoReflect.Descriptor instead.
-func (*CreateonionHops) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{46}
+// Deprecated: Use AutocleanstatusAutoclean.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutoclean) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{36}
}
-func (x *CreateonionHops) GetPubkey() []byte {
+func (x *AutocleanstatusAutoclean) GetSucceededforwards() *AutocleanstatusAutocleanSucceededforwards {
if x != nil {
- return x.Pubkey
+ return x.Succeededforwards
}
return nil
}
-func (x *CreateonionHops) GetPayload() []byte {
+func (x *AutocleanstatusAutoclean) GetFailedforwards() *AutocleanstatusAutocleanFailedforwards {
if x != nil {
- return x.Payload
+ return x.Failedforwards
}
return nil
}
-type DeldatastoreRequest struct {
+func (x *AutocleanstatusAutoclean) GetSucceededpays() *AutocleanstatusAutocleanSucceededpays {
+ if x != nil {
+ return x.Succeededpays
+ }
+ return nil
+}
+
+func (x *AutocleanstatusAutoclean) GetFailedpays() *AutocleanstatusAutocleanFailedpays {
+ if x != nil {
+ return x.Failedpays
+ }
+ return nil
+}
+
+func (x *AutocleanstatusAutoclean) GetPaidinvoices() *AutocleanstatusAutocleanPaidinvoices {
+ if x != nil {
+ return x.Paidinvoices
+ }
+ return nil
+}
+
+func (x *AutocleanstatusAutoclean) GetExpiredinvoices() *AutocleanstatusAutocleanExpiredinvoices {
+ if x != nil {
+ return x.Expiredinvoices
+ }
+ return nil
+}
+
+type AutocleanstatusAutocleanSucceededforwards struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,3,rep,name=key,proto3" json:"key,omitempty"`
- Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DeldatastoreRequest) Reset() {
- *x = DeldatastoreRequest{}
+func (x *AutocleanstatusAutocleanSucceededforwards) Reset() {
+ *x = AutocleanstatusAutocleanSucceededforwards{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[47]
+ mi := &file_node_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DeldatastoreRequest) String() string {
+func (x *AutocleanstatusAutocleanSucceededforwards) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DeldatastoreRequest) ProtoMessage() {}
+func (*AutocleanstatusAutocleanSucceededforwards) ProtoMessage() {}
-func (x *DeldatastoreRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[47]
+func (x *AutocleanstatusAutocleanSucceededforwards) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6274,53 +6140,59 @@ func (x *DeldatastoreRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DeldatastoreRequest.ProtoReflect.Descriptor instead.
-func (*DeldatastoreRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{47}
+// Deprecated: Use AutocleanstatusAutocleanSucceededforwards.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanSucceededforwards) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{37}
}
-func (x *DeldatastoreRequest) GetKey() []string {
+func (x *AutocleanstatusAutocleanSucceededforwards) GetEnabled() bool {
if x != nil {
- return x.Key
+ return x.Enabled
}
- return nil
+ return false
}
-func (x *DeldatastoreRequest) GetGeneration() uint64 {
- if x != nil && x.Generation != nil {
- return *x.Generation
+func (x *AutocleanstatusAutocleanSucceededforwards) GetCleaned() uint64 {
+ if x != nil {
+ return x.Cleaned
}
return 0
}
-type DeldatastoreResponse struct {
+func (x *AutocleanstatusAutocleanSucceededforwards) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
+ }
+ return 0
+}
+
+type AutocleanstatusAutocleanFailedforwards struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
- Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
- Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
- String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DeldatastoreResponse) Reset() {
- *x = DeldatastoreResponse{}
+func (x *AutocleanstatusAutocleanFailedforwards) Reset() {
+ *x = AutocleanstatusAutocleanFailedforwards{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[48]
+ mi := &file_node_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DeldatastoreResponse) String() string {
+func (x *AutocleanstatusAutocleanFailedforwards) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DeldatastoreResponse) ProtoMessage() {}
+func (*AutocleanstatusAutocleanFailedforwards) ProtoMessage() {}
-func (x *DeldatastoreResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[48]
+func (x *AutocleanstatusAutocleanFailedforwards) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6331,64 +6203,59 @@ func (x *DeldatastoreResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DeldatastoreResponse.ProtoReflect.Descriptor instead.
-func (*DeldatastoreResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{48}
+// Deprecated: Use AutocleanstatusAutocleanFailedforwards.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanFailedforwards) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{38}
}
-func (x *DeldatastoreResponse) GetKey() []string {
+func (x *AutocleanstatusAutocleanFailedforwards) GetEnabled() bool {
if x != nil {
- return x.Key
- }
- return nil
-}
-
-func (x *DeldatastoreResponse) GetGeneration() uint64 {
- if x != nil && x.Generation != nil {
- return *x.Generation
+ return x.Enabled
}
- return 0
+ return false
}
-func (x *DeldatastoreResponse) GetHex() []byte {
+func (x *AutocleanstatusAutocleanFailedforwards) GetCleaned() uint64 {
if x != nil {
- return x.Hex
+ return x.Cleaned
}
- return nil
+ return 0
}
-func (x *DeldatastoreResponse) GetString_() string {
- if x != nil && x.String_ != nil {
- return *x.String_
+func (x *AutocleanstatusAutocleanFailedforwards) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
}
- return ""
+ return 0
}
-type DelexpiredinvoiceRequest struct {
+type AutocleanstatusAutocleanSucceededpays struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Maxexpirytime *uint64 `protobuf:"varint,1,opt,name=maxexpirytime,proto3,oneof" json:"maxexpirytime,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DelexpiredinvoiceRequest) Reset() {
- *x = DelexpiredinvoiceRequest{}
+func (x *AutocleanstatusAutocleanSucceededpays) Reset() {
+ *x = AutocleanstatusAutocleanSucceededpays{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[49]
+ mi := &file_node_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DelexpiredinvoiceRequest) String() string {
+func (x *AutocleanstatusAutocleanSucceededpays) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DelexpiredinvoiceRequest) ProtoMessage() {}
+func (*AutocleanstatusAutocleanSucceededpays) ProtoMessage() {}
-func (x *DelexpiredinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[49]
+func (x *AutocleanstatusAutocleanSucceededpays) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6399,41 +6266,59 @@ func (x *DelexpiredinvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DelexpiredinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*DelexpiredinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{49}
+// Deprecated: Use AutocleanstatusAutocleanSucceededpays.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanSucceededpays) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{39}
+}
+
+func (x *AutocleanstatusAutocleanSucceededpays) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+func (x *AutocleanstatusAutocleanSucceededpays) GetCleaned() uint64 {
+ if x != nil {
+ return x.Cleaned
+ }
+ return 0
}
-func (x *DelexpiredinvoiceRequest) GetMaxexpirytime() uint64 {
- if x != nil && x.Maxexpirytime != nil {
- return *x.Maxexpirytime
+func (x *AutocleanstatusAutocleanSucceededpays) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
}
return 0
}
-type DelexpiredinvoiceResponse struct {
+type AutocleanstatusAutocleanFailedpays struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DelexpiredinvoiceResponse) Reset() {
- *x = DelexpiredinvoiceResponse{}
+func (x *AutocleanstatusAutocleanFailedpays) Reset() {
+ *x = AutocleanstatusAutocleanFailedpays{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[50]
+ mi := &file_node_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DelexpiredinvoiceResponse) String() string {
+func (x *AutocleanstatusAutocleanFailedpays) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DelexpiredinvoiceResponse) ProtoMessage() {}
+func (*AutocleanstatusAutocleanFailedpays) ProtoMessage() {}
-func (x *DelexpiredinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[50]
+func (x *AutocleanstatusAutocleanFailedpays) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6444,38 +6329,59 @@ func (x *DelexpiredinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DelexpiredinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*DelexpiredinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{50}
+// Deprecated: Use AutocleanstatusAutocleanFailedpays.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanFailedpays) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{40}
}
-type DelinvoiceRequest struct {
+func (x *AutocleanstatusAutocleanFailedpays) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+func (x *AutocleanstatusAutocleanFailedpays) GetCleaned() uint64 {
+ if x != nil {
+ return x.Cleaned
+ }
+ return 0
+}
+
+func (x *AutocleanstatusAutocleanFailedpays) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
+ }
+ return 0
+}
+
+type AutocleanstatusAutocleanPaidinvoices struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Status DelinvoiceRequest_DelinvoiceStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.DelinvoiceRequest_DelinvoiceStatus" json:"status,omitempty"`
- Desconly *bool `protobuf:"varint,3,opt,name=desconly,proto3,oneof" json:"desconly,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DelinvoiceRequest) Reset() {
- *x = DelinvoiceRequest{}
+func (x *AutocleanstatusAutocleanPaidinvoices) Reset() {
+ *x = AutocleanstatusAutocleanPaidinvoices{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[51]
+ mi := &file_node_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DelinvoiceRequest) String() string {
+func (x *AutocleanstatusAutocleanPaidinvoices) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DelinvoiceRequest) ProtoMessage() {}
+func (*AutocleanstatusAutocleanPaidinvoices) ProtoMessage() {}
-func (x *DelinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[51]
+func (x *AutocleanstatusAutocleanPaidinvoices) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6486,68 +6392,59 @@ func (x *DelinvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DelinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*DelinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{51}
+// Deprecated: Use AutocleanstatusAutocleanPaidinvoices.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanPaidinvoices) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{41}
}
-func (x *DelinvoiceRequest) GetLabel() string {
+func (x *AutocleanstatusAutocleanPaidinvoices) GetEnabled() bool {
if x != nil {
- return x.Label
+ return x.Enabled
}
- return ""
+ return false
}
-func (x *DelinvoiceRequest) GetStatus() DelinvoiceRequest_DelinvoiceStatus {
+func (x *AutocleanstatusAutocleanPaidinvoices) GetCleaned() uint64 {
if x != nil {
- return x.Status
+ return x.Cleaned
}
- return DelinvoiceRequest_PAID
+ return 0
}
-func (x *DelinvoiceRequest) GetDesconly() bool {
- if x != nil && x.Desconly != nil {
- return *x.Desconly
+func (x *AutocleanstatusAutocleanPaidinvoices) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
}
- return false
+ return 0
}
-type DelinvoiceResponse struct {
+type AutocleanstatusAutocleanExpiredinvoices struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Bolt11 *string `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Description *string `protobuf:"bytes,5,opt,name=description,proto3,oneof" json:"description,omitempty"`
- PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- Status DelinvoiceResponse_DelinvoiceStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.DelinvoiceResponse_DelinvoiceStatus" json:"status,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- LocalOfferId []byte `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
- InvreqPayerNote *string `protobuf:"bytes,11,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Cleaned uint64 `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
+ Age *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}
-func (x *DelinvoiceResponse) Reset() {
- *x = DelinvoiceResponse{}
+func (x *AutocleanstatusAutocleanExpiredinvoices) Reset() {
+ *x = AutocleanstatusAutocleanExpiredinvoices{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[52]
+ mi := &file_node_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DelinvoiceResponse) String() string {
+func (x *AutocleanstatusAutocleanExpiredinvoices) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DelinvoiceResponse) ProtoMessage() {}
+func (*AutocleanstatusAutocleanExpiredinvoices) ProtoMessage() {}
-func (x *DelinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[52]
+func (x *AutocleanstatusAutocleanExpiredinvoices) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6558,127 +6455,59 @@ func (x *DelinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DelinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*DelinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{52}
-}
-
-func (x *DelinvoiceResponse) GetLabel() string {
- if x != nil {
- return x.Label
- }
- return ""
-}
-
-func (x *DelinvoiceResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
-}
-
-func (x *DelinvoiceResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
- }
- return ""
+// Deprecated: Use AutocleanstatusAutocleanExpiredinvoices.ProtoReflect.Descriptor instead.
+func (*AutocleanstatusAutocleanExpiredinvoices) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{42}
}
-func (x *DelinvoiceResponse) GetAmountMsat() *Amount {
+func (x *AutocleanstatusAutocleanExpiredinvoices) GetEnabled() bool {
if x != nil {
- return x.AmountMsat
- }
- return nil
-}
-
-func (x *DelinvoiceResponse) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+ return x.Enabled
}
- return ""
+ return false
}
-func (x *DelinvoiceResponse) GetPaymentHash() []byte {
+func (x *AutocleanstatusAutocleanExpiredinvoices) GetCleaned() uint64 {
if x != nil {
- return x.PaymentHash
- }
- return nil
-}
-
-func (x *DelinvoiceResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
-}
-
-func (x *DelinvoiceResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
+ return x.Cleaned
}
return 0
}
-func (x *DelinvoiceResponse) GetStatus() DelinvoiceResponse_DelinvoiceStatus {
- if x != nil {
- return x.Status
- }
- return DelinvoiceResponse_PAID
-}
-
-func (x *DelinvoiceResponse) GetExpiresAt() uint64 {
- if x != nil {
- return x.ExpiresAt
+func (x *AutocleanstatusAutocleanExpiredinvoices) GetAge() uint64 {
+ if x != nil && x.Age != nil {
+ return *x.Age
}
return 0
}
-func (x *DelinvoiceResponse) GetLocalOfferId() []byte {
- if x != nil {
- return x.LocalOfferId
- }
- return nil
-}
-
-func (x *DelinvoiceResponse) GetInvreqPayerNote() string {
- if x != nil && x.InvreqPayerNote != nil {
- return *x.InvreqPayerNote
- }
- return ""
-}
-
-type InvoiceRequest struct {
+type CheckmessageRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- AmountMsat *AmountOrAny `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
- Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"`
- Expiry *uint64 `protobuf:"varint,7,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
- Fallbacks []string `protobuf:"bytes,4,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
- Preimage []byte `protobuf:"bytes,5,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
- Cltv *uint32 `protobuf:"varint,6,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
- Deschashonly *bool `protobuf:"varint,9,opt,name=deschashonly,proto3,oneof" json:"deschashonly,omitempty"`
+ Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
+ Zbase string `protobuf:"bytes,2,opt,name=zbase,proto3" json:"zbase,omitempty"`
+ Pubkey []byte `protobuf:"bytes,3,opt,name=pubkey,proto3,oneof" json:"pubkey,omitempty"`
}
-func (x *InvoiceRequest) Reset() {
- *x = InvoiceRequest{}
+func (x *CheckmessageRequest) Reset() {
+ *x = CheckmessageRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[53]
+ mi := &file_node_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *InvoiceRequest) String() string {
+func (x *CheckmessageRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*InvoiceRequest) ProtoMessage() {}
+func (*CheckmessageRequest) ProtoMessage() {}
-func (x *InvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[53]
+func (x *CheckmessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[43]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6689,101 +6518,58 @@ func (x *InvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use InvoiceRequest.ProtoReflect.Descriptor instead.
-func (*InvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{53}
-}
-
-func (x *InvoiceRequest) GetAmountMsat() *AmountOrAny {
- if x != nil {
- return x.AmountMsat
- }
- return nil
+// Deprecated: Use CheckmessageRequest.ProtoReflect.Descriptor instead.
+func (*CheckmessageRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{43}
}
-func (x *InvoiceRequest) GetDescription() string {
+func (x *CheckmessageRequest) GetMessage() string {
if x != nil {
- return x.Description
+ return x.Message
}
return ""
}
-func (x *InvoiceRequest) GetLabel() string {
+func (x *CheckmessageRequest) GetZbase() string {
if x != nil {
- return x.Label
+ return x.Zbase
}
return ""
}
-func (x *InvoiceRequest) GetExpiry() uint64 {
- if x != nil && x.Expiry != nil {
- return *x.Expiry
- }
- return 0
-}
-
-func (x *InvoiceRequest) GetFallbacks() []string {
- if x != nil {
- return x.Fallbacks
- }
- return nil
-}
-
-func (x *InvoiceRequest) GetPreimage() []byte {
+func (x *CheckmessageRequest) GetPubkey() []byte {
if x != nil {
- return x.Preimage
+ return x.Pubkey
}
return nil
}
-func (x *InvoiceRequest) GetCltv() uint32 {
- if x != nil && x.Cltv != nil {
- return *x.Cltv
- }
- return 0
-}
-
-func (x *InvoiceRequest) GetDeschashonly() bool {
- if x != nil && x.Deschashonly != nil {
- return *x.Deschashonly
- }
- return false
-}
-
-type InvoiceResponse struct {
+type CheckmessageResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- PaymentSecret []byte `protobuf:"bytes,3,opt,name=payment_secret,json=paymentSecret,proto3" json:"payment_secret,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,10,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- WarningCapacity *string `protobuf:"bytes,5,opt,name=warning_capacity,json=warningCapacity,proto3,oneof" json:"warning_capacity,omitempty"`
- WarningOffline *string `protobuf:"bytes,6,opt,name=warning_offline,json=warningOffline,proto3,oneof" json:"warning_offline,omitempty"`
- WarningDeadends *string `protobuf:"bytes,7,opt,name=warning_deadends,json=warningDeadends,proto3,oneof" json:"warning_deadends,omitempty"`
- WarningPrivateUnused *string `protobuf:"bytes,8,opt,name=warning_private_unused,json=warningPrivateUnused,proto3,oneof" json:"warning_private_unused,omitempty"`
- WarningMpp *string `protobuf:"bytes,9,opt,name=warning_mpp,json=warningMpp,proto3,oneof" json:"warning_mpp,omitempty"`
+ Verified bool `protobuf:"varint,1,opt,name=verified,proto3" json:"verified,omitempty"`
+ Pubkey []byte `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
}
-func (x *InvoiceResponse) Reset() {
- *x = InvoiceResponse{}
+func (x *CheckmessageResponse) Reset() {
+ *x = CheckmessageResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[54]
+ mi := &file_node_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *InvoiceResponse) String() string {
+func (x *CheckmessageResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*InvoiceResponse) ProtoMessage() {}
+func (*CheckmessageResponse) ProtoMessage() {}
-func (x *InvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[54]
+func (x *CheckmessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[44]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6794,106 +6580,147 @@ func (x *InvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use InvoiceResponse.ProtoReflect.Descriptor instead.
-func (*InvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{54}
-}
+// Deprecated: Use CheckmessageResponse.ProtoReflect.Descriptor instead.
+func (*CheckmessageResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{44}
+}
-func (x *InvoiceResponse) GetBolt11() string {
+func (x *CheckmessageResponse) GetVerified() bool {
if x != nil {
- return x.Bolt11
+ return x.Verified
}
- return ""
+ return false
}
-func (x *InvoiceResponse) GetPaymentHash() []byte {
+func (x *CheckmessageResponse) GetPubkey() []byte {
if x != nil {
- return x.PaymentHash
+ return x.Pubkey
}
return nil
}
-func (x *InvoiceResponse) GetPaymentSecret() []byte {
- if x != nil {
- return x.PaymentSecret
+type CloseRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Unilateraltimeout *uint32 `protobuf:"varint,2,opt,name=unilateraltimeout,proto3,oneof" json:"unilateraltimeout,omitempty"`
+ Destination *string `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ FeeNegotiationStep *string `protobuf:"bytes,4,opt,name=fee_negotiation_step,json=feeNegotiationStep,proto3,oneof" json:"fee_negotiation_step,omitempty"`
+ WrongFunding *Outpoint `protobuf:"bytes,5,opt,name=wrong_funding,json=wrongFunding,proto3,oneof" json:"wrong_funding,omitempty"`
+ ForceLeaseClosed *bool `protobuf:"varint,6,opt,name=force_lease_closed,json=forceLeaseClosed,proto3,oneof" json:"force_lease_closed,omitempty"`
+ Feerange []*Feerate `protobuf:"bytes,7,rep,name=feerange,proto3" json:"feerange,omitempty"`
+}
+
+func (x *CloseRequest) Reset() {
+ *x = CloseRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *InvoiceResponse) GetExpiresAt() uint64 {
+func (x *CloseRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CloseRequest) ProtoMessage() {}
+
+func (x *CloseRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[45]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CloseRequest.ProtoReflect.Descriptor instead.
+func (*CloseRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{45}
+}
+
+func (x *CloseRequest) GetId() string {
if x != nil {
- return x.ExpiresAt
+ return x.Id
}
- return 0
+ return ""
}
-func (x *InvoiceResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
+func (x *CloseRequest) GetUnilateraltimeout() uint32 {
+ if x != nil && x.Unilateraltimeout != nil {
+ return *x.Unilateraltimeout
}
return 0
}
-func (x *InvoiceResponse) GetWarningCapacity() string {
- if x != nil && x.WarningCapacity != nil {
- return *x.WarningCapacity
+func (x *CloseRequest) GetDestination() string {
+ if x != nil && x.Destination != nil {
+ return *x.Destination
}
return ""
}
-func (x *InvoiceResponse) GetWarningOffline() string {
- if x != nil && x.WarningOffline != nil {
- return *x.WarningOffline
+func (x *CloseRequest) GetFeeNegotiationStep() string {
+ if x != nil && x.FeeNegotiationStep != nil {
+ return *x.FeeNegotiationStep
}
return ""
}
-func (x *InvoiceResponse) GetWarningDeadends() string {
- if x != nil && x.WarningDeadends != nil {
- return *x.WarningDeadends
+func (x *CloseRequest) GetWrongFunding() *Outpoint {
+ if x != nil {
+ return x.WrongFunding
}
- return ""
+ return nil
}
-func (x *InvoiceResponse) GetWarningPrivateUnused() string {
- if x != nil && x.WarningPrivateUnused != nil {
- return *x.WarningPrivateUnused
+func (x *CloseRequest) GetForceLeaseClosed() bool {
+ if x != nil && x.ForceLeaseClosed != nil {
+ return *x.ForceLeaseClosed
}
- return ""
+ return false
}
-func (x *InvoiceResponse) GetWarningMpp() string {
- if x != nil && x.WarningMpp != nil {
- return *x.WarningMpp
+func (x *CloseRequest) GetFeerange() []*Feerate {
+ if x != nil {
+ return x.Feerange
}
- return ""
+ return nil
}
-type ListdatastoreRequest struct {
+type CloseResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,2,rep,name=key,proto3" json:"key,omitempty"`
+ ItemType CloseResponse_CloseType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.CloseResponse_CloseType" json:"item_type,omitempty"`
+ Tx []byte `protobuf:"bytes,2,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
}
-func (x *ListdatastoreRequest) Reset() {
- *x = ListdatastoreRequest{}
+func (x *CloseResponse) Reset() {
+ *x = CloseResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[55]
+ mi := &file_node_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListdatastoreRequest) String() string {
+func (x *CloseResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListdatastoreRequest) ProtoMessage() {}
+func (*CloseResponse) ProtoMessage() {}
-func (x *ListdatastoreRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[55]
+func (x *CloseResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[46]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6904,43 +6731,59 @@ func (x *ListdatastoreRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListdatastoreRequest.ProtoReflect.Descriptor instead.
-func (*ListdatastoreRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{55}
+// Deprecated: Use CloseResponse.ProtoReflect.Descriptor instead.
+func (*CloseResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{46}
}
-func (x *ListdatastoreRequest) GetKey() []string {
+func (x *CloseResponse) GetItemType() CloseResponse_CloseType {
if x != nil {
- return x.Key
+ return x.ItemType
+ }
+ return CloseResponse_MUTUAL
+}
+
+func (x *CloseResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
}
return nil
}
-type ListdatastoreResponse struct {
+func (x *CloseResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+type ConnectRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Datastore []*ListdatastoreDatastore `protobuf:"bytes,1,rep,name=datastore,proto3" json:"datastore,omitempty"`
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Host *string `protobuf:"bytes,2,opt,name=host,proto3,oneof" json:"host,omitempty"`
+ Port *uint32 `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
}
-func (x *ListdatastoreResponse) Reset() {
- *x = ListdatastoreResponse{}
+func (x *ConnectRequest) Reset() {
+ *x = ConnectRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[56]
+ mi := &file_node_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListdatastoreResponse) String() string {
+func (x *ConnectRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListdatastoreResponse) ProtoMessage() {}
+func (*ConnectRequest) ProtoMessage() {}
-func (x *ListdatastoreResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[56]
+func (x *ConnectRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[47]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6951,46 +6794,60 @@ func (x *ListdatastoreResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListdatastoreResponse.ProtoReflect.Descriptor instead.
-func (*ListdatastoreResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{56}
+// Deprecated: Use ConnectRequest.ProtoReflect.Descriptor instead.
+func (*ConnectRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{47}
}
-func (x *ListdatastoreResponse) GetDatastore() []*ListdatastoreDatastore {
+func (x *ConnectRequest) GetId() string {
if x != nil {
- return x.Datastore
+ return x.Id
}
- return nil
+ return ""
}
-type ListdatastoreDatastore struct {
+func (x *ConnectRequest) GetHost() string {
+ if x != nil && x.Host != nil {
+ return *x.Host
+ }
+ return ""
+}
+
+func (x *ConnectRequest) GetPort() uint32 {
+ if x != nil && x.Port != nil {
+ return *x.Port
+ }
+ return 0
+}
+
+type ConnectResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Key []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
- Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
- Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
- String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Features []byte `protobuf:"bytes,2,opt,name=features,proto3" json:"features,omitempty"`
+ Direction ConnectResponse_ConnectDirection `protobuf:"varint,3,opt,name=direction,proto3,enum=cln.ConnectResponse_ConnectDirection" json:"direction,omitempty"`
+ Address *ConnectAddress `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
}
-func (x *ListdatastoreDatastore) Reset() {
- *x = ListdatastoreDatastore{}
+func (x *ConnectResponse) Reset() {
+ *x = ConnectResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[57]
+ mi := &file_node_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListdatastoreDatastore) String() string {
+func (x *ConnectResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListdatastoreDatastore) ProtoMessage() {}
+func (*ConnectResponse) ProtoMessage() {}
-func (x *ListdatastoreDatastore) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[57]
+func (x *ConnectResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[48]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7001,70 +6858,67 @@ func (x *ListdatastoreDatastore) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListdatastoreDatastore.ProtoReflect.Descriptor instead.
-func (*ListdatastoreDatastore) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{57}
+// Deprecated: Use ConnectResponse.ProtoReflect.Descriptor instead.
+func (*ConnectResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{48}
}
-func (x *ListdatastoreDatastore) GetKey() []string {
+func (x *ConnectResponse) GetId() []byte {
if x != nil {
- return x.Key
+ return x.Id
}
return nil
}
-func (x *ListdatastoreDatastore) GetGeneration() uint64 {
- if x != nil && x.Generation != nil {
- return *x.Generation
+func (x *ConnectResponse) GetFeatures() []byte {
+ if x != nil {
+ return x.Features
}
- return 0
+ return nil
}
-func (x *ListdatastoreDatastore) GetHex() []byte {
+func (x *ConnectResponse) GetDirection() ConnectResponse_ConnectDirection {
if x != nil {
- return x.Hex
+ return x.Direction
}
- return nil
+ return ConnectResponse_IN
}
-func (x *ListdatastoreDatastore) GetString_() string {
- if x != nil && x.String_ != nil {
- return *x.String_
+func (x *ConnectResponse) GetAddress() *ConnectAddress {
+ if x != nil {
+ return x.Address
}
- return ""
+ return nil
}
-type ListinvoicesRequest struct {
+type ConnectAddress struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label *string `protobuf:"bytes,1,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Invstring *string `protobuf:"bytes,2,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- OfferId *string `protobuf:"bytes,4,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
- Index *ListinvoicesRequest_ListinvoicesIndex `protobuf:"varint,5,opt,name=index,proto3,enum=cln.ListinvoicesRequest_ListinvoicesIndex,oneof" json:"index,omitempty"`
- Start *uint64 `protobuf:"varint,6,opt,name=start,proto3,oneof" json:"start,omitempty"`
- Limit *uint32 `protobuf:"varint,7,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
+ ItemType ConnectAddress_ConnectAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ConnectAddress_ConnectAddressType" json:"item_type,omitempty"`
+ Socket *string `protobuf:"bytes,2,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
+ Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Port *uint32 `protobuf:"varint,4,opt,name=port,proto3,oneof" json:"port,omitempty"`
}
-func (x *ListinvoicesRequest) Reset() {
- *x = ListinvoicesRequest{}
+func (x *ConnectAddress) Reset() {
+ *x = ConnectAddress{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[58]
+ mi := &file_node_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListinvoicesRequest) String() string {
+func (x *ConnectAddress) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListinvoicesRequest) ProtoMessage() {}
+func (*ConnectAddress) ProtoMessage() {}
-func (x *ListinvoicesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[58]
+func (x *ConnectAddress) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[49]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7075,85 +6929,66 @@ func (x *ListinvoicesRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListinvoicesRequest.ProtoReflect.Descriptor instead.
-func (*ListinvoicesRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{58}
-}
-
-func (x *ListinvoicesRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
- }
- return ""
-}
-
-func (x *ListinvoicesRequest) GetInvstring() string {
- if x != nil && x.Invstring != nil {
- return *x.Invstring
- }
- return ""
+// Deprecated: Use ConnectAddress.ProtoReflect.Descriptor instead.
+func (*ConnectAddress) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{49}
}
-func (x *ListinvoicesRequest) GetPaymentHash() []byte {
+func (x *ConnectAddress) GetItemType() ConnectAddress_ConnectAddressType {
if x != nil {
- return x.PaymentHash
+ return x.ItemType
}
- return nil
+ return ConnectAddress_LOCAL_SOCKET
}
-func (x *ListinvoicesRequest) GetOfferId() string {
- if x != nil && x.OfferId != nil {
- return *x.OfferId
+func (x *ConnectAddress) GetSocket() string {
+ if x != nil && x.Socket != nil {
+ return *x.Socket
}
return ""
}
-func (x *ListinvoicesRequest) GetIndex() ListinvoicesRequest_ListinvoicesIndex {
- if x != nil && x.Index != nil {
- return *x.Index
- }
- return ListinvoicesRequest_CREATED
-}
-
-func (x *ListinvoicesRequest) GetStart() uint64 {
- if x != nil && x.Start != nil {
- return *x.Start
+func (x *ConnectAddress) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
}
- return 0
+ return ""
}
-func (x *ListinvoicesRequest) GetLimit() uint32 {
- if x != nil && x.Limit != nil {
- return *x.Limit
+func (x *ConnectAddress) GetPort() uint32 {
+ if x != nil && x.Port != nil {
+ return *x.Port
}
return 0
}
-type ListinvoicesResponse struct {
+type CreateinvoiceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Invoices []*ListinvoicesInvoices `protobuf:"bytes,1,rep,name=invoices,proto3" json:"invoices,omitempty"`
+ Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
+ Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
+ Preimage []byte `protobuf:"bytes,3,opt,name=preimage,proto3" json:"preimage,omitempty"`
}
-func (x *ListinvoicesResponse) Reset() {
- *x = ListinvoicesResponse{}
+func (x *CreateinvoiceRequest) Reset() {
+ *x = CreateinvoiceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[59]
+ mi := &file_node_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListinvoicesResponse) String() string {
+func (x *CreateinvoiceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListinvoicesResponse) ProtoMessage() {}
+func (*CreateinvoiceRequest) ProtoMessage() {}
-func (x *ListinvoicesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[59]
+func (x *CreateinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[50]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7164,59 +6999,72 @@ func (x *ListinvoicesResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListinvoicesResponse.ProtoReflect.Descriptor instead.
-func (*ListinvoicesResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{59}
+// Deprecated: Use CreateinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*CreateinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{50}
}
-func (x *ListinvoicesResponse) GetInvoices() []*ListinvoicesInvoices {
+func (x *CreateinvoiceRequest) GetInvstring() string {
if x != nil {
- return x.Invoices
+ return x.Invstring
+ }
+ return ""
+}
+
+func (x *CreateinvoiceRequest) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *CreateinvoiceRequest) GetPreimage() []byte {
+ if x != nil {
+ return x.Preimage
}
return nil
}
-type ListinvoicesInvoices struct {
+type CreateinvoiceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status ListinvoicesInvoices_ListinvoicesInvoicesStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListinvoicesInvoices_ListinvoicesInvoicesStatus" json:"status,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- LocalOfferId []byte `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
- InvreqPayerNote *string `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- PayIndex *uint64 `protobuf:"varint,11,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
- AmountReceivedMsat *Amount `protobuf:"bytes,12,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
- PaidAt *uint64 `protobuf:"varint,13,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
- PaidOutpoint *ListinvoicesInvoicesPaidOutpoint `protobuf:"bytes,18,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,14,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,4,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Status CreateinvoiceResponse_CreateinvoiceStatus `protobuf:"varint,6,opt,name=status,proto3,enum=cln.CreateinvoiceResponse_CreateinvoiceStatus" json:"status,omitempty"`
+ Description string `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ LocalOfferId []byte `protobuf:"bytes,13,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
+ InvreqPayerNote *string `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ PaidOutpoint *CreateinvoicePaidOutpoint `protobuf:"bytes,17,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}
-func (x *ListinvoicesInvoices) Reset() {
- *x = ListinvoicesInvoices{}
+func (x *CreateinvoiceResponse) Reset() {
+ *x = CreateinvoiceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[60]
+ mi := &file_node_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListinvoicesInvoices) String() string {
+func (x *CreateinvoiceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListinvoicesInvoices) ProtoMessage() {}
+func (*CreateinvoiceResponse) ProtoMessage() {}
-func (x *ListinvoicesInvoices) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[60]
+func (x *CreateinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[51]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7227,156 +7075,149 @@ func (x *ListinvoicesInvoices) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListinvoicesInvoices.ProtoReflect.Descriptor instead.
-func (*ListinvoicesInvoices) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{60}
+// Deprecated: Use CreateinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*CreateinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{51}
}
-func (x *ListinvoicesInvoices) GetLabel() string {
+func (x *CreateinvoiceResponse) GetLabel() string {
if x != nil {
return x.Label
}
return ""
}
-func (x *ListinvoicesInvoices) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+func (x *CreateinvoiceResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
return ""
}
-func (x *ListinvoicesInvoices) GetPaymentHash() []byte {
+func (x *CreateinvoiceResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *CreateinvoiceResponse) GetPaymentHash() []byte {
if x != nil {
return x.PaymentHash
}
return nil
}
-func (x *ListinvoicesInvoices) GetStatus() ListinvoicesInvoices_ListinvoicesInvoicesStatus {
+func (x *CreateinvoiceResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *CreateinvoiceResponse) GetStatus() CreateinvoiceResponse_CreateinvoiceStatus {
if x != nil {
return x.Status
}
- return ListinvoicesInvoices_UNPAID
+ return CreateinvoiceResponse_PAID
}
-func (x *ListinvoicesInvoices) GetExpiresAt() uint64 {
+func (x *CreateinvoiceResponse) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *CreateinvoiceResponse) GetExpiresAt() uint64 {
if x != nil {
return x.ExpiresAt
}
return 0
}
-func (x *ListinvoicesInvoices) GetAmountMsat() *Amount {
+func (x *CreateinvoiceResponse) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
+ }
+ return 0
+}
+
+func (x *CreateinvoiceResponse) GetAmountReceivedMsat() *Amount {
if x != nil {
- return x.AmountMsat
+ return x.AmountReceivedMsat
}
return nil
}
-func (x *ListinvoicesInvoices) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *CreateinvoiceResponse) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
}
- return ""
+ return 0
}
-func (x *ListinvoicesInvoices) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *CreateinvoiceResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
}
- return ""
+ return nil
}
-func (x *ListinvoicesInvoices) GetLocalOfferId() []byte {
+func (x *CreateinvoiceResponse) GetLocalOfferId() []byte {
if x != nil {
return x.LocalOfferId
}
return nil
}
-func (x *ListinvoicesInvoices) GetInvreqPayerNote() string {
+func (x *CreateinvoiceResponse) GetInvreqPayerNote() string {
if x != nil && x.InvreqPayerNote != nil {
return *x.InvreqPayerNote
}
return ""
}
-func (x *ListinvoicesInvoices) GetCreatedIndex() uint64 {
+func (x *CreateinvoiceResponse) GetCreatedIndex() uint64 {
if x != nil && x.CreatedIndex != nil {
return *x.CreatedIndex
}
return 0
}
-func (x *ListinvoicesInvoices) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
+func (x *CreateinvoiceResponse) GetPaidOutpoint() *CreateinvoicePaidOutpoint {
+ if x != nil {
+ return x.PaidOutpoint
}
- return 0
+ return nil
}
-func (x *ListinvoicesInvoices) GetPayIndex() uint64 {
- if x != nil && x.PayIndex != nil {
- return *x.PayIndex
- }
- return 0
-}
-
-func (x *ListinvoicesInvoices) GetAmountReceivedMsat() *Amount {
- if x != nil {
- return x.AmountReceivedMsat
- }
- return nil
-}
-
-func (x *ListinvoicesInvoices) GetPaidAt() uint64 {
- if x != nil && x.PaidAt != nil {
- return *x.PaidAt
- }
- return 0
-}
-
-func (x *ListinvoicesInvoices) GetPaidOutpoint() *ListinvoicesInvoicesPaidOutpoint {
- if x != nil {
- return x.PaidOutpoint
- }
- return nil
-}
-
-func (x *ListinvoicesInvoices) GetPaymentPreimage() []byte {
- if x != nil {
- return x.PaymentPreimage
- }
- return nil
-}
-
-type ListinvoicesInvoicesPaidOutpoint struct {
+type CreateinvoicePaidOutpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
- Outnum *uint32 `protobuf:"varint,2,opt,name=outnum,proto3,oneof" json:"outnum,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}
-func (x *ListinvoicesInvoicesPaidOutpoint) Reset() {
- *x = ListinvoicesInvoicesPaidOutpoint{}
+func (x *CreateinvoicePaidOutpoint) Reset() {
+ *x = CreateinvoicePaidOutpoint{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[61]
+ mi := &file_node_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListinvoicesInvoicesPaidOutpoint) String() string {
+func (x *CreateinvoicePaidOutpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListinvoicesInvoicesPaidOutpoint) ProtoMessage() {}
+func (*CreateinvoicePaidOutpoint) ProtoMessage() {}
-func (x *ListinvoicesInvoicesPaidOutpoint) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[61]
+func (x *CreateinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[52]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7387,60 +7228,54 @@ func (x *ListinvoicesInvoicesPaidOutpoint) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListinvoicesInvoicesPaidOutpoint.ProtoReflect.Descriptor instead.
-func (*ListinvoicesInvoicesPaidOutpoint) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{61}
+// Deprecated: Use CreateinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
+func (*CreateinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{52}
}
-func (x *ListinvoicesInvoicesPaidOutpoint) GetTxid() []byte {
+func (x *CreateinvoicePaidOutpoint) GetTxid() []byte {
if x != nil {
return x.Txid
}
return nil
}
-func (x *ListinvoicesInvoicesPaidOutpoint) GetOutnum() uint32 {
- if x != nil && x.Outnum != nil {
- return *x.Outnum
+func (x *CreateinvoicePaidOutpoint) GetOutnum() uint32 {
+ if x != nil {
+ return x.Outnum
}
return 0
}
-type SendonionRequest struct {
+type DatastoreRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Onion []byte `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
- FirstHop *SendonionFirstHop `protobuf:"bytes,2,opt,name=first_hop,json=firstHop,proto3" json:"first_hop,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Label *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
- SharedSecrets [][]byte `protobuf:"bytes,5,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
- Partid *uint32 `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,12,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Destination []byte `protobuf:"bytes,9,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- Localinvreqid []byte `protobuf:"bytes,13,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
- Groupid *uint64 `protobuf:"varint,11,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ Hex []byte `protobuf:"bytes,2,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ Mode *DatastoreRequest_DatastoreMode `protobuf:"varint,3,opt,name=mode,proto3,enum=cln.DatastoreRequest_DatastoreMode,oneof" json:"mode,omitempty"`
+ Generation *uint64 `protobuf:"varint,4,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
+ String_ *string `protobuf:"bytes,6,opt,name=string,proto3,oneof" json:"string,omitempty"`
}
-func (x *SendonionRequest) Reset() {
- *x = SendonionRequest{}
+func (x *DatastoreRequest) Reset() {
+ *x = DatastoreRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[62]
+ mi := &file_node_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendonionRequest) String() string {
+func (x *DatastoreRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendonionRequest) ProtoMessage() {}
+func (*DatastoreRequest) ProtoMessage() {}
-func (x *SendonionRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[62]
+func (x *DatastoreRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[53]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7451,127 +7286,142 @@ func (x *SendonionRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendonionRequest.ProtoReflect.Descriptor instead.
-func (*SendonionRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{62}
+// Deprecated: Use DatastoreRequest.ProtoReflect.Descriptor instead.
+func (*DatastoreRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{53}
}
-func (x *SendonionRequest) GetOnion() []byte {
+func (x *DatastoreRequest) GetHex() []byte {
if x != nil {
- return x.Onion
+ return x.Hex
}
return nil
}
-func (x *SendonionRequest) GetFirstHop() *SendonionFirstHop {
- if x != nil {
- return x.FirstHop
+func (x *DatastoreRequest) GetMode() DatastoreRequest_DatastoreMode {
+ if x != nil && x.Mode != nil {
+ return *x.Mode
}
- return nil
+ return DatastoreRequest_MUST_CREATE
}
-func (x *SendonionRequest) GetPaymentHash() []byte {
+func (x *DatastoreRequest) GetGeneration() uint64 {
+ if x != nil && x.Generation != nil {
+ return *x.Generation
+ }
+ return 0
+}
+
+func (x *DatastoreRequest) GetKey() []string {
if x != nil {
- return x.PaymentHash
+ return x.Key
}
return nil
}
-func (x *SendonionRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *DatastoreRequest) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
}
return ""
}
-func (x *SendonionRequest) GetSharedSecrets() [][]byte {
- if x != nil {
- return x.SharedSecrets
- }
- return nil
+type DatastoreResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
}
-func (x *SendonionRequest) GetPartid() uint32 {
- if x != nil && x.Partid != nil {
- return *x.Partid
+func (x *DatastoreResponse) Reset() {
+ *x = DatastoreResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[54]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return 0
}
-func (x *SendonionRequest) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *DatastoreResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DatastoreResponse) ProtoMessage() {}
+
+func (x *DatastoreResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_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 ""
+ return mi.MessageOf(x)
}
-func (x *SendonionRequest) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+// Deprecated: Use DatastoreResponse.ProtoReflect.Descriptor instead.
+func (*DatastoreResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{54}
+}
+
+func (x *DatastoreResponse) GetGeneration() uint64 {
+ if x != nil && x.Generation != nil {
+ return *x.Generation
}
- return nil
+ return 0
}
-func (x *SendonionRequest) GetDestination() []byte {
+func (x *DatastoreResponse) GetHex() []byte {
if x != nil {
- return x.Destination
+ return x.Hex
}
return nil
}
-func (x *SendonionRequest) GetLocalinvreqid() []byte {
- if x != nil {
- return x.Localinvreqid
+func (x *DatastoreResponse) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
}
- return nil
+ return ""
}
-func (x *SendonionRequest) GetGroupid() uint64 {
- if x != nil && x.Groupid != nil {
- return *x.Groupid
+func (x *DatastoreResponse) GetKey() []string {
+ if x != nil {
+ return x.Key
}
- return 0
+ return nil
}
-type SendonionResponse struct {
+type DatastoreusageRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- CreatedIndex *uint64 `protobuf:"varint,14,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status SendonionResponse_SendonionStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.SendonionResponse_SendonionStatus" json:"status,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Destination []byte `protobuf:"bytes,5,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- CreatedAt uint64 `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- Label *string `protobuf:"bytes,8,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Bolt11 *string `protobuf:"bytes,9,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,10,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- Partid *uint64 `protobuf:"varint,13,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,15,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,11,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
- Message *string `protobuf:"bytes,12,opt,name=message,proto3,oneof" json:"message,omitempty"`
+ Key []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
}
-func (x *SendonionResponse) Reset() {
- *x = SendonionResponse{}
+func (x *DatastoreusageRequest) Reset() {
+ *x = DatastoreusageRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[63]
+ mi := &file_node_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendonionResponse) String() string {
+func (x *DatastoreusageRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendonionResponse) ProtoMessage() {}
+func (*DatastoreusageRequest) ProtoMessage() {}
-func (x *SendonionResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[63]
+func (x *DatastoreusageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[55]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7582,143 +7432,148 @@ func (x *SendonionResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendonionResponse.ProtoReflect.Descriptor instead.
-func (*SendonionResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{63}
-}
-
-func (x *SendonionResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
+// Deprecated: Use DatastoreusageRequest.ProtoReflect.Descriptor instead.
+func (*DatastoreusageRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{55}
}
-func (x *SendonionResponse) GetId() uint64 {
+func (x *DatastoreusageRequest) GetKey() []string {
if x != nil {
- return x.Id
+ return x.Key
}
- return 0
+ return nil
}
-func (x *SendonionResponse) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
+type DatastoreusageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Datastoreusage *DatastoreusageDatastoreusage `protobuf:"bytes,1,opt,name=datastoreusage,proto3" json:"datastoreusage,omitempty"`
}
-func (x *SendonionResponse) GetStatus() SendonionResponse_SendonionStatus {
- if x != nil {
- return x.Status
+func (x *DatastoreusageResponse) Reset() {
+ *x = DatastoreusageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[56]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return SendonionResponse_PENDING
}
-func (x *SendonionResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
+func (x *DatastoreusageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *SendonionResponse) GetDestination() []byte {
- if x != nil {
- return x.Destination
+func (*DatastoreusageResponse) ProtoMessage() {}
+
+func (x *DatastoreusageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_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 nil
+ return mi.MessageOf(x)
}
-func (x *SendonionResponse) GetCreatedAt() uint64 {
- if x != nil {
- return x.CreatedAt
- }
- return 0
+// Deprecated: Use DatastoreusageResponse.ProtoReflect.Descriptor instead.
+func (*DatastoreusageResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{56}
}
-func (x *SendonionResponse) GetAmountSentMsat() *Amount {
+func (x *DatastoreusageResponse) GetDatastoreusage() *DatastoreusageDatastoreusage {
if x != nil {
- return x.AmountSentMsat
+ return x.Datastoreusage
}
return nil
}
-func (x *SendonionResponse) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
- }
- return ""
+type DatastoreusageDatastoreusage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
+ TotalBytes uint64 `protobuf:"varint,2,opt,name=total_bytes,json=totalBytes,proto3" json:"total_bytes,omitempty"`
}
-func (x *SendonionResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *DatastoreusageDatastoreusage) Reset() {
+ *x = DatastoreusageDatastoreusage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[57]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *SendonionResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
- }
- return ""
+func (x *DatastoreusageDatastoreusage) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *SendonionResponse) GetPartid() uint64 {
- if x != nil && x.Partid != nil {
- return *x.Partid
+func (*DatastoreusageDatastoreusage) ProtoMessage() {}
+
+func (x *DatastoreusageDatastoreusage) ProtoReflect() protoreflect.Message {
+ mi := &file_node_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 0
+ return mi.MessageOf(x)
}
-func (x *SendonionResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
- }
- return 0
+// Deprecated: Use DatastoreusageDatastoreusage.ProtoReflect.Descriptor instead.
+func (*DatastoreusageDatastoreusage) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{57}
}
-func (x *SendonionResponse) GetPaymentPreimage() []byte {
+func (x *DatastoreusageDatastoreusage) GetKey() string {
if x != nil {
- return x.PaymentPreimage
+ return x.Key
}
- return nil
+ return ""
}
-func (x *SendonionResponse) GetMessage() string {
- if x != nil && x.Message != nil {
- return *x.Message
+func (x *DatastoreusageDatastoreusage) GetTotalBytes() uint64 {
+ if x != nil {
+ return x.TotalBytes
}
- return ""
+ return 0
}
-type SendonionFirstHop struct {
+type CreateonionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Delay uint32 `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
+ Hops []*CreateonionHops `protobuf:"bytes,1,rep,name=hops,proto3" json:"hops,omitempty"`
+ Assocdata []byte `protobuf:"bytes,2,opt,name=assocdata,proto3" json:"assocdata,omitempty"`
+ SessionKey []byte `protobuf:"bytes,3,opt,name=session_key,json=sessionKey,proto3,oneof" json:"session_key,omitempty"`
+ OnionSize *uint32 `protobuf:"varint,4,opt,name=onion_size,json=onionSize,proto3,oneof" json:"onion_size,omitempty"`
}
-func (x *SendonionFirstHop) Reset() {
- *x = SendonionFirstHop{}
+func (x *CreateonionRequest) Reset() {
+ *x = CreateonionRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[64]
+ mi := &file_node_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendonionFirstHop) String() string {
+func (x *CreateonionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendonionFirstHop) ProtoMessage() {}
+func (*CreateonionRequest) ProtoMessage() {}
-func (x *SendonionFirstHop) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[64]
+func (x *CreateonionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[58]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7729,62 +7584,65 @@ func (x *SendonionFirstHop) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendonionFirstHop.ProtoReflect.Descriptor instead.
-func (*SendonionFirstHop) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{64}
+// Deprecated: Use CreateonionRequest.ProtoReflect.Descriptor instead.
+func (*CreateonionRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{58}
}
-func (x *SendonionFirstHop) GetId() []byte {
+func (x *CreateonionRequest) GetHops() []*CreateonionHops {
if x != nil {
- return x.Id
+ return x.Hops
}
return nil
}
-func (x *SendonionFirstHop) GetAmountMsat() *Amount {
+func (x *CreateonionRequest) GetAssocdata() []byte {
if x != nil {
- return x.AmountMsat
+ return x.Assocdata
}
return nil
}
-func (x *SendonionFirstHop) GetDelay() uint32 {
+func (x *CreateonionRequest) GetSessionKey() []byte {
if x != nil {
- return x.Delay
+ return x.SessionKey
+ }
+ return nil
+}
+
+func (x *CreateonionRequest) GetOnionSize() uint32 {
+ if x != nil && x.OnionSize != nil {
+ return *x.OnionSize
}
return 0
}
-type ListsendpaysRequest struct {
+type CreateonionResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Bolt11 *string `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- Status *ListsendpaysRequest_ListsendpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListsendpaysRequest_ListsendpaysStatus,oneof" json:"status,omitempty"`
- Index *ListsendpaysRequest_ListsendpaysIndex `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListsendpaysRequest_ListsendpaysIndex,oneof" json:"index,omitempty"`
- Start *uint64 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
- Limit *uint32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
+ Onion []byte `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
+ SharedSecrets [][]byte `protobuf:"bytes,2,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
}
-func (x *ListsendpaysRequest) Reset() {
- *x = ListsendpaysRequest{}
+func (x *CreateonionResponse) Reset() {
+ *x = CreateonionResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[65]
+ mi := &file_node_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListsendpaysRequest) String() string {
+func (x *CreateonionResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListsendpaysRequest) ProtoMessage() {}
+func (*CreateonionResponse) ProtoMessage() {}
-func (x *ListsendpaysRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[65]
+func (x *CreateonionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[59]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7795,78 +7653,51 @@ func (x *ListsendpaysRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListsendpaysRequest.ProtoReflect.Descriptor instead.
-func (*ListsendpaysRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{65}
-}
-
-func (x *ListsendpaysRequest) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
+// Deprecated: Use CreateonionResponse.ProtoReflect.Descriptor instead.
+func (*CreateonionResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{59}
}
-func (x *ListsendpaysRequest) GetPaymentHash() []byte {
+func (x *CreateonionResponse) GetOnion() []byte {
if x != nil {
- return x.PaymentHash
+ return x.Onion
}
return nil
}
-func (x *ListsendpaysRequest) GetStatus() ListsendpaysRequest_ListsendpaysStatus {
- if x != nil && x.Status != nil {
- return *x.Status
- }
- return ListsendpaysRequest_PENDING
-}
-
-func (x *ListsendpaysRequest) GetIndex() ListsendpaysRequest_ListsendpaysIndex {
- if x != nil && x.Index != nil {
- return *x.Index
- }
- return ListsendpaysRequest_CREATED
-}
-
-func (x *ListsendpaysRequest) GetStart() uint64 {
- if x != nil && x.Start != nil {
- return *x.Start
- }
- return 0
-}
-
-func (x *ListsendpaysRequest) GetLimit() uint32 {
- if x != nil && x.Limit != nil {
- return *x.Limit
+func (x *CreateonionResponse) GetSharedSecrets() [][]byte {
+ if x != nil {
+ return x.SharedSecrets
}
- return 0
+ return nil
}
-type ListsendpaysResponse struct {
+type CreateonionHops struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Payments []*ListsendpaysPayments `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
+ Pubkey []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
+ Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
}
-func (x *ListsendpaysResponse) Reset() {
- *x = ListsendpaysResponse{}
+func (x *CreateonionHops) Reset() {
+ *x = CreateonionHops{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[66]
+ mi := &file_node_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListsendpaysResponse) String() string {
+func (x *CreateonionHops) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListsendpaysResponse) ProtoMessage() {}
+func (*CreateonionHops) ProtoMessage() {}
-func (x *ListsendpaysResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[66]
+func (x *CreateonionHops) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[60]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7877,59 +7708,51 @@ func (x *ListsendpaysResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListsendpaysResponse.ProtoReflect.Descriptor instead.
-func (*ListsendpaysResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{66}
+// Deprecated: Use CreateonionHops.ProtoReflect.Descriptor instead.
+func (*CreateonionHops) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{60}
}
-func (x *ListsendpaysResponse) GetPayments() []*ListsendpaysPayments {
+func (x *CreateonionHops) GetPubkey() []byte {
if x != nil {
- return x.Payments
+ return x.Pubkey
}
return nil
}
-type ListsendpaysPayments struct {
+func (x *CreateonionHops) GetPayload() []byte {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+type DeldatastoreRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
- Groupid uint64 `protobuf:"varint,2,opt,name=groupid,proto3" json:"groupid,omitempty"`
- Partid *uint64 `protobuf:"varint,15,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- Status ListsendpaysPayments_ListsendpaysPaymentsStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListsendpaysPayments_ListsendpaysPaymentsStatus" json:"status,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Bolt11 *string `protobuf:"bytes,10,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Description *string `protobuf:"bytes,14,opt,name=description,proto3,oneof" json:"description,omitempty"`
- Bolt12 *string `protobuf:"bytes,11,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
- Erroronion []byte `protobuf:"bytes,13,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
+ Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Key []string `protobuf:"bytes,3,rep,name=key,proto3" json:"key,omitempty"`
}
-func (x *ListsendpaysPayments) Reset() {
- *x = ListsendpaysPayments{}
+func (x *DeldatastoreRequest) Reset() {
+ *x = DeldatastoreRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[67]
+ mi := &file_node_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListsendpaysPayments) String() string {
+func (x *DeldatastoreRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListsendpaysPayments) ProtoMessage() {}
+func (*DeldatastoreRequest) ProtoMessage() {}
-func (x *ListsendpaysPayments) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[67]
+func (x *DeldatastoreRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[61]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7940,153 +7763,123 @@ func (x *ListsendpaysPayments) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListsendpaysPayments.ProtoReflect.Descriptor instead.
-func (*ListsendpaysPayments) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{67}
+// Deprecated: Use DeldatastoreRequest.ProtoReflect.Descriptor instead.
+func (*DeldatastoreRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{61}
}
-func (x *ListsendpaysPayments) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
+func (x *DeldatastoreRequest) GetGeneration() uint64 {
+ if x != nil && x.Generation != nil {
+ return *x.Generation
}
return 0
}
-func (x *ListsendpaysPayments) GetId() uint64 {
+func (x *DeldatastoreRequest) GetKey() []string {
if x != nil {
- return x.Id
+ return x.Key
}
- return 0
+ return nil
}
-func (x *ListsendpaysPayments) GetGroupid() uint64 {
- if x != nil {
- return x.Groupid
- }
- return 0
-}
+type DeldatastoreResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *ListsendpaysPayments) GetPartid() uint64 {
- if x != nil && x.Partid != nil {
- return *x.Partid
- }
- return 0
+ Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Key []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
}
-func (x *ListsendpaysPayments) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
+func (x *DeldatastoreResponse) Reset() {
+ *x = DeldatastoreResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[62]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *ListsendpaysPayments) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
- }
- return 0
+func (x *DeldatastoreResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListsendpaysPayments) GetStatus() ListsendpaysPayments_ListsendpaysPaymentsStatus {
- if x != nil {
- return x.Status
- }
- return ListsendpaysPayments_PENDING
-}
+func (*DeldatastoreResponse) ProtoMessage() {}
-func (x *ListsendpaysPayments) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *DeldatastoreResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_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 nil
+ return mi.MessageOf(x)
}
-func (x *ListsendpaysPayments) GetDestination() []byte {
- if x != nil {
- return x.Destination
- }
- return nil
+// Deprecated: Use DeldatastoreResponse.ProtoReflect.Descriptor instead.
+func (*DeldatastoreResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{62}
}
-func (x *ListsendpaysPayments) GetCreatedAt() uint64 {
- if x != nil {
- return x.CreatedAt
+func (x *DeldatastoreResponse) GetGeneration() uint64 {
+ if x != nil && x.Generation != nil {
+ return *x.Generation
}
return 0
}
-func (x *ListsendpaysPayments) GetAmountSentMsat() *Amount {
+func (x *DeldatastoreResponse) GetHex() []byte {
if x != nil {
- return x.AmountSentMsat
+ return x.Hex
}
return nil
}
-func (x *ListsendpaysPayments) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
- }
- return ""
-}
-
-func (x *ListsendpaysPayments) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
-}
-
-func (x *ListsendpaysPayments) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
- }
- return ""
-}
-
-func (x *ListsendpaysPayments) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *DeldatastoreResponse) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
}
return ""
}
-func (x *ListsendpaysPayments) GetPaymentPreimage() []byte {
- if x != nil {
- return x.PaymentPreimage
- }
- return nil
-}
-
-func (x *ListsendpaysPayments) GetErroronion() []byte {
+func (x *DeldatastoreResponse) GetKey() []string {
if x != nil {
- return x.Erroronion
+ return x.Key
}
return nil
}
-type ListtransactionsRequest struct {
+type DelinvoiceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Status DelinvoiceRequest_DelinvoiceStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.DelinvoiceRequest_DelinvoiceStatus" json:"status,omitempty"`
+ Desconly *bool `protobuf:"varint,3,opt,name=desconly,proto3,oneof" json:"desconly,omitempty"`
}
-func (x *ListtransactionsRequest) Reset() {
- *x = ListtransactionsRequest{}
+func (x *DelinvoiceRequest) Reset() {
+ *x = DelinvoiceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[68]
+ mi := &file_node_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListtransactionsRequest) String() string {
+func (x *DelinvoiceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListtransactionsRequest) ProtoMessage() {}
+func (*DelinvoiceRequest) ProtoMessage() {}
-func (x *ListtransactionsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[68]
+func (x *DelinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[63]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8097,36 +7890,72 @@ func (x *ListtransactionsRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListtransactionsRequest.ProtoReflect.Descriptor instead.
-func (*ListtransactionsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{68}
+// Deprecated: Use DelinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*DelinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{63}
}
-type ListtransactionsResponse struct {
+func (x *DelinvoiceRequest) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *DelinvoiceRequest) GetStatus() DelinvoiceRequest_DelinvoiceStatus {
+ if x != nil {
+ return x.Status
+ }
+ return DelinvoiceRequest_PAID
+}
+
+func (x *DelinvoiceRequest) GetDesconly() bool {
+ if x != nil && x.Desconly != nil {
+ return *x.Desconly
+ }
+ return false
+}
+
+type DelinvoiceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Transactions []*ListtransactionsTransactions `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"`
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Description *string `protobuf:"bytes,5,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status DelinvoiceResponse_DelinvoiceStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.DelinvoiceResponse_DelinvoiceStatus" json:"status,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ LocalOfferId []byte `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
+ InvreqPayerNote *string `protobuf:"bytes,11,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,14,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,15,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,16,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,17,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
}
-func (x *ListtransactionsResponse) Reset() {
- *x = ListtransactionsResponse{}
+func (x *DelinvoiceResponse) Reset() {
+ *x = DelinvoiceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[69]
+ mi := &file_node_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListtransactionsResponse) String() string {
+func (x *DelinvoiceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListtransactionsResponse) ProtoMessage() {}
+func (*DelinvoiceResponse) ProtoMessage() {}
-func (x *ListtransactionsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[69]
+func (x *DelinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[64]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8137,148 +7966,151 @@ func (x *ListtransactionsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListtransactionsResponse.ProtoReflect.Descriptor instead.
-func (*ListtransactionsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{69}
+// Deprecated: Use DelinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*DelinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{64}
}
-func (x *ListtransactionsResponse) GetTransactions() []*ListtransactionsTransactions {
+func (x *DelinvoiceResponse) GetLabel() string {
if x != nil {
- return x.Transactions
+ return x.Label
}
- return nil
+ return ""
}
-type ListtransactionsTransactions struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
- Rawtx []byte `protobuf:"bytes,2,opt,name=rawtx,proto3" json:"rawtx,omitempty"`
- Blockheight uint32 `protobuf:"varint,3,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
- Txindex uint32 `protobuf:"varint,4,opt,name=txindex,proto3" json:"txindex,omitempty"`
- Locktime uint32 `protobuf:"varint,7,opt,name=locktime,proto3" json:"locktime,omitempty"`
- Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
- Inputs []*ListtransactionsTransactionsInputs `protobuf:"bytes,9,rep,name=inputs,proto3" json:"inputs,omitempty"`
- Outputs []*ListtransactionsTransactionsOutputs `protobuf:"bytes,10,rep,name=outputs,proto3" json:"outputs,omitempty"`
-}
-
-func (x *ListtransactionsTransactions) Reset() {
- *x = ListtransactionsTransactions{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[70]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DelinvoiceResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
+ return ""
}
-func (x *ListtransactionsTransactions) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DelinvoiceResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
}
-func (*ListtransactionsTransactions) ProtoMessage() {}
-
-func (x *ListtransactionsTransactions) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[70]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DelinvoiceResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use ListtransactionsTransactions.ProtoReflect.Descriptor instead.
-func (*ListtransactionsTransactions) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{70}
+func (x *DelinvoiceResponse) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
}
-func (x *ListtransactionsTransactions) GetHash() []byte {
+func (x *DelinvoiceResponse) GetPaymentHash() []byte {
if x != nil {
- return x.Hash
+ return x.PaymentHash
}
return nil
}
-func (x *ListtransactionsTransactions) GetRawtx() []byte {
+func (x *DelinvoiceResponse) GetStatus() DelinvoiceResponse_DelinvoiceStatus {
if x != nil {
- return x.Rawtx
+ return x.Status
}
- return nil
+ return DelinvoiceResponse_PAID
}
-func (x *ListtransactionsTransactions) GetBlockheight() uint32 {
+func (x *DelinvoiceResponse) GetExpiresAt() uint64 {
if x != nil {
- return x.Blockheight
+ return x.ExpiresAt
}
return 0
}
-func (x *ListtransactionsTransactions) GetTxindex() uint32 {
+func (x *DelinvoiceResponse) GetLocalOfferId() []byte {
if x != nil {
- return x.Txindex
+ return x.LocalOfferId
+ }
+ return nil
+}
+
+func (x *DelinvoiceResponse) GetInvreqPayerNote() string {
+ if x != nil && x.InvreqPayerNote != nil {
+ return *x.InvreqPayerNote
+ }
+ return ""
+}
+
+func (x *DelinvoiceResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
}
return 0
}
-func (x *ListtransactionsTransactions) GetLocktime() uint32 {
- if x != nil {
- return x.Locktime
+func (x *DelinvoiceResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
}
return 0
}
-func (x *ListtransactionsTransactions) GetVersion() uint32 {
- if x != nil {
- return x.Version
+func (x *DelinvoiceResponse) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
}
return 0
}
-func (x *ListtransactionsTransactions) GetInputs() []*ListtransactionsTransactionsInputs {
+func (x *DelinvoiceResponse) GetAmountReceivedMsat() *Amount {
if x != nil {
- return x.Inputs
+ return x.AmountReceivedMsat
}
return nil
}
-func (x *ListtransactionsTransactions) GetOutputs() []*ListtransactionsTransactionsOutputs {
+func (x *DelinvoiceResponse) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
+ }
+ return 0
+}
+
+func (x *DelinvoiceResponse) GetPaymentPreimage() []byte {
if x != nil {
- return x.Outputs
+ return x.PaymentPreimage
}
return nil
}
-type ListtransactionsTransactionsInputs struct {
+type DevforgetchannelRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
- Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
- Sequence uint32 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,2,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ ChannelId []byte `protobuf:"bytes,3,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ Force *bool `protobuf:"varint,4,opt,name=force,proto3,oneof" json:"force,omitempty"`
}
-func (x *ListtransactionsTransactionsInputs) Reset() {
- *x = ListtransactionsTransactionsInputs{}
+func (x *DevforgetchannelRequest) Reset() {
+ *x = DevforgetchannelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[71]
+ mi := &file_node_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListtransactionsTransactionsInputs) String() string {
+func (x *DevforgetchannelRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListtransactionsTransactionsInputs) ProtoMessage() {}
+func (*DevforgetchannelRequest) ProtoMessage() {}
-func (x *ListtransactionsTransactionsInputs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[71]
+func (x *DevforgetchannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[65]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8289,59 +8121,66 @@ func (x *ListtransactionsTransactionsInputs) ProtoReflect() protoreflect.Message
return mi.MessageOf(x)
}
-// Deprecated: Use ListtransactionsTransactionsInputs.ProtoReflect.Descriptor instead.
-func (*ListtransactionsTransactionsInputs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{71}
+// Deprecated: Use DevforgetchannelRequest.ProtoReflect.Descriptor instead.
+func (*DevforgetchannelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{65}
}
-func (x *ListtransactionsTransactionsInputs) GetTxid() []byte {
+func (x *DevforgetchannelRequest) GetId() []byte {
if x != nil {
- return x.Txid
+ return x.Id
}
return nil
}
-func (x *ListtransactionsTransactionsInputs) GetIndex() uint32 {
- if x != nil {
- return x.Index
+func (x *DevforgetchannelRequest) GetShortChannelId() string {
+ if x != nil && x.ShortChannelId != nil {
+ return *x.ShortChannelId
}
- return 0
+ return ""
}
-func (x *ListtransactionsTransactionsInputs) GetSequence() uint32 {
+func (x *DevforgetchannelRequest) GetChannelId() []byte {
if x != nil {
- return x.Sequence
+ return x.ChannelId
}
- return 0
+ return nil
}
-type ListtransactionsTransactionsOutputs struct {
+func (x *DevforgetchannelRequest) GetForce() bool {
+ if x != nil && x.Force != nil {
+ return *x.Force
+ }
+ return false
+}
+
+type DevforgetchannelResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- ScriptPubKey []byte `protobuf:"bytes,3,opt,name=scriptPubKey,proto3" json:"scriptPubKey,omitempty"`
+ Forced bool `protobuf:"varint,1,opt,name=forced,proto3" json:"forced,omitempty"`
+ FundingUnspent bool `protobuf:"varint,2,opt,name=funding_unspent,json=fundingUnspent,proto3" json:"funding_unspent,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,3,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
}
-func (x *ListtransactionsTransactionsOutputs) Reset() {
- *x = ListtransactionsTransactionsOutputs{}
+func (x *DevforgetchannelResponse) Reset() {
+ *x = DevforgetchannelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[72]
+ mi := &file_node_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListtransactionsTransactionsOutputs) String() string {
+func (x *DevforgetchannelResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListtransactionsTransactionsOutputs) ProtoMessage() {}
+func (*DevforgetchannelResponse) ProtoMessage() {}
-func (x *ListtransactionsTransactionsOutputs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[72]
+func (x *DevforgetchannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[66]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8352,68 +8191,55 @@ func (x *ListtransactionsTransactionsOutputs) ProtoReflect() protoreflect.Messag
return mi.MessageOf(x)
}
-// Deprecated: Use ListtransactionsTransactionsOutputs.ProtoReflect.Descriptor instead.
-func (*ListtransactionsTransactionsOutputs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{72}
+// Deprecated: Use DevforgetchannelResponse.ProtoReflect.Descriptor instead.
+func (*DevforgetchannelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{66}
}
-func (x *ListtransactionsTransactionsOutputs) GetIndex() uint32 {
+func (x *DevforgetchannelResponse) GetForced() bool {
if x != nil {
- return x.Index
+ return x.Forced
}
- return 0
+ return false
}
-func (x *ListtransactionsTransactionsOutputs) GetAmountMsat() *Amount {
+func (x *DevforgetchannelResponse) GetFundingUnspent() bool {
if x != nil {
- return x.AmountMsat
+ return x.FundingUnspent
}
- return nil
+ return false
}
-func (x *ListtransactionsTransactionsOutputs) GetScriptPubKey() []byte {
+func (x *DevforgetchannelResponse) GetFundingTxid() []byte {
if x != nil {
- return x.ScriptPubKey
+ return x.FundingTxid
}
return nil
}
-type PayRequest struct {
+type EmergencyrecoverRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,13,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Riskfactor *float64 `protobuf:"fixed64,8,opt,name=riskfactor,proto3,oneof" json:"riskfactor,omitempty"`
- Maxfeepercent *float64 `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
- RetryFor *uint32 `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
- Maxdelay *uint32 `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
- Exemptfee *Amount `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
- Localinvreqid []byte `protobuf:"bytes,14,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
- Exclude []string `protobuf:"bytes,10,rep,name=exclude,proto3" json:"exclude,omitempty"`
- Maxfee *Amount `protobuf:"bytes,11,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
- Description *string `protobuf:"bytes,12,opt,name=description,proto3,oneof" json:"description,omitempty"`
}
-func (x *PayRequest) Reset() {
- *x = PayRequest{}
+func (x *EmergencyrecoverRequest) Reset() {
+ *x = EmergencyrecoverRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[73]
+ mi := &file_node_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PayRequest) String() string {
+func (x *EmergencyrecoverRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PayRequest) ProtoMessage() {}
+func (*EmergencyrecoverRequest) ProtoMessage() {}
-func (x *PayRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[73]
+func (x *EmergencyrecoverRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[67]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8424,128 +8250,83 @@ func (x *PayRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PayRequest.ProtoReflect.Descriptor instead.
-func (*PayRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{73}
+// Deprecated: Use EmergencyrecoverRequest.ProtoReflect.Descriptor instead.
+func (*EmergencyrecoverRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{67}
}
-func (x *PayRequest) GetBolt11() string {
- if x != nil {
- return x.Bolt11
- }
- return ""
-}
+type EmergencyrecoverResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *PayRequest) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
+ Stubs [][]byte `protobuf:"bytes,1,rep,name=stubs,proto3" json:"stubs,omitempty"`
}
-func (x *PayRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *EmergencyrecoverResponse) Reset() {
+ *x = EmergencyrecoverResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[68]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *PayRequest) GetRiskfactor() float64 {
- if x != nil && x.Riskfactor != nil {
- return *x.Riskfactor
- }
- return 0
+func (x *EmergencyrecoverResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *PayRequest) GetMaxfeepercent() float64 {
- if x != nil && x.Maxfeepercent != nil {
- return *x.Maxfeepercent
- }
- return 0
-}
+func (*EmergencyrecoverResponse) ProtoMessage() {}
-func (x *PayRequest) GetRetryFor() uint32 {
- if x != nil && x.RetryFor != nil {
- return *x.RetryFor
+func (x *EmergencyrecoverResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[68]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *PayRequest) GetMaxdelay() uint32 {
- if x != nil && x.Maxdelay != nil {
- return *x.Maxdelay
- }
- return 0
+// Deprecated: Use EmergencyrecoverResponse.ProtoReflect.Descriptor instead.
+func (*EmergencyrecoverResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{68}
}
-func (x *PayRequest) GetExemptfee() *Amount {
+func (x *EmergencyrecoverResponse) GetStubs() [][]byte {
if x != nil {
- return x.Exemptfee
+ return x.Stubs
}
return nil
}
-func (x *PayRequest) GetLocalinvreqid() []byte {
- if x != nil {
- return x.Localinvreqid
- }
- return nil
-}
-
-func (x *PayRequest) GetExclude() []string {
- if x != nil {
- return x.Exclude
- }
- return nil
-}
-
-func (x *PayRequest) GetMaxfee() *Amount {
- if x != nil {
- return x.Maxfee
- }
- return nil
-}
-
-func (x *PayRequest) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
- }
- return ""
-}
-
-type PayResponse struct {
+type RecoverRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PaymentPreimage []byte `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
- Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- CreatedAt float64 `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- Parts uint32 `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- WarningPartialCompletion *string `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
- Status PayResponse_PayStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.PayResponse_PayStatus" json:"status,omitempty"`
+ Hsmsecret string `protobuf:"bytes,1,opt,name=hsmsecret,proto3" json:"hsmsecret,omitempty"`
}
-func (x *PayResponse) Reset() {
- *x = PayResponse{}
+func (x *RecoverRequest) Reset() {
+ *x = RecoverRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[74]
+ mi := &file_node_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PayResponse) String() string {
+func (x *RecoverRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PayResponse) ProtoMessage() {}
+func (*RecoverRequest) ProtoMessage() {}
-func (x *PayResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[74]
+func (x *RecoverRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[69]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8556,99 +8337,90 @@ func (x *PayResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PayResponse.ProtoReflect.Descriptor instead.
-func (*PayResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{74}
+// Deprecated: Use RecoverRequest.ProtoReflect.Descriptor instead.
+func (*RecoverRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{69}
}
-func (x *PayResponse) GetPaymentPreimage() []byte {
+func (x *RecoverRequest) GetHsmsecret() string {
if x != nil {
- return x.PaymentPreimage
+ return x.Hsmsecret
}
- return nil
+ return ""
}
-func (x *PayResponse) GetDestination() []byte {
- if x != nil {
- return x.Destination
- }
- return nil
-}
+type RecoverResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *PayResponse) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
+ Result *RecoverResponse_RecoverResult `protobuf:"varint,1,opt,name=result,proto3,enum=cln.RecoverResponse_RecoverResult,oneof" json:"result,omitempty"`
}
-func (x *PayResponse) GetCreatedAt() float64 {
- if x != nil {
- return x.CreatedAt
+func (x *RecoverResponse) Reset() {
+ *x = RecoverResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[70]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return 0
}
-func (x *PayResponse) GetParts() uint32 {
- if x != nil {
- return x.Parts
- }
- return 0
+func (x *RecoverResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *PayResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
-}
+func (*RecoverResponse) ProtoMessage() {}
-func (x *PayResponse) GetAmountSentMsat() *Amount {
- if x != nil {
- return x.AmountSentMsat
+func (x *RecoverResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[70]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return nil
+ return mi.MessageOf(x)
}
-func (x *PayResponse) GetWarningPartialCompletion() string {
- if x != nil && x.WarningPartialCompletion != nil {
- return *x.WarningPartialCompletion
- }
- return ""
+// Deprecated: Use RecoverResponse.ProtoReflect.Descriptor instead.
+func (*RecoverResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{70}
}
-func (x *PayResponse) GetStatus() PayResponse_PayStatus {
- if x != nil {
- return x.Status
+func (x *RecoverResponse) GetResult() RecoverResponse_RecoverResult {
+ if x != nil && x.Result != nil {
+ return *x.Result
}
- return PayResponse_COMPLETE
+ return RecoverResponse_RECOVERY_RESTART_IN_PROGRESS
}
-type ListnodesRequest struct {
+type RecoverchannelRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+ Scb [][]byte `protobuf:"bytes,1,rep,name=scb,proto3" json:"scb,omitempty"`
}
-func (x *ListnodesRequest) Reset() {
- *x = ListnodesRequest{}
+func (x *RecoverchannelRequest) Reset() {
+ *x = RecoverchannelRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[75]
+ mi := &file_node_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListnodesRequest) String() string {
+func (x *RecoverchannelRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListnodesRequest) ProtoMessage() {}
+func (*RecoverchannelRequest) ProtoMessage() {}
-func (x *ListnodesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[75]
+func (x *RecoverchannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[71]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8659,43 +8431,43 @@ func (x *ListnodesRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListnodesRequest.ProtoReflect.Descriptor instead.
-func (*ListnodesRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{75}
+// Deprecated: Use RecoverchannelRequest.ProtoReflect.Descriptor instead.
+func (*RecoverchannelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{71}
}
-func (x *ListnodesRequest) GetId() []byte {
+func (x *RecoverchannelRequest) GetScb() [][]byte {
if x != nil {
- return x.Id
+ return x.Scb
}
return nil
}
-type ListnodesResponse struct {
+type RecoverchannelResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Nodes []*ListnodesNodes `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
+ Stubs []string `protobuf:"bytes,1,rep,name=stubs,proto3" json:"stubs,omitempty"`
}
-func (x *ListnodesResponse) Reset() {
- *x = ListnodesResponse{}
+func (x *RecoverchannelResponse) Reset() {
+ *x = RecoverchannelResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[76]
+ mi := &file_node_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListnodesResponse) String() string {
+func (x *RecoverchannelResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListnodesResponse) ProtoMessage() {}
+func (*RecoverchannelResponse) ProtoMessage() {}
-func (x *ListnodesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[76]
+func (x *RecoverchannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[72]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8706,48 +8478,51 @@ func (x *ListnodesResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListnodesResponse.ProtoReflect.Descriptor instead.
-func (*ListnodesResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{76}
+// Deprecated: Use RecoverchannelResponse.ProtoReflect.Descriptor instead.
+func (*RecoverchannelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{72}
}
-func (x *ListnodesResponse) GetNodes() []*ListnodesNodes {
+func (x *RecoverchannelResponse) GetStubs() []string {
if x != nil {
- return x.Nodes
+ return x.Stubs
}
return nil
}
-type ListnodesNodes struct {
+type InvoiceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Nodeid []byte `protobuf:"bytes,1,opt,name=nodeid,proto3" json:"nodeid,omitempty"`
- LastTimestamp *uint32 `protobuf:"varint,2,opt,name=last_timestamp,json=lastTimestamp,proto3,oneof" json:"last_timestamp,omitempty"`
- Alias *string `protobuf:"bytes,3,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
- Color []byte `protobuf:"bytes,4,opt,name=color,proto3,oneof" json:"color,omitempty"`
- Features []byte `protobuf:"bytes,5,opt,name=features,proto3,oneof" json:"features,omitempty"`
- Addresses []*ListnodesNodesAddresses `protobuf:"bytes,6,rep,name=addresses,proto3" json:"addresses,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"`
+ Fallbacks []string `protobuf:"bytes,4,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
+ Preimage []byte `protobuf:"bytes,5,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
+ Cltv *uint32 `protobuf:"varint,6,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
+ Expiry *uint64 `protobuf:"varint,7,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
+ Exposeprivatechannels []string `protobuf:"bytes,8,rep,name=exposeprivatechannels,proto3" json:"exposeprivatechannels,omitempty"`
+ Deschashonly *bool `protobuf:"varint,9,opt,name=deschashonly,proto3,oneof" json:"deschashonly,omitempty"`
+ AmountMsat *AmountOrAny `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}
-func (x *ListnodesNodes) Reset() {
- *x = ListnodesNodes{}
+func (x *InvoiceRequest) Reset() {
+ *x = InvoiceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[77]
+ mi := &file_node_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListnodesNodes) String() string {
+func (x *InvoiceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListnodesNodes) ProtoMessage() {}
+func (*InvoiceRequest) ProtoMessage() {}
-func (x *ListnodesNodes) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[77]
+func (x *InvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[73]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8758,80 +8533,108 @@ func (x *ListnodesNodes) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListnodesNodes.ProtoReflect.Descriptor instead.
-func (*ListnodesNodes) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{77}
+// Deprecated: Use InvoiceRequest.ProtoReflect.Descriptor instead.
+func (*InvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{73}
}
-func (x *ListnodesNodes) GetNodeid() []byte {
+func (x *InvoiceRequest) GetDescription() string {
if x != nil {
- return x.Nodeid
+ return x.Description
}
- return nil
+ return ""
}
-func (x *ListnodesNodes) GetLastTimestamp() uint32 {
- if x != nil && x.LastTimestamp != nil {
- return *x.LastTimestamp
+func (x *InvoiceRequest) GetLabel() string {
+ if x != nil {
+ return x.Label
}
- return 0
+ return ""
}
-func (x *ListnodesNodes) GetAlias() string {
- if x != nil && x.Alias != nil {
- return *x.Alias
+func (x *InvoiceRequest) GetFallbacks() []string {
+ if x != nil {
+ return x.Fallbacks
}
- return ""
+ return nil
}
-func (x *ListnodesNodes) GetColor() []byte {
+func (x *InvoiceRequest) GetPreimage() []byte {
if x != nil {
- return x.Color
+ return x.Preimage
}
return nil
}
-func (x *ListnodesNodes) GetFeatures() []byte {
+func (x *InvoiceRequest) GetCltv() uint32 {
+ if x != nil && x.Cltv != nil {
+ return *x.Cltv
+ }
+ return 0
+}
+
+func (x *InvoiceRequest) GetExpiry() uint64 {
+ if x != nil && x.Expiry != nil {
+ return *x.Expiry
+ }
+ return 0
+}
+
+func (x *InvoiceRequest) GetExposeprivatechannels() []string {
if x != nil {
- return x.Features
+ return x.Exposeprivatechannels
}
return nil
}
-func (x *ListnodesNodes) GetAddresses() []*ListnodesNodesAddresses {
+func (x *InvoiceRequest) GetDeschashonly() bool {
+ if x != nil && x.Deschashonly != nil {
+ return *x.Deschashonly
+ }
+ return false
+}
+
+func (x *InvoiceRequest) GetAmountMsat() *AmountOrAny {
if x != nil {
- return x.Addresses
+ return x.AmountMsat
}
return nil
}
-type ListnodesNodesAddresses struct {
+type InvoiceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ItemType ListnodesNodesAddresses_ListnodesNodesAddressesType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListnodesNodesAddresses_ListnodesNodesAddressesType" json:"item_type,omitempty"`
- Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
- Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ PaymentSecret []byte `protobuf:"bytes,3,opt,name=payment_secret,json=paymentSecret,proto3" json:"payment_secret,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ WarningCapacity *string `protobuf:"bytes,5,opt,name=warning_capacity,json=warningCapacity,proto3,oneof" json:"warning_capacity,omitempty"`
+ WarningOffline *string `protobuf:"bytes,6,opt,name=warning_offline,json=warningOffline,proto3,oneof" json:"warning_offline,omitempty"`
+ WarningDeadends *string `protobuf:"bytes,7,opt,name=warning_deadends,json=warningDeadends,proto3,oneof" json:"warning_deadends,omitempty"`
+ WarningPrivateUnused *string `protobuf:"bytes,8,opt,name=warning_private_unused,json=warningPrivateUnused,proto3,oneof" json:"warning_private_unused,omitempty"`
+ WarningMpp *string `protobuf:"bytes,9,opt,name=warning_mpp,json=warningMpp,proto3,oneof" json:"warning_mpp,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,10,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
}
-func (x *ListnodesNodesAddresses) Reset() {
- *x = ListnodesNodesAddresses{}
+func (x *InvoiceResponse) Reset() {
+ *x = InvoiceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[78]
+ mi := &file_node_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListnodesNodesAddresses) String() string {
+func (x *InvoiceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListnodesNodesAddresses) ProtoMessage() {}
+func (*InvoiceResponse) ProtoMessage() {}
-func (x *ListnodesNodesAddresses) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[78]
+func (x *InvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[74]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8842,126 +8645,111 @@ func (x *ListnodesNodesAddresses) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListnodesNodesAddresses.ProtoReflect.Descriptor instead.
-func (*ListnodesNodesAddresses) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{78}
-}
-
-func (x *ListnodesNodesAddresses) GetItemType() ListnodesNodesAddresses_ListnodesNodesAddressesType {
+// Deprecated: Use InvoiceResponse.ProtoReflect.Descriptor instead.
+func (*InvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{74}
+}
+
+func (x *InvoiceResponse) GetBolt11() string {
if x != nil {
- return x.ItemType
+ return x.Bolt11
}
- return ListnodesNodesAddresses_DNS
+ return ""
}
-func (x *ListnodesNodesAddresses) GetPort() uint32 {
+func (x *InvoiceResponse) GetPaymentHash() []byte {
if x != nil {
- return x.Port
+ return x.PaymentHash
}
- return 0
+ return nil
}
-func (x *ListnodesNodesAddresses) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
+func (x *InvoiceResponse) GetPaymentSecret() []byte {
+ if x != nil {
+ return x.PaymentSecret
}
- return ""
+ return nil
}
-type WaitanyinvoiceRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- LastpayIndex *uint64 `protobuf:"varint,1,opt,name=lastpay_index,json=lastpayIndex,proto3,oneof" json:"lastpay_index,omitempty"`
- Timeout *uint64 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
+func (x *InvoiceResponse) GetExpiresAt() uint64 {
+ if x != nil {
+ return x.ExpiresAt
+ }
+ return 0
}
-func (x *WaitanyinvoiceRequest) Reset() {
- *x = WaitanyinvoiceRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[79]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *InvoiceResponse) GetWarningCapacity() string {
+ if x != nil && x.WarningCapacity != nil {
+ return *x.WarningCapacity
}
+ return ""
}
-func (x *WaitanyinvoiceRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *InvoiceResponse) GetWarningOffline() string {
+ if x != nil && x.WarningOffline != nil {
+ return *x.WarningOffline
+ }
+ return ""
}
-func (*WaitanyinvoiceRequest) ProtoMessage() {}
-
-func (x *WaitanyinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[79]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *InvoiceResponse) GetWarningDeadends() string {
+ if x != nil && x.WarningDeadends != nil {
+ return *x.WarningDeadends
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use WaitanyinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*WaitanyinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{79}
+func (x *InvoiceResponse) GetWarningPrivateUnused() string {
+ if x != nil && x.WarningPrivateUnused != nil {
+ return *x.WarningPrivateUnused
+ }
+ return ""
}
-func (x *WaitanyinvoiceRequest) GetLastpayIndex() uint64 {
- if x != nil && x.LastpayIndex != nil {
- return *x.LastpayIndex
+func (x *InvoiceResponse) GetWarningMpp() string {
+ if x != nil && x.WarningMpp != nil {
+ return *x.WarningMpp
}
- return 0
+ return ""
}
-func (x *WaitanyinvoiceRequest) GetTimeout() uint64 {
- if x != nil && x.Timeout != nil {
- return *x.Timeout
+func (x *InvoiceResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
}
return 0
}
-type WaitanyinvoiceResponse struct {
+type InvoicerequestRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status WaitanyinvoiceResponse_WaitanyinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitanyinvoiceResponse_WaitanyinvoiceStatus" json:"status,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
- AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
- PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
- PaidOutpoint *WaitanyinvoicePaidOutpoint `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Amount *Amount `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ Issuer *string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"`
+ Label *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ AbsoluteExpiry *uint64 `protobuf:"varint,5,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof" json:"absolute_expiry,omitempty"`
+ SingleUse *bool `protobuf:"varint,6,opt,name=single_use,json=singleUse,proto3,oneof" json:"single_use,omitempty"`
}
-func (x *WaitanyinvoiceResponse) Reset() {
- *x = WaitanyinvoiceResponse{}
+func (x *InvoicerequestRequest) Reset() {
+ *x = InvoicerequestRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[80]
+ mi := &file_node_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitanyinvoiceResponse) String() string {
+func (x *InvoicerequestRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitanyinvoiceResponse) ProtoMessage() {}
+func (*InvoicerequestRequest) ProtoMessage() {}
-func (x *WaitanyinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[80]
+func (x *InvoicerequestRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[75]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -8972,142 +8760,165 @@ func (x *WaitanyinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitanyinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*WaitanyinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{80}
+// Deprecated: Use InvoicerequestRequest.ProtoReflect.Descriptor instead.
+func (*InvoicerequestRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{75}
}
-func (x *WaitanyinvoiceResponse) GetLabel() string {
+func (x *InvoicerequestRequest) GetAmount() *Amount {
if x != nil {
- return x.Label
+ return x.Amount
}
- return ""
+ return nil
}
-func (x *WaitanyinvoiceResponse) GetDescription() string {
+func (x *InvoicerequestRequest) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
-func (x *WaitanyinvoiceResponse) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
+func (x *InvoicerequestRequest) GetIssuer() string {
+ if x != nil && x.Issuer != nil {
+ return *x.Issuer
}
- return nil
+ return ""
}
-func (x *WaitanyinvoiceResponse) GetStatus() WaitanyinvoiceResponse_WaitanyinvoiceStatus {
- if x != nil {
- return x.Status
+func (x *InvoicerequestRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
- return WaitanyinvoiceResponse_PAID
+ return ""
}
-func (x *WaitanyinvoiceResponse) GetExpiresAt() uint64 {
- if x != nil {
- return x.ExpiresAt
+func (x *InvoicerequestRequest) GetAbsoluteExpiry() uint64 {
+ if x != nil && x.AbsoluteExpiry != nil {
+ return *x.AbsoluteExpiry
}
return 0
}
-func (x *WaitanyinvoiceResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *InvoicerequestRequest) GetSingleUse() bool {
+ if x != nil && x.SingleUse != nil {
+ return *x.SingleUse
}
- return nil
+ return false
}
-func (x *WaitanyinvoiceResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
+type InvoicerequestResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InvreqId []byte `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}
-func (x *WaitanyinvoiceResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *InvoicerequestResponse) Reset() {
+ *x = InvoicerequestResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[76]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *WaitanyinvoiceResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
+func (x *InvoicerequestResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *WaitanyinvoiceResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
+func (*InvoicerequestResponse) ProtoMessage() {}
+
+func (x *InvoicerequestResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[76]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *WaitanyinvoiceResponse) GetPayIndex() uint64 {
- if x != nil && x.PayIndex != nil {
- return *x.PayIndex
- }
- return 0
+// Deprecated: Use InvoicerequestResponse.ProtoReflect.Descriptor instead.
+func (*InvoicerequestResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{76}
}
-func (x *WaitanyinvoiceResponse) GetAmountReceivedMsat() *Amount {
+func (x *InvoicerequestResponse) GetInvreqId() []byte {
if x != nil {
- return x.AmountReceivedMsat
+ return x.InvreqId
}
return nil
}
-func (x *WaitanyinvoiceResponse) GetPaidAt() uint64 {
- if x != nil && x.PaidAt != nil {
- return *x.PaidAt
+func (x *InvoicerequestResponse) GetActive() bool {
+ if x != nil {
+ return x.Active
}
- return 0
+ return false
}
-func (x *WaitanyinvoiceResponse) GetPaidOutpoint() *WaitanyinvoicePaidOutpoint {
+func (x *InvoicerequestResponse) GetSingleUse() bool {
if x != nil {
- return x.PaidOutpoint
+ return x.SingleUse
}
- return nil
+ return false
}
-func (x *WaitanyinvoiceResponse) GetPaymentPreimage() []byte {
+func (x *InvoicerequestResponse) GetBolt12() string {
if x != nil {
- return x.PaymentPreimage
+ return x.Bolt12
}
- return nil
+ return ""
}
-type WaitanyinvoicePaidOutpoint struct {
+func (x *InvoicerequestResponse) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *InvoicerequestResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type DisableinvoicerequestRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
- Outnum *uint32 `protobuf:"varint,2,opt,name=outnum,proto3,oneof" json:"outnum,omitempty"`
+ InvreqId string `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
}
-func (x *WaitanyinvoicePaidOutpoint) Reset() {
- *x = WaitanyinvoicePaidOutpoint{}
+func (x *DisableinvoicerequestRequest) Reset() {
+ *x = DisableinvoicerequestRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[81]
+ mi := &file_node_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitanyinvoicePaidOutpoint) String() string {
+func (x *DisableinvoicerequestRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitanyinvoicePaidOutpoint) ProtoMessage() {}
+func (*DisableinvoicerequestRequest) ProtoMessage() {}
-func (x *WaitanyinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[81]
+func (x *DisableinvoicerequestRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[77]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9118,50 +8929,48 @@ func (x *WaitanyinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitanyinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
-func (*WaitanyinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{81}
+// Deprecated: Use DisableinvoicerequestRequest.ProtoReflect.Descriptor instead.
+func (*DisableinvoicerequestRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{77}
}
-func (x *WaitanyinvoicePaidOutpoint) GetTxid() []byte {
+func (x *DisableinvoicerequestRequest) GetInvreqId() string {
if x != nil {
- return x.Txid
- }
- return nil
-}
-
-func (x *WaitanyinvoicePaidOutpoint) GetOutnum() uint32 {
- if x != nil && x.Outnum != nil {
- return *x.Outnum
+ return x.InvreqId
}
- return 0
+ return ""
}
-type WaitinvoiceRequest struct {
+type DisableinvoicerequestResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
-}
+ InvreqId []byte `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
+}
-func (x *WaitinvoiceRequest) Reset() {
- *x = WaitinvoiceRequest{}
+func (x *DisableinvoicerequestResponse) Reset() {
+ *x = DisableinvoicerequestResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[82]
+ mi := &file_node_proto_msgTypes[78]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitinvoiceRequest) String() string {
+func (x *DisableinvoicerequestResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitinvoiceRequest) ProtoMessage() {}
+func (*DisableinvoicerequestResponse) ProtoMessage() {}
-func (x *WaitinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[82]
+func (x *DisableinvoicerequestResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[78]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9172,57 +8981,79 @@ func (x *WaitinvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*WaitinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{82}
+// Deprecated: Use DisableinvoicerequestResponse.ProtoReflect.Descriptor instead.
+func (*DisableinvoicerequestResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{78}
}
-func (x *WaitinvoiceRequest) GetLabel() string {
+func (x *DisableinvoicerequestResponse) GetInvreqId() []byte {
if x != nil {
- return x.Label
+ return x.InvreqId
+ }
+ return nil
+}
+
+func (x *DisableinvoicerequestResponse) GetActive() bool {
+ if x != nil {
+ return x.Active
+ }
+ return false
+}
+
+func (x *DisableinvoicerequestResponse) GetSingleUse() bool {
+ if x != nil {
+ return x.SingleUse
+ }
+ return false
+}
+
+func (x *DisableinvoicerequestResponse) GetBolt12() string {
+ if x != nil {
+ return x.Bolt12
}
return ""
}
-type WaitinvoiceResponse struct {
+func (x *DisableinvoicerequestResponse) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *DisableinvoicerequestResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type ListinvoicerequestsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
- Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status WaitinvoiceResponse_WaitinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitinvoiceResponse_WaitinvoiceStatus" json:"status,omitempty"`
- ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- CreatedIndex *uint64 `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
- AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
- PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
- PaidOutpoint *WaitinvoicePaidOutpoint `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ InvreqId *string `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3,oneof" json:"invreq_id,omitempty"`
+ ActiveOnly *bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3,oneof" json:"active_only,omitempty"`
}
-func (x *WaitinvoiceResponse) Reset() {
- *x = WaitinvoiceResponse{}
+func (x *ListinvoicerequestsRequest) Reset() {
+ *x = ListinvoicerequestsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[83]
+ mi := &file_node_proto_msgTypes[79]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitinvoiceResponse) String() string {
+func (x *ListinvoicerequestsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitinvoiceResponse) ProtoMessage() {}
+func (*ListinvoicerequestsRequest) ProtoMessage() {}
-func (x *WaitinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[83]
+func (x *ListinvoicerequestsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[79]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9233,142 +9064,184 @@ func (x *WaitinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*WaitinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{83}
+// Deprecated: Use ListinvoicerequestsRequest.ProtoReflect.Descriptor instead.
+func (*ListinvoicerequestsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{79}
}
-func (x *WaitinvoiceResponse) GetLabel() string {
- if x != nil {
- return x.Label
+func (x *ListinvoicerequestsRequest) GetInvreqId() string {
+ if x != nil && x.InvreqId != nil {
+ return *x.InvreqId
}
return ""
}
-func (x *WaitinvoiceResponse) GetDescription() string {
- if x != nil {
- return x.Description
+func (x *ListinvoicerequestsRequest) GetActiveOnly() bool {
+ if x != nil && x.ActiveOnly != nil {
+ return *x.ActiveOnly
}
- return ""
+ return false
}
-func (x *WaitinvoiceResponse) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
+type ListinvoicerequestsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invoicerequests []*ListinvoicerequestsInvoicerequests `protobuf:"bytes,1,rep,name=invoicerequests,proto3" json:"invoicerequests,omitempty"`
}
-func (x *WaitinvoiceResponse) GetStatus() WaitinvoiceResponse_WaitinvoiceStatus {
- if x != nil {
- return x.Status
+func (x *ListinvoicerequestsResponse) Reset() {
+ *x = ListinvoicerequestsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[80]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return WaitinvoiceResponse_PAID
}
-func (x *WaitinvoiceResponse) GetExpiresAt() uint64 {
- if x != nil {
- return x.ExpiresAt
+func (x *ListinvoicerequestsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListinvoicerequestsResponse) ProtoMessage() {}
+
+func (x *ListinvoicerequestsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[80]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *WaitinvoiceResponse) GetAmountMsat() *Amount {
+// Deprecated: Use ListinvoicerequestsResponse.ProtoReflect.Descriptor instead.
+func (*ListinvoicerequestsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{80}
+}
+
+func (x *ListinvoicerequestsResponse) GetInvoicerequests() []*ListinvoicerequestsInvoicerequests {
if x != nil {
- return x.AmountMsat
+ return x.Invoicerequests
}
return nil
}
-func (x *WaitinvoiceResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
- }
- return ""
+type ListinvoicerequestsInvoicerequests struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InvreqId []byte `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}
-func (x *WaitinvoiceResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *ListinvoicerequestsInvoicerequests) Reset() {
+ *x = ListinvoicerequestsInvoicerequests{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[81]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *WaitinvoiceResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
+func (x *ListinvoicerequestsInvoicerequests) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *WaitinvoiceResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
+func (*ListinvoicerequestsInvoicerequests) ProtoMessage() {}
+
+func (x *ListinvoicerequestsInvoicerequests) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[81]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *WaitinvoiceResponse) GetPayIndex() uint64 {
- if x != nil && x.PayIndex != nil {
- return *x.PayIndex
- }
- return 0
+// Deprecated: Use ListinvoicerequestsInvoicerequests.ProtoReflect.Descriptor instead.
+func (*ListinvoicerequestsInvoicerequests) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{81}
}
-func (x *WaitinvoiceResponse) GetAmountReceivedMsat() *Amount {
+func (x *ListinvoicerequestsInvoicerequests) GetInvreqId() []byte {
if x != nil {
- return x.AmountReceivedMsat
+ return x.InvreqId
}
return nil
}
-func (x *WaitinvoiceResponse) GetPaidAt() uint64 {
- if x != nil && x.PaidAt != nil {
- return *x.PaidAt
+func (x *ListinvoicerequestsInvoicerequests) GetActive() bool {
+ if x != nil {
+ return x.Active
}
- return 0
+ return false
}
-func (x *WaitinvoiceResponse) GetPaidOutpoint() *WaitinvoicePaidOutpoint {
+func (x *ListinvoicerequestsInvoicerequests) GetSingleUse() bool {
if x != nil {
- return x.PaidOutpoint
+ return x.SingleUse
}
- return nil
+ return false
}
-func (x *WaitinvoiceResponse) GetPaymentPreimage() []byte {
+func (x *ListinvoicerequestsInvoicerequests) GetBolt12() string {
if x != nil {
- return x.PaymentPreimage
+ return x.Bolt12
}
- return nil
+ return ""
}
-type WaitinvoicePaidOutpoint struct {
+func (x *ListinvoicerequestsInvoicerequests) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *ListinvoicerequestsInvoicerequests) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type ListdatastoreRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
- Outnum *uint32 `protobuf:"varint,2,opt,name=outnum,proto3,oneof" json:"outnum,omitempty"`
+ Key []string `protobuf:"bytes,2,rep,name=key,proto3" json:"key,omitempty"`
}
-func (x *WaitinvoicePaidOutpoint) Reset() {
- *x = WaitinvoicePaidOutpoint{}
+func (x *ListdatastoreRequest) Reset() {
+ *x = ListdatastoreRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[84]
+ mi := &file_node_proto_msgTypes[82]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitinvoicePaidOutpoint) String() string {
+func (x *ListdatastoreRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitinvoicePaidOutpoint) ProtoMessage() {}
+func (*ListdatastoreRequest) ProtoMessage() {}
-func (x *WaitinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[84]
+func (x *ListdatastoreRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[82]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9379,53 +9252,43 @@ func (x *WaitinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
-func (*WaitinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{84}
+// Deprecated: Use ListdatastoreRequest.ProtoReflect.Descriptor instead.
+func (*ListdatastoreRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{82}
}
-func (x *WaitinvoicePaidOutpoint) GetTxid() []byte {
+func (x *ListdatastoreRequest) GetKey() []string {
if x != nil {
- return x.Txid
+ return x.Key
}
return nil
}
-func (x *WaitinvoicePaidOutpoint) GetOutnum() uint32 {
- if x != nil && x.Outnum != nil {
- return *x.Outnum
- }
- return 0
-}
-
-type WaitsendpayRequest struct {
+type ListdatastoreResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Timeout *uint32 `protobuf:"varint,3,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
- Partid *uint64 `protobuf:"varint,2,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- Groupid *uint64 `protobuf:"varint,4,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ Datastore []*ListdatastoreDatastore `protobuf:"bytes,1,rep,name=datastore,proto3" json:"datastore,omitempty"`
}
-func (x *WaitsendpayRequest) Reset() {
- *x = WaitsendpayRequest{}
+func (x *ListdatastoreResponse) Reset() {
+ *x = ListdatastoreResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[85]
+ mi := &file_node_proto_msgTypes[83]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitsendpayRequest) String() string {
+func (x *ListdatastoreResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitsendpayRequest) ProtoMessage() {}
+func (*ListdatastoreResponse) ProtoMessage() {}
-func (x *WaitsendpayRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[85]
+func (x *ListdatastoreResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[83]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9436,79 +9299,46 @@ func (x *WaitsendpayRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitsendpayRequest.ProtoReflect.Descriptor instead.
-func (*WaitsendpayRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{85}
+// Deprecated: Use ListdatastoreResponse.ProtoReflect.Descriptor instead.
+func (*ListdatastoreResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{83}
}
-func (x *WaitsendpayRequest) GetPaymentHash() []byte {
+func (x *ListdatastoreResponse) GetDatastore() []*ListdatastoreDatastore {
if x != nil {
- return x.PaymentHash
+ return x.Datastore
}
return nil
}
-func (x *WaitsendpayRequest) GetTimeout() uint32 {
- if x != nil && x.Timeout != nil {
- return *x.Timeout
- }
- return 0
-}
-
-func (x *WaitsendpayRequest) GetPartid() uint64 {
- if x != nil && x.Partid != nil {
- return *x.Partid
- }
- return 0
-}
-
-func (x *WaitsendpayRequest) GetGroupid() uint64 {
- if x != nil && x.Groupid != nil {
- return *x.Groupid
- }
- return 0
-}
-
-type WaitsendpayResponse struct {
+type ListdatastoreDatastore struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- CreatedIndex *uint64 `protobuf:"varint,15,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
- Groupid *uint64 `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status WaitsendpayResponse_WaitsendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitsendpayResponse_WaitsendpayStatus" json:"status,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,16,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- CompletedAt *float64 `protobuf:"fixed64,14,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Partid *uint64 `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
- Bolt11 *string `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Bolt12 *string `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Key []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
+ Generation *uint64 `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
+ Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ String_ *string `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
}
-func (x *WaitsendpayResponse) Reset() {
- *x = WaitsendpayResponse{}
+func (x *ListdatastoreDatastore) Reset() {
+ *x = ListdatastoreDatastore{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[86]
+ mi := &file_node_proto_msgTypes[84]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitsendpayResponse) String() string {
+func (x *ListdatastoreDatastore) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitsendpayResponse) ProtoMessage() {}
+func (*ListdatastoreDatastore) ProtoMessage() {}
-func (x *WaitsendpayResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[86]
+func (x *ListdatastoreDatastore) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[84]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9519,148 +9349,159 @@ func (x *WaitsendpayResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitsendpayResponse.ProtoReflect.Descriptor instead.
-func (*WaitsendpayResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{86}
-}
-
-func (x *WaitsendpayResponse) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
- }
- return 0
+// Deprecated: Use ListdatastoreDatastore.ProtoReflect.Descriptor instead.
+func (*ListdatastoreDatastore) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{84}
}
-func (x *WaitsendpayResponse) GetId() uint64 {
+func (x *ListdatastoreDatastore) GetKey() []string {
if x != nil {
- return x.Id
+ return x.Key
}
- return 0
+ return nil
}
-func (x *WaitsendpayResponse) GetGroupid() uint64 {
- if x != nil && x.Groupid != nil {
- return *x.Groupid
+func (x *ListdatastoreDatastore) GetGeneration() uint64 {
+ if x != nil && x.Generation != nil {
+ return *x.Generation
}
return 0
}
-func (x *WaitsendpayResponse) GetPaymentHash() []byte {
+func (x *ListdatastoreDatastore) GetHex() []byte {
if x != nil {
- return x.PaymentHash
+ return x.Hex
}
return nil
}
-func (x *WaitsendpayResponse) GetStatus() WaitsendpayResponse_WaitsendpayStatus {
- if x != nil {
- return x.Status
+func (x *ListdatastoreDatastore) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
}
- return WaitsendpayResponse_COMPLETE
+ return ""
}
-func (x *WaitsendpayResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
-}
+type ListinvoicesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *WaitsendpayResponse) GetDestination() []byte {
- if x != nil {
- return x.Destination
- }
- return nil
+ Label *string `protobuf:"bytes,1,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Invstring *string `protobuf:"bytes,2,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
+ OfferId *string `protobuf:"bytes,4,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
+ Index *ListinvoicesRequest_ListinvoicesIndex `protobuf:"varint,5,opt,name=index,proto3,enum=cln.ListinvoicesRequest_ListinvoicesIndex,oneof" json:"index,omitempty"`
+ Start *uint64 `protobuf:"varint,6,opt,name=start,proto3,oneof" json:"start,omitempty"`
+ Limit *uint32 `protobuf:"varint,7,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}
-func (x *WaitsendpayResponse) GetCreatedAt() uint64 {
- if x != nil {
- return x.CreatedAt
+func (x *ListinvoicesRequest) Reset() {
+ *x = ListinvoicesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[85]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return 0
}
-func (x *WaitsendpayResponse) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
- }
- return 0
+func (x *ListinvoicesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *WaitsendpayResponse) GetCompletedAt() float64 {
- if x != nil && x.CompletedAt != nil {
- return *x.CompletedAt
+func (*ListinvoicesRequest) ProtoMessage() {}
+
+func (x *ListinvoicesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[85]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *WaitsendpayResponse) GetAmountSentMsat() *Amount {
- if x != nil {
- return x.AmountSentMsat
- }
- return nil
+// Deprecated: Use ListinvoicesRequest.ProtoReflect.Descriptor instead.
+func (*ListinvoicesRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{85}
}
-func (x *WaitsendpayResponse) GetLabel() string {
+func (x *ListinvoicesRequest) GetLabel() string {
if x != nil && x.Label != nil {
return *x.Label
}
return ""
}
-func (x *WaitsendpayResponse) GetPartid() uint64 {
- if x != nil && x.Partid != nil {
- return *x.Partid
+func (x *ListinvoicesRequest) GetInvstring() string {
+ if x != nil && x.Invstring != nil {
+ return *x.Invstring
}
- return 0
+ return ""
}
-func (x *WaitsendpayResponse) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *ListinvoicesRequest) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
- return ""
+ return nil
}
-func (x *WaitsendpayResponse) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *ListinvoicesRequest) GetOfferId() string {
+ if x != nil && x.OfferId != nil {
+ return *x.OfferId
}
return ""
}
-func (x *WaitsendpayResponse) GetPaymentPreimage() []byte {
- if x != nil {
- return x.PaymentPreimage
+func (x *ListinvoicesRequest) GetIndex() ListinvoicesRequest_ListinvoicesIndex {
+ if x != nil && x.Index != nil {
+ return *x.Index
}
- return nil
+ return ListinvoicesRequest_CREATED
}
-type NewaddrRequest struct {
+func (x *ListinvoicesRequest) GetStart() uint64 {
+ if x != nil && x.Start != nil {
+ return *x.Start
+ }
+ return 0
+}
+
+func (x *ListinvoicesRequest) GetLimit() uint32 {
+ if x != nil && x.Limit != nil {
+ return *x.Limit
+ }
+ return 0
+}
+
+type ListinvoicesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Addresstype *NewaddrRequest_NewaddrAddresstype `protobuf:"varint,1,opt,name=addresstype,proto3,enum=cln.NewaddrRequest_NewaddrAddresstype,oneof" json:"addresstype,omitempty"`
+ Invoices []*ListinvoicesInvoices `protobuf:"bytes,1,rep,name=invoices,proto3" json:"invoices,omitempty"`
}
-func (x *NewaddrRequest) Reset() {
- *x = NewaddrRequest{}
+func (x *ListinvoicesResponse) Reset() {
+ *x = ListinvoicesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[87]
+ mi := &file_node_proto_msgTypes[86]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *NewaddrRequest) String() string {
+func (x *ListinvoicesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*NewaddrRequest) ProtoMessage() {}
+func (*ListinvoicesResponse) ProtoMessage() {}
-func (x *NewaddrRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[87]
+func (x *ListinvoicesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[86]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9671,44 +9512,59 @@ func (x *NewaddrRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use NewaddrRequest.ProtoReflect.Descriptor instead.
-func (*NewaddrRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{87}
+// Deprecated: Use ListinvoicesResponse.ProtoReflect.Descriptor instead.
+func (*ListinvoicesResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{86}
}
-func (x *NewaddrRequest) GetAddresstype() NewaddrRequest_NewaddrAddresstype {
- if x != nil && x.Addresstype != nil {
- return *x.Addresstype
+func (x *ListinvoicesResponse) GetInvoices() []*ListinvoicesInvoices {
+ if x != nil {
+ return x.Invoices
}
- return NewaddrRequest_BECH32
+ return nil
}
-type NewaddrResponse struct {
+type ListinvoicesInvoices struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- P2Tr *string `protobuf:"bytes,3,opt,name=p2tr,proto3,oneof" json:"p2tr,omitempty"`
- Bech32 *string `protobuf:"bytes,1,opt,name=bech32,proto3,oneof" json:"bech32,omitempty"`
-}
-
-func (x *NewaddrResponse) Reset() {
- *x = NewaddrResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[88]
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status ListinvoicesInvoices_ListinvoicesInvoicesStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListinvoicesInvoices_ListinvoicesInvoicesStatus" json:"status,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ LocalOfferId []byte `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,11,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,12,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,13,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,14,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ InvreqPayerNote *string `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ PaidOutpoint *ListinvoicesInvoicesPaidOutpoint `protobuf:"bytes,18,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
+}
+
+func (x *ListinvoicesInvoices) Reset() {
+ *x = ListinvoicesInvoices{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[87]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *NewaddrResponse) String() string {
+func (x *ListinvoicesInvoices) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*NewaddrResponse) ProtoMessage() {}
+func (*ListinvoicesInvoices) ProtoMessage() {}
-func (x *NewaddrResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[88]
+func (x *ListinvoicesInvoices) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[87]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9719,131 +9575,156 @@ func (x *NewaddrResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use NewaddrResponse.ProtoReflect.Descriptor instead.
-func (*NewaddrResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{88}
+// Deprecated: Use ListinvoicesInvoices.ProtoReflect.Descriptor instead.
+func (*ListinvoicesInvoices) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{87}
}
-func (x *NewaddrResponse) GetP2Tr() string {
- if x != nil && x.P2Tr != nil {
- return *x.P2Tr
+func (x *ListinvoicesInvoices) GetLabel() string {
+ if x != nil {
+ return x.Label
}
return ""
}
-func (x *NewaddrResponse) GetBech32() string {
- if x != nil && x.Bech32 != nil {
- return *x.Bech32
+func (x *ListinvoicesInvoices) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
}
return ""
}
-type WithdrawRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
- Satoshi *AmountOrAll `protobuf:"bytes,2,opt,name=satoshi,proto3,oneof" json:"satoshi,omitempty"`
- Feerate *Feerate `protobuf:"bytes,5,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- Minconf *uint32 `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
- Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+func (x *ListinvoicesInvoices) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
}
-func (x *WithdrawRequest) Reset() {
- *x = WithdrawRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[89]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListinvoicesInvoices) GetStatus() ListinvoicesInvoices_ListinvoicesInvoicesStatus {
+ if x != nil {
+ return x.Status
}
+ return ListinvoicesInvoices_UNPAID
}
-func (x *WithdrawRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListinvoicesInvoices) GetExpiresAt() uint64 {
+ if x != nil {
+ return x.ExpiresAt
+ }
+ return 0
}
-func (*WithdrawRequest) ProtoMessage() {}
+func (x *ListinvoicesInvoices) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
-func (x *WithdrawRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[89]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListinvoicesInvoices) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use WithdrawRequest.ProtoReflect.Descriptor instead.
-func (*WithdrawRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{89}
+func (x *ListinvoicesInvoices) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
}
-func (x *WithdrawRequest) GetDestination() string {
+func (x *ListinvoicesInvoices) GetLocalOfferId() []byte {
if x != nil {
- return x.Destination
+ return x.LocalOfferId
}
- return ""
+ return nil
}
-func (x *WithdrawRequest) GetSatoshi() *AmountOrAll {
+func (x *ListinvoicesInvoices) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
+ }
+ return 0
+}
+
+func (x *ListinvoicesInvoices) GetAmountReceivedMsat() *Amount {
if x != nil {
- return x.Satoshi
+ return x.AmountReceivedMsat
}
return nil
}
-func (x *WithdrawRequest) GetFeerate() *Feerate {
+func (x *ListinvoicesInvoices) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
+ }
+ return 0
+}
+
+func (x *ListinvoicesInvoices) GetPaymentPreimage() []byte {
if x != nil {
- return x.Feerate
+ return x.PaymentPreimage
}
return nil
}
-func (x *WithdrawRequest) GetMinconf() uint32 {
- if x != nil && x.Minconf != nil {
- return *x.Minconf
+func (x *ListinvoicesInvoices) GetInvreqPayerNote() string {
+ if x != nil && x.InvreqPayerNote != nil {
+ return *x.InvreqPayerNote
+ }
+ return ""
+}
+
+func (x *ListinvoicesInvoices) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
}
return 0
}
-func (x *WithdrawRequest) GetUtxos() []*Outpoint {
+func (x *ListinvoicesInvoices) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *ListinvoicesInvoices) GetPaidOutpoint() *ListinvoicesInvoicesPaidOutpoint {
if x != nil {
- return x.Utxos
+ return x.PaidOutpoint
}
return nil
}
-type WithdrawResponse struct {
+type ListinvoicesInvoicesPaidOutpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
- Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
- Psbt string `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}
-func (x *WithdrawResponse) Reset() {
- *x = WithdrawResponse{}
+func (x *ListinvoicesInvoicesPaidOutpoint) Reset() {
+ *x = ListinvoicesInvoicesPaidOutpoint{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[90]
+ mi := &file_node_proto_msgTypes[88]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WithdrawResponse) String() string {
+func (x *ListinvoicesInvoicesPaidOutpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WithdrawResponse) ProtoMessage() {}
+func (*ListinvoicesInvoicesPaidOutpoint) ProtoMessage() {}
-func (x *WithdrawResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[90]
+func (x *ListinvoicesInvoicesPaidOutpoint) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[88]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9854,65 +9735,61 @@ func (x *WithdrawResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WithdrawResponse.ProtoReflect.Descriptor instead.
-func (*WithdrawResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{90}
-}
-
-func (x *WithdrawResponse) GetTx() []byte {
- if x != nil {
- return x.Tx
- }
- return nil
+// Deprecated: Use ListinvoicesInvoicesPaidOutpoint.ProtoReflect.Descriptor instead.
+func (*ListinvoicesInvoicesPaidOutpoint) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{88}
}
-func (x *WithdrawResponse) GetTxid() []byte {
+func (x *ListinvoicesInvoicesPaidOutpoint) GetTxid() []byte {
if x != nil {
return x.Txid
}
return nil
}
-func (x *WithdrawResponse) GetPsbt() string {
+func (x *ListinvoicesInvoicesPaidOutpoint) GetOutnum() uint32 {
if x != nil {
- return x.Psbt
+ return x.Outnum
}
- return ""
+ return 0
}
-type KeysendRequest struct {
+type SendonionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Destination []byte `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Maxfeepercent *float64 `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
- RetryFor *uint32 `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
- Maxdelay *uint32 `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
- Exemptfee *Amount `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
- Routehints *RoutehintList `protobuf:"bytes,8,opt,name=routehints,proto3,oneof" json:"routehints,omitempty"`
- Extratlvs *TlvStream `protobuf:"bytes,9,opt,name=extratlvs,proto3,oneof" json:"extratlvs,omitempty"`
+ Onion []byte `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
+ FirstHop *SendonionFirstHop `protobuf:"bytes,2,opt,name=first_hop,json=firstHop,proto3" json:"first_hop,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Label *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ SharedSecrets [][]byte `protobuf:"bytes,5,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
+ Partid *uint32 `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Destination []byte `protobuf:"bytes,9,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ Groupid *uint64 `protobuf:"varint,11,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,12,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Localinvreqid []byte `protobuf:"bytes,13,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
+ Description *string `protobuf:"bytes,14,opt,name=description,proto3,oneof" json:"description,omitempty"`
}
-func (x *KeysendRequest) Reset() {
- *x = KeysendRequest{}
+func (x *SendonionRequest) Reset() {
+ *x = SendonionRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[91]
+ mi := &file_node_proto_msgTypes[89]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *KeysendRequest) String() string {
+func (x *SendonionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*KeysendRequest) ProtoMessage() {}
+func (*SendonionRequest) ProtoMessage() {}
-func (x *KeysendRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[91]
+func (x *SendonionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[89]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -9923,107 +9800,134 @@ func (x *KeysendRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use KeysendRequest.ProtoReflect.Descriptor instead.
-func (*KeysendRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{91}
+// Deprecated: Use SendonionRequest.ProtoReflect.Descriptor instead.
+func (*SendonionRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{89}
}
-func (x *KeysendRequest) GetDestination() []byte {
+func (x *SendonionRequest) GetOnion() []byte {
if x != nil {
- return x.Destination
+ return x.Onion
}
return nil
}
-func (x *KeysendRequest) GetAmountMsat() *Amount {
+func (x *SendonionRequest) GetFirstHop() *SendonionFirstHop {
if x != nil {
- return x.AmountMsat
+ return x.FirstHop
}
return nil
}
-func (x *KeysendRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
- }
- return ""
+func (x *SendonionRequest) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
}
-func (x *KeysendRequest) GetMaxfeepercent() float64 {
- if x != nil && x.Maxfeepercent != nil {
- return *x.Maxfeepercent
+func (x *SendonionRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
- return 0
+ return ""
}
-func (x *KeysendRequest) GetRetryFor() uint32 {
- if x != nil && x.RetryFor != nil {
- return *x.RetryFor
+func (x *SendonionRequest) GetSharedSecrets() [][]byte {
+ if x != nil {
+ return x.SharedSecrets
}
- return 0
+ return nil
}
-func (x *KeysendRequest) GetMaxdelay() uint32 {
- if x != nil && x.Maxdelay != nil {
- return *x.Maxdelay
+func (x *SendonionRequest) GetPartid() uint32 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
}
return 0
}
-func (x *KeysendRequest) GetExemptfee() *Amount {
+func (x *SendonionRequest) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *SendonionRequest) GetDestination() []byte {
if x != nil {
- return x.Exemptfee
+ return x.Destination
}
return nil
}
-func (x *KeysendRequest) GetRoutehints() *RoutehintList {
+func (x *SendonionRequest) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
+ }
+ return 0
+}
+
+func (x *SendonionRequest) GetAmountMsat() *Amount {
if x != nil {
- return x.Routehints
+ return x.AmountMsat
}
return nil
}
-func (x *KeysendRequest) GetExtratlvs() *TlvStream {
+func (x *SendonionRequest) GetLocalinvreqid() []byte {
if x != nil {
- return x.Extratlvs
+ return x.Localinvreqid
}
return nil
}
-type KeysendResponse struct {
+func (x *SendonionRequest) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+type SendonionResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PaymentPreimage []byte `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
- Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- CreatedAt float64 `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- Parts uint32 `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
- WarningPartialCompletion *string `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
- Status KeysendResponse_KeysendStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.KeysendResponse_KeysendStatus" json:"status,omitempty"`
+ Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status SendonionResponse_SendonionStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.SendonionResponse_SendonionStatus" json:"status,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Destination []byte `protobuf:"bytes,5,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Label *string `protobuf:"bytes,8,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,9,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,10,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,11,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Message *string `protobuf:"bytes,12,opt,name=message,proto3,oneof" json:"message,omitempty"`
+ Partid *uint64 `protobuf:"varint,13,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,14,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,15,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}
-func (x *KeysendResponse) Reset() {
- *x = KeysendResponse{}
+func (x *SendonionResponse) Reset() {
+ *x = SendonionResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[92]
+ mi := &file_node_proto_msgTypes[90]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *KeysendResponse) String() string {
+func (x *SendonionResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*KeysendResponse) ProtoMessage() {}
+func (*SendonionResponse) ProtoMessage() {}
-func (x *KeysendResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[92]
+func (x *SendonionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[90]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10034,108 +9938,143 @@ func (x *KeysendResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use KeysendResponse.ProtoReflect.Descriptor instead.
-func (*KeysendResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{92}
+// Deprecated: Use SendonionResponse.ProtoReflect.Descriptor instead.
+func (*SendonionResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{90}
}
-func (x *KeysendResponse) GetPaymentPreimage() []byte {
+func (x *SendonionResponse) GetId() uint64 {
if x != nil {
- return x.PaymentPreimage
+ return x.Id
}
- return nil
+ return 0
}
-func (x *KeysendResponse) GetDestination() []byte {
+func (x *SendonionResponse) GetPaymentHash() []byte {
if x != nil {
- return x.Destination
+ return x.PaymentHash
}
return nil
}
-func (x *KeysendResponse) GetPaymentHash() []byte {
+func (x *SendonionResponse) GetStatus() SendonionResponse_SendonionStatus {
if x != nil {
- return x.PaymentHash
+ return x.Status
+ }
+ return SendonionResponse_PENDING
+}
+
+func (x *SendonionResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
return nil
}
-func (x *KeysendResponse) GetCreatedAt() float64 {
+func (x *SendonionResponse) GetDestination() []byte {
if x != nil {
- return x.CreatedAt
+ return x.Destination
}
- return 0
+ return nil
}
-func (x *KeysendResponse) GetParts() uint32 {
+func (x *SendonionResponse) GetCreatedAt() uint64 {
if x != nil {
- return x.Parts
+ return x.CreatedAt
}
return 0
}
-func (x *KeysendResponse) GetAmountMsat() *Amount {
+func (x *SendonionResponse) GetAmountSentMsat() *Amount {
if x != nil {
- return x.AmountMsat
+ return x.AmountSentMsat
}
return nil
}
-func (x *KeysendResponse) GetAmountSentMsat() *Amount {
+func (x *SendonionResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *SendonionResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *SendonionResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *SendonionResponse) GetPaymentPreimage() []byte {
if x != nil {
- return x.AmountSentMsat
+ return x.PaymentPreimage
}
return nil
}
-func (x *KeysendResponse) GetWarningPartialCompletion() string {
- if x != nil && x.WarningPartialCompletion != nil {
- return *x.WarningPartialCompletion
+func (x *SendonionResponse) GetMessage() string {
+ if x != nil && x.Message != nil {
+ return *x.Message
}
return ""
}
-func (x *KeysendResponse) GetStatus() KeysendResponse_KeysendStatus {
- if x != nil {
- return x.Status
+func (x *SendonionResponse) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
}
- return KeysendResponse_COMPLETE
+ return 0
}
-type FundpsbtRequest struct {
+func (x *SendonionResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *SendonionResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+type SendonionFirstHop struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Satoshi *AmountOrAll `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
- Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
- Startweight uint32 `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
- Minconf *uint32 `protobuf:"varint,4,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
- Reserve *uint32 `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
- Locktime *uint32 `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
- MinWitnessWeight *uint32 `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
- ExcessAsChange *bool `protobuf:"varint,8,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
- Nonwrapped *bool `protobuf:"varint,9,opt,name=nonwrapped,proto3,oneof" json:"nonwrapped,omitempty"`
- OpeningAnchorChannel *bool `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ Delay uint32 `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
}
-func (x *FundpsbtRequest) Reset() {
- *x = FundpsbtRequest{}
+func (x *SendonionFirstHop) Reset() {
+ *x = SendonionFirstHop{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[93]
+ mi := &file_node_proto_msgTypes[91]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *FundpsbtRequest) String() string {
+func (x *SendonionFirstHop) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FundpsbtRequest) ProtoMessage() {}
+func (*SendonionFirstHop) ProtoMessage() {}
-func (x *FundpsbtRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[93]
+func (x *SendonionFirstHop) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[91]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10146,111 +10085,62 @@ func (x *FundpsbtRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FundpsbtRequest.ProtoReflect.Descriptor instead.
-func (*FundpsbtRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{93}
+// Deprecated: Use SendonionFirstHop.ProtoReflect.Descriptor instead.
+func (*SendonionFirstHop) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{91}
}
-func (x *FundpsbtRequest) GetSatoshi() *AmountOrAll {
+func (x *SendonionFirstHop) GetId() []byte {
if x != nil {
- return x.Satoshi
+ return x.Id
}
return nil
}
-func (x *FundpsbtRequest) GetFeerate() *Feerate {
+func (x *SendonionFirstHop) GetAmountMsat() *Amount {
if x != nil {
- return x.Feerate
+ return x.AmountMsat
}
return nil
}
-func (x *FundpsbtRequest) GetStartweight() uint32 {
+func (x *SendonionFirstHop) GetDelay() uint32 {
if x != nil {
- return x.Startweight
+ return x.Delay
}
return 0
}
-func (x *FundpsbtRequest) GetMinconf() uint32 {
- if x != nil && x.Minconf != nil {
- return *x.Minconf
- }
- return 0
+type ListsendpaysRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bolt11 *string `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
+ Status *ListsendpaysRequest_ListsendpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListsendpaysRequest_ListsendpaysStatus,oneof" json:"status,omitempty"`
+ Index *ListsendpaysRequest_ListsendpaysIndex `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListsendpaysRequest_ListsendpaysIndex,oneof" json:"index,omitempty"`
+ Start *uint64 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
+ Limit *uint32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}
-func (x *FundpsbtRequest) GetReserve() uint32 {
- if x != nil && x.Reserve != nil {
- return *x.Reserve
- }
- return 0
-}
-
-func (x *FundpsbtRequest) GetLocktime() uint32 {
- if x != nil && x.Locktime != nil {
- return *x.Locktime
- }
- return 0
-}
-
-func (x *FundpsbtRequest) GetMinWitnessWeight() uint32 {
- if x != nil && x.MinWitnessWeight != nil {
- return *x.MinWitnessWeight
- }
- return 0
-}
-
-func (x *FundpsbtRequest) GetExcessAsChange() bool {
- if x != nil && x.ExcessAsChange != nil {
- return *x.ExcessAsChange
- }
- return false
-}
-
-func (x *FundpsbtRequest) GetNonwrapped() bool {
- if x != nil && x.Nonwrapped != nil {
- return *x.Nonwrapped
- }
- return false
-}
-
-func (x *FundpsbtRequest) GetOpeningAnchorChannel() bool {
- if x != nil && x.OpeningAnchorChannel != nil {
- return *x.OpeningAnchorChannel
- }
- return false
-}
-
-type FundpsbtResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- FeeratePerKw uint32 `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
- EstimatedFinalWeight uint32 `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
- ExcessMsat *Amount `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
- ChangeOutnum *uint32 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
- Reservations []*FundpsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
-}
-
-func (x *FundpsbtResponse) Reset() {
- *x = FundpsbtResponse{}
+func (x *ListsendpaysRequest) Reset() {
+ *x = ListsendpaysRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[94]
+ mi := &file_node_proto_msgTypes[92]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *FundpsbtResponse) String() string {
+func (x *ListsendpaysRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FundpsbtResponse) ProtoMessage() {}
+func (*ListsendpaysRequest) ProtoMessage() {}
-func (x *FundpsbtResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[94]
+func (x *ListsendpaysRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[92]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10261,82 +10151,78 @@ func (x *FundpsbtResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FundpsbtResponse.ProtoReflect.Descriptor instead.
-func (*FundpsbtResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{94}
+// Deprecated: Use ListsendpaysRequest.ProtoReflect.Descriptor instead.
+func (*ListsendpaysRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{92}
}
-func (x *FundpsbtResponse) GetPsbt() string {
- if x != nil {
- return x.Psbt
+func (x *ListsendpaysRequest) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
return ""
}
-func (x *FundpsbtResponse) GetFeeratePerKw() uint32 {
+func (x *ListsendpaysRequest) GetPaymentHash() []byte {
if x != nil {
- return x.FeeratePerKw
+ return x.PaymentHash
}
- return 0
+ return nil
}
-func (x *FundpsbtResponse) GetEstimatedFinalWeight() uint32 {
- if x != nil {
- return x.EstimatedFinalWeight
+func (x *ListsendpaysRequest) GetStatus() ListsendpaysRequest_ListsendpaysStatus {
+ if x != nil && x.Status != nil {
+ return *x.Status
}
- return 0
+ return ListsendpaysRequest_PENDING
}
-func (x *FundpsbtResponse) GetExcessMsat() *Amount {
- if x != nil {
- return x.ExcessMsat
+func (x *ListsendpaysRequest) GetIndex() ListsendpaysRequest_ListsendpaysIndex {
+ if x != nil && x.Index != nil {
+ return *x.Index
}
- return nil
+ return ListsendpaysRequest_CREATED
}
-func (x *FundpsbtResponse) GetChangeOutnum() uint32 {
- if x != nil && x.ChangeOutnum != nil {
- return *x.ChangeOutnum
+func (x *ListsendpaysRequest) GetStart() uint64 {
+ if x != nil && x.Start != nil {
+ return *x.Start
}
return 0
}
-func (x *FundpsbtResponse) GetReservations() []*FundpsbtReservations {
- if x != nil {
- return x.Reservations
+func (x *ListsendpaysRequest) GetLimit() uint32 {
+ if x != nil && x.Limit != nil {
+ return *x.Limit
}
- return nil
+ return 0
}
-type FundpsbtReservations struct {
+type ListsendpaysResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
- Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
- WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
- Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
- ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
+ Payments []*ListsendpaysPayments `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
}
-func (x *FundpsbtReservations) Reset() {
- *x = FundpsbtReservations{}
+func (x *ListsendpaysResponse) Reset() {
+ *x = ListsendpaysResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[95]
+ mi := &file_node_proto_msgTypes[93]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *FundpsbtReservations) String() string {
+func (x *ListsendpaysResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FundpsbtReservations) ProtoMessage() {}
+func (*ListsendpaysResponse) ProtoMessage() {}
-func (x *FundpsbtReservations) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[95]
+func (x *ListsendpaysResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[93]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10347,72 +10233,60 @@ func (x *FundpsbtReservations) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FundpsbtReservations.ProtoReflect.Descriptor instead.
-func (*FundpsbtReservations) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{95}
+// Deprecated: Use ListsendpaysResponse.ProtoReflect.Descriptor instead.
+func (*ListsendpaysResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{93}
}
-func (x *FundpsbtReservations) GetTxid() []byte {
+func (x *ListsendpaysResponse) GetPayments() []*ListsendpaysPayments {
if x != nil {
- return x.Txid
+ return x.Payments
}
return nil
}
-func (x *FundpsbtReservations) GetVout() uint32 {
- if x != nil {
- return x.Vout
- }
- return 0
-}
-
-func (x *FundpsbtReservations) GetWasReserved() bool {
- if x != nil {
- return x.WasReserved
- }
- return false
-}
-
-func (x *FundpsbtReservations) GetReserved() bool {
- if x != nil {
- return x.Reserved
- }
- return false
-}
-
-func (x *FundpsbtReservations) GetReservedToBlock() uint32 {
- if x != nil {
- return x.ReservedToBlock
- }
- return 0
-}
-
-type SendpsbtRequest struct {
+type ListsendpaysPayments struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- Reserve *bool `protobuf:"varint,2,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+ Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
+ Groupid uint64 `protobuf:"varint,2,opt,name=groupid,proto3" json:"groupid,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status ListsendpaysPayments_ListsendpaysPaymentsStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListsendpaysPayments_ListsendpaysPaymentsStatus" json:"status,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,10,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,11,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Erroronion []byte `protobuf:"bytes,13,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
+ Description *string `protobuf:"bytes,14,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ Partid *uint64 `protobuf:"varint,15,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ CompletedAt *uint64 `protobuf:"varint,18,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
}
-func (x *SendpsbtRequest) Reset() {
- *x = SendpsbtRequest{}
+func (x *ListsendpaysPayments) Reset() {
+ *x = ListsendpaysPayments{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[96]
+ mi := &file_node_proto_msgTypes[94]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendpsbtRequest) String() string {
+func (x *ListsendpaysPayments) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendpsbtRequest) ProtoMessage() {}
+func (*ListsendpaysPayments) ProtoMessage() {}
-func (x *SendpsbtRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[96]
+func (x *ListsendpaysPayments) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[94]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10423,106 +10297,160 @@ func (x *SendpsbtRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendpsbtRequest.ProtoReflect.Descriptor instead.
-func (*SendpsbtRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{96}
+// Deprecated: Use ListsendpaysPayments.ProtoReflect.Descriptor instead.
+func (*ListsendpaysPayments) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{94}
}
-func (x *SendpsbtRequest) GetPsbt() string {
+func (x *ListsendpaysPayments) GetId() uint64 {
if x != nil {
- return x.Psbt
+ return x.Id
}
- return ""
+ return 0
}
-func (x *SendpsbtRequest) GetReserve() bool {
- if x != nil && x.Reserve != nil {
- return *x.Reserve
+func (x *ListsendpaysPayments) GetGroupid() uint64 {
+ if x != nil {
+ return x.Groupid
}
- return false
-}
-
-type SendpsbtResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
- Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+ return 0
}
-func (x *SendpsbtResponse) Reset() {
- *x = SendpsbtResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[97]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListsendpaysPayments) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
+ return nil
}
-func (x *SendpsbtResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListsendpaysPayments) GetStatus() ListsendpaysPayments_ListsendpaysPaymentsStatus {
+ if x != nil {
+ return x.Status
+ }
+ return ListsendpaysPayments_PENDING
}
-func (*SendpsbtResponse) ProtoMessage() {}
+func (x *ListsendpaysPayments) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
-func (x *SendpsbtResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[97]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListsendpaysPayments) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use SendpsbtResponse.ProtoReflect.Descriptor instead.
-func (*SendpsbtResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{97}
+func (x *ListsendpaysPayments) GetCreatedAt() uint64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
}
-func (x *SendpsbtResponse) GetTx() []byte {
+func (x *ListsendpaysPayments) GetAmountSentMsat() *Amount {
if x != nil {
- return x.Tx
+ return x.AmountSentMsat
}
return nil
}
-func (x *SendpsbtResponse) GetTxid() []byte {
+func (x *ListsendpaysPayments) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *ListsendpaysPayments) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *ListsendpaysPayments) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *ListsendpaysPayments) GetPaymentPreimage() []byte {
if x != nil {
- return x.Txid
+ return x.PaymentPreimage
}
return nil
}
-type SignpsbtRequest struct {
+func (x *ListsendpaysPayments) GetErroronion() []byte {
+ if x != nil {
+ return x.Erroronion
+ }
+ return nil
+}
+
+func (x *ListsendpaysPayments) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *ListsendpaysPayments) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
+ }
+ return 0
+}
+
+func (x *ListsendpaysPayments) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *ListsendpaysPayments) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *ListsendpaysPayments) GetCompletedAt() uint64 {
+ if x != nil && x.CompletedAt != nil {
+ return *x.CompletedAt
+ }
+ return 0
+}
+
+type ListtransactionsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- Signonly []uint32 `protobuf:"varint,2,rep,packed,name=signonly,proto3" json:"signonly,omitempty"`
}
-func (x *SignpsbtRequest) Reset() {
- *x = SignpsbtRequest{}
+func (x *ListtransactionsRequest) Reset() {
+ *x = ListtransactionsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[98]
+ mi := &file_node_proto_msgTypes[95]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SignpsbtRequest) String() string {
+func (x *ListtransactionsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SignpsbtRequest) ProtoMessage() {}
+func (*ListtransactionsRequest) ProtoMessage() {}
-func (x *SignpsbtRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[98]
+func (x *ListtransactionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[95]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10533,50 +10461,36 @@ func (x *SignpsbtRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SignpsbtRequest.ProtoReflect.Descriptor instead.
-func (*SignpsbtRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{98}
-}
-
-func (x *SignpsbtRequest) GetPsbt() string {
- if x != nil {
- return x.Psbt
- }
- return ""
-}
-
-func (x *SignpsbtRequest) GetSignonly() []uint32 {
- if x != nil {
- return x.Signonly
- }
- return nil
+// Deprecated: Use ListtransactionsRequest.ProtoReflect.Descriptor instead.
+func (*ListtransactionsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{95}
}
-type SignpsbtResponse struct {
+type ListtransactionsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- SignedPsbt string `protobuf:"bytes,1,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"`
+ Transactions []*ListtransactionsTransactions `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"`
}
-func (x *SignpsbtResponse) Reset() {
- *x = SignpsbtResponse{}
+func (x *ListtransactionsResponse) Reset() {
+ *x = ListtransactionsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[99]
+ mi := &file_node_proto_msgTypes[96]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SignpsbtResponse) String() string {
+func (x *ListtransactionsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SignpsbtResponse) ProtoMessage() {}
+func (*ListtransactionsResponse) ProtoMessage() {}
-func (x *SignpsbtResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[99]
+func (x *ListtransactionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[96]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10587,52 +10501,50 @@ func (x *SignpsbtResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SignpsbtResponse.ProtoReflect.Descriptor instead.
-func (*SignpsbtResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{99}
+// Deprecated: Use ListtransactionsResponse.ProtoReflect.Descriptor instead.
+func (*ListtransactionsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{96}
}
-func (x *SignpsbtResponse) GetSignedPsbt() string {
+func (x *ListtransactionsResponse) GetTransactions() []*ListtransactionsTransactions {
if x != nil {
- return x.SignedPsbt
+ return x.Transactions
}
- return ""
+ return nil
}
-type UtxopsbtRequest struct {
+type ListtransactionsTransactions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Satoshi *Amount `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
- Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
- Startweight uint32 `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
- Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
- Reserve *uint32 `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
- Reservedok *bool `protobuf:"varint,8,opt,name=reservedok,proto3,oneof" json:"reservedok,omitempty"`
- Locktime *uint32 `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
- MinWitnessWeight *uint32 `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
- ExcessAsChange *bool `protobuf:"varint,9,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
- OpeningAnchorChannel *bool `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
+ Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
+ Rawtx []byte `protobuf:"bytes,2,opt,name=rawtx,proto3" json:"rawtx,omitempty"`
+ Blockheight uint32 `protobuf:"varint,3,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
+ Txindex uint32 `protobuf:"varint,4,opt,name=txindex,proto3" json:"txindex,omitempty"`
+ Locktime uint32 `protobuf:"varint,7,opt,name=locktime,proto3" json:"locktime,omitempty"`
+ Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
+ Inputs []*ListtransactionsTransactionsInputs `protobuf:"bytes,9,rep,name=inputs,proto3" json:"inputs,omitempty"`
+ Outputs []*ListtransactionsTransactionsOutputs `protobuf:"bytes,10,rep,name=outputs,proto3" json:"outputs,omitempty"`
}
-func (x *UtxopsbtRequest) Reset() {
- *x = UtxopsbtRequest{}
+func (x *ListtransactionsTransactions) Reset() {
+ *x = ListtransactionsTransactions{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[100]
+ mi := &file_node_proto_msgTypes[97]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *UtxopsbtRequest) String() string {
+func (x *ListtransactionsTransactions) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*UtxopsbtRequest) ProtoMessage() {}
+func (*ListtransactionsTransactions) ProtoMessage() {}
-func (x *UtxopsbtRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[100]
+func (x *ListtransactionsTransactions) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[97]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10643,111 +10555,94 @@ func (x *UtxopsbtRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use UtxopsbtRequest.ProtoReflect.Descriptor instead.
-func (*UtxopsbtRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{100}
+// Deprecated: Use ListtransactionsTransactions.ProtoReflect.Descriptor instead.
+func (*ListtransactionsTransactions) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{97}
}
-func (x *UtxopsbtRequest) GetSatoshi() *Amount {
+func (x *ListtransactionsTransactions) GetHash() []byte {
if x != nil {
- return x.Satoshi
+ return x.Hash
}
return nil
}
-func (x *UtxopsbtRequest) GetFeerate() *Feerate {
+func (x *ListtransactionsTransactions) GetRawtx() []byte {
if x != nil {
- return x.Feerate
+ return x.Rawtx
}
return nil
}
-func (x *UtxopsbtRequest) GetStartweight() uint32 {
+func (x *ListtransactionsTransactions) GetBlockheight() uint32 {
if x != nil {
- return x.Startweight
+ return x.Blockheight
}
return 0
}
-func (x *UtxopsbtRequest) GetUtxos() []*Outpoint {
+func (x *ListtransactionsTransactions) GetTxindex() uint32 {
if x != nil {
- return x.Utxos
- }
- return nil
-}
-
-func (x *UtxopsbtRequest) GetReserve() uint32 {
- if x != nil && x.Reserve != nil {
- return *x.Reserve
+ return x.Txindex
}
return 0
}
-func (x *UtxopsbtRequest) GetReservedok() bool {
- if x != nil && x.Reservedok != nil {
- return *x.Reservedok
- }
- return false
-}
-
-func (x *UtxopsbtRequest) GetLocktime() uint32 {
- if x != nil && x.Locktime != nil {
- return *x.Locktime
+func (x *ListtransactionsTransactions) GetLocktime() uint32 {
+ if x != nil {
+ return x.Locktime
}
return 0
}
-func (x *UtxopsbtRequest) GetMinWitnessWeight() uint32 {
- if x != nil && x.MinWitnessWeight != nil {
- return *x.MinWitnessWeight
+func (x *ListtransactionsTransactions) GetVersion() uint32 {
+ if x != nil {
+ return x.Version
}
return 0
}
-func (x *UtxopsbtRequest) GetExcessAsChange() bool {
- if x != nil && x.ExcessAsChange != nil {
- return *x.ExcessAsChange
+func (x *ListtransactionsTransactions) GetInputs() []*ListtransactionsTransactionsInputs {
+ if x != nil {
+ return x.Inputs
}
- return false
+ return nil
}
-func (x *UtxopsbtRequest) GetOpeningAnchorChannel() bool {
- if x != nil && x.OpeningAnchorChannel != nil {
- return *x.OpeningAnchorChannel
+func (x *ListtransactionsTransactions) GetOutputs() []*ListtransactionsTransactionsOutputs {
+ if x != nil {
+ return x.Outputs
}
- return false
+ return nil
}
-type UtxopsbtResponse struct {
+type ListtransactionsTransactionsInputs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- FeeratePerKw uint32 `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
- EstimatedFinalWeight uint32 `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
- ExcessMsat *Amount `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
- ChangeOutnum *uint32 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
- Reservations []*UtxopsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
+ Sequence uint32 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"`
}
-func (x *UtxopsbtResponse) Reset() {
- *x = UtxopsbtResponse{}
+func (x *ListtransactionsTransactionsInputs) Reset() {
+ *x = ListtransactionsTransactionsInputs{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[101]
+ mi := &file_node_proto_msgTypes[98]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *UtxopsbtResponse) String() string {
+func (x *ListtransactionsTransactionsInputs) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*UtxopsbtResponse) ProtoMessage() {}
+func (*ListtransactionsTransactionsInputs) ProtoMessage() {}
-func (x *UtxopsbtResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[101]
+func (x *ListtransactionsTransactionsInputs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[98]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10758,82 +10653,59 @@ func (x *UtxopsbtResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use UtxopsbtResponse.ProtoReflect.Descriptor instead.
-func (*UtxopsbtResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{101}
-}
-
-func (x *UtxopsbtResponse) GetPsbt() string {
- if x != nil {
- return x.Psbt
- }
- return ""
+// Deprecated: Use ListtransactionsTransactionsInputs.ProtoReflect.Descriptor instead.
+func (*ListtransactionsTransactionsInputs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{98}
}
-func (x *UtxopsbtResponse) GetFeeratePerKw() uint32 {
+func (x *ListtransactionsTransactionsInputs) GetTxid() []byte {
if x != nil {
- return x.FeeratePerKw
+ return x.Txid
}
- return 0
+ return nil
}
-func (x *UtxopsbtResponse) GetEstimatedFinalWeight() uint32 {
+func (x *ListtransactionsTransactionsInputs) GetIndex() uint32 {
if x != nil {
- return x.EstimatedFinalWeight
+ return x.Index
}
return 0
}
-func (x *UtxopsbtResponse) GetExcessMsat() *Amount {
+func (x *ListtransactionsTransactionsInputs) GetSequence() uint32 {
if x != nil {
- return x.ExcessMsat
- }
- return nil
-}
-
-func (x *UtxopsbtResponse) GetChangeOutnum() uint32 {
- if x != nil && x.ChangeOutnum != nil {
- return *x.ChangeOutnum
+ return x.Sequence
}
return 0
}
-func (x *UtxopsbtResponse) GetReservations() []*UtxopsbtReservations {
- if x != nil {
- return x.Reservations
- }
- return nil
-}
-
-type UtxopsbtReservations struct {
+type ListtransactionsTransactionsOutputs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
- Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
- WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
- Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
- ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
+ Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
+ ScriptPubKey []byte `protobuf:"bytes,3,opt,name=scriptPubKey,proto3" json:"scriptPubKey,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}
-func (x *UtxopsbtReservations) Reset() {
- *x = UtxopsbtReservations{}
+func (x *ListtransactionsTransactionsOutputs) Reset() {
+ *x = ListtransactionsTransactionsOutputs{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[102]
+ mi := &file_node_proto_msgTypes[99]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *UtxopsbtReservations) String() string {
+func (x *ListtransactionsTransactionsOutputs) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*UtxopsbtReservations) ProtoMessage() {}
+func (*ListtransactionsTransactionsOutputs) ProtoMessage() {}
-func (x *UtxopsbtReservations) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[102]
+func (x *ListtransactionsTransactionsOutputs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[99]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10844,71 +10716,58 @@ func (x *UtxopsbtReservations) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use UtxopsbtReservations.ProtoReflect.Descriptor instead.
-func (*UtxopsbtReservations) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{102}
-}
-
-func (x *UtxopsbtReservations) GetTxid() []byte {
- if x != nil {
- return x.Txid
- }
- return nil
+// Deprecated: Use ListtransactionsTransactionsOutputs.ProtoReflect.Descriptor instead.
+func (*ListtransactionsTransactionsOutputs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{99}
}
-func (x *UtxopsbtReservations) GetVout() uint32 {
+func (x *ListtransactionsTransactionsOutputs) GetIndex() uint32 {
if x != nil {
- return x.Vout
+ return x.Index
}
return 0
}
-func (x *UtxopsbtReservations) GetWasReserved() bool {
- if x != nil {
- return x.WasReserved
- }
- return false
-}
-
-func (x *UtxopsbtReservations) GetReserved() bool {
+func (x *ListtransactionsTransactionsOutputs) GetScriptPubKey() []byte {
if x != nil {
- return x.Reserved
+ return x.ScriptPubKey
}
- return false
+ return nil
}
-func (x *UtxopsbtReservations) GetReservedToBlock() uint32 {
+func (x *ListtransactionsTransactionsOutputs) GetAmountMsat() *Amount {
if x != nil {
- return x.ReservedToBlock
+ return x.AmountMsat
}
- return 0
+ return nil
}
-type TxdiscardRequest struct {
+type MakesecretRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Hex []byte `protobuf:"bytes,1,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ String_ *string `protobuf:"bytes,2,opt,name=string,proto3,oneof" json:"string,omitempty"`
}
-func (x *TxdiscardRequest) Reset() {
- *x = TxdiscardRequest{}
+func (x *MakesecretRequest) Reset() {
+ *x = MakesecretRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[103]
+ mi := &file_node_proto_msgTypes[100]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *TxdiscardRequest) String() string {
+func (x *MakesecretRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*TxdiscardRequest) ProtoMessage() {}
+func (*MakesecretRequest) ProtoMessage() {}
-func (x *TxdiscardRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[103]
+func (x *MakesecretRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[100]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10919,44 +10778,50 @@ func (x *TxdiscardRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use TxdiscardRequest.ProtoReflect.Descriptor instead.
-func (*TxdiscardRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{103}
+// Deprecated: Use MakesecretRequest.ProtoReflect.Descriptor instead.
+func (*MakesecretRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{100}
}
-func (x *TxdiscardRequest) GetTxid() []byte {
+func (x *MakesecretRequest) GetHex() []byte {
if x != nil {
- return x.Txid
+ return x.Hex
}
return nil
}
-type TxdiscardResponse struct {
+func (x *MakesecretRequest) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
+ }
+ return ""
+}
+
+type MakesecretResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- UnsignedTx []byte `protobuf:"bytes,1,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
- Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+ Secret []byte `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}
-func (x *TxdiscardResponse) Reset() {
- *x = TxdiscardResponse{}
+func (x *MakesecretResponse) Reset() {
+ *x = MakesecretResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[104]
+ mi := &file_node_proto_msgTypes[101]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *TxdiscardResponse) String() string {
+func (x *MakesecretResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*TxdiscardResponse) ProtoMessage() {}
+func (*MakesecretResponse) ProtoMessage() {}
-func (x *TxdiscardResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[104]
+func (x *MakesecretResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[101]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -10967,53 +10832,55 @@ func (x *TxdiscardResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use TxdiscardResponse.ProtoReflect.Descriptor instead.
-func (*TxdiscardResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{104}
-}
-
-func (x *TxdiscardResponse) GetUnsignedTx() []byte {
- if x != nil {
- return x.UnsignedTx
- }
- return nil
+// Deprecated: Use MakesecretResponse.ProtoReflect.Descriptor instead.
+func (*MakesecretResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{101}
}
-func (x *TxdiscardResponse) GetTxid() []byte {
+func (x *MakesecretResponse) GetSecret() []byte {
if x != nil {
- return x.Txid
+ return x.Secret
}
return nil
}
-type TxprepareRequest struct {
+type PayRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Outputs []*OutputDesc `protobuf:"bytes,5,rep,name=outputs,proto3" json:"outputs,omitempty"`
- Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- Minconf *uint32 `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
- Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+ Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Maxfeepercent *float64 `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
+ RetryFor *uint32 `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
+ Maxdelay *uint32 `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
+ Exemptfee *Amount `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
+ Riskfactor *float64 `protobuf:"fixed64,8,opt,name=riskfactor,proto3,oneof" json:"riskfactor,omitempty"`
+ Exclude []string `protobuf:"bytes,10,rep,name=exclude,proto3" json:"exclude,omitempty"`
+ Maxfee *Amount `protobuf:"bytes,11,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
+ Description *string `protobuf:"bytes,12,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,13,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Localinvreqid []byte `protobuf:"bytes,14,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
+ PartialMsat *Amount `protobuf:"bytes,15,opt,name=partial_msat,json=partialMsat,proto3,oneof" json:"partial_msat,omitempty"`
}
-func (x *TxprepareRequest) Reset() {
- *x = TxprepareRequest{}
+func (x *PayRequest) Reset() {
+ *x = PayRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[105]
+ mi := &file_node_proto_msgTypes[102]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *TxprepareRequest) String() string {
+func (x *PayRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*TxprepareRequest) ProtoMessage() {}
+func (*PayRequest) ProtoMessage() {}
-func (x *TxprepareRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[105]
+func (x *PayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[102]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11024,127 +10891,135 @@ func (x *TxprepareRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use TxprepareRequest.ProtoReflect.Descriptor instead.
-func (*TxprepareRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{105}
+// Deprecated: Use PayRequest.ProtoReflect.Descriptor instead.
+func (*PayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{102}
}
-func (x *TxprepareRequest) GetOutputs() []*OutputDesc {
+func (x *PayRequest) GetBolt11() string {
if x != nil {
- return x.Outputs
+ return x.Bolt11
}
- return nil
+ return ""
}
-func (x *TxprepareRequest) GetFeerate() *Feerate {
- if x != nil {
- return x.Feerate
+func (x *PayRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
- return nil
+ return ""
}
-func (x *TxprepareRequest) GetMinconf() uint32 {
- if x != nil && x.Minconf != nil {
- return *x.Minconf
+func (x *PayRequest) GetMaxfeepercent() float64 {
+ if x != nil && x.Maxfeepercent != nil {
+ return *x.Maxfeepercent
}
return 0
}
-func (x *TxprepareRequest) GetUtxos() []*Outpoint {
- if x != nil {
- return x.Utxos
+func (x *PayRequest) GetRetryFor() uint32 {
+ if x != nil && x.RetryFor != nil {
+ return *x.RetryFor
}
- return nil
+ return 0
}
-type TxprepareResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- UnsignedTx []byte `protobuf:"bytes,2,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
- Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
+func (x *PayRequest) GetMaxdelay() uint32 {
+ if x != nil && x.Maxdelay != nil {
+ return *x.Maxdelay
+ }
+ return 0
}
-func (x *TxprepareResponse) Reset() {
- *x = TxprepareResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[106]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *PayRequest) GetExemptfee() *Amount {
+ if x != nil {
+ return x.Exemptfee
}
+ return nil
}
-func (x *TxprepareResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *PayRequest) GetRiskfactor() float64 {
+ if x != nil && x.Riskfactor != nil {
+ return *x.Riskfactor
+ }
+ return 0
}
-func (*TxprepareResponse) ProtoMessage() {}
+func (x *PayRequest) GetExclude() []string {
+ if x != nil {
+ return x.Exclude
+ }
+ return nil
+}
-func (x *TxprepareResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[106]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *PayRequest) GetMaxfee() *Amount {
+ if x != nil {
+ return x.Maxfee
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use TxprepareResponse.ProtoReflect.Descriptor instead.
-func (*TxprepareResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{106}
+func (x *PayRequest) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
}
-func (x *TxprepareResponse) GetPsbt() string {
+func (x *PayRequest) GetAmountMsat() *Amount {
if x != nil {
- return x.Psbt
+ return x.AmountMsat
}
- return ""
+ return nil
}
-func (x *TxprepareResponse) GetUnsignedTx() []byte {
+func (x *PayRequest) GetLocalinvreqid() []byte {
if x != nil {
- return x.UnsignedTx
+ return x.Localinvreqid
}
return nil
}
-func (x *TxprepareResponse) GetTxid() []byte {
+func (x *PayRequest) GetPartialMsat() *Amount {
if x != nil {
- return x.Txid
+ return x.PartialMsat
}
return nil
}
-type TxsendRequest struct {
+type PayResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
+ Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ CreatedAt float64 `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Parts uint32 `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ WarningPartialCompletion *string `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
+ Status PayResponse_PayStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.PayResponse_PayStatus" json:"status,omitempty"`
}
-func (x *TxsendRequest) Reset() {
- *x = TxsendRequest{}
+func (x *PayResponse) Reset() {
+ *x = PayResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[107]
+ mi := &file_node_proto_msgTypes[103]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *TxsendRequest) String() string {
+func (x *PayResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*TxsendRequest) ProtoMessage() {}
+func (*PayResponse) ProtoMessage() {}
-func (x *TxsendRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[107]
+func (x *PayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[103]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11155,82 +11030,75 @@ func (x *TxsendRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use TxsendRequest.ProtoReflect.Descriptor instead.
-func (*TxsendRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{107}
+// Deprecated: Use PayResponse.ProtoReflect.Descriptor instead.
+func (*PayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{103}
}
-func (x *TxsendRequest) GetTxid() []byte {
+func (x *PayResponse) GetPaymentPreimage() []byte {
if x != nil {
- return x.Txid
+ return x.PaymentPreimage
}
return nil
}
-type TxsendResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
- Tx []byte `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"`
- Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
-}
-
-func (x *TxsendResponse) Reset() {
- *x = TxsendResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[108]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *PayResponse) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
}
+ return nil
}
-func (x *TxsendResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *PayResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
}
-func (*TxsendResponse) ProtoMessage() {}
-
-func (x *TxsendResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[108]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *PayResponse) GetCreatedAt() float64 {
+ if x != nil {
+ return x.CreatedAt
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use TxsendResponse.ProtoReflect.Descriptor instead.
-func (*TxsendResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{108}
+func (x *PayResponse) GetParts() uint32 {
+ if x != nil {
+ return x.Parts
+ }
+ return 0
}
-func (x *TxsendResponse) GetPsbt() string {
+func (x *PayResponse) GetAmountMsat() *Amount {
if x != nil {
- return x.Psbt
+ return x.AmountMsat
}
- return ""
+ return nil
}
-func (x *TxsendResponse) GetTx() []byte {
+func (x *PayResponse) GetAmountSentMsat() *Amount {
if x != nil {
- return x.Tx
+ return x.AmountSentMsat
}
return nil
}
-func (x *TxsendResponse) GetTxid() []byte {
+func (x *PayResponse) GetWarningPartialCompletion() string {
+ if x != nil && x.WarningPartialCompletion != nil {
+ return *x.WarningPartialCompletion
+ }
+ return ""
+}
+
+func (x *PayResponse) GetStatus() PayResponse_PayStatus {
if x != nil {
- return x.Txid
+ return x.Status
}
- return nil
+ return PayResponse_COMPLETE
}
-type ListpeerchannelsRequest struct {
+type ListnodesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
@@ -11238,23 +11106,23 @@ type ListpeerchannelsRequest struct {
Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}
-func (x *ListpeerchannelsRequest) Reset() {
- *x = ListpeerchannelsRequest{}
+func (x *ListnodesRequest) Reset() {
+ *x = ListnodesRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[109]
+ mi := &file_node_proto_msgTypes[104]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsRequest) String() string {
+func (x *ListnodesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsRequest) ProtoMessage() {}
+func (*ListnodesRequest) ProtoMessage() {}
-func (x *ListpeerchannelsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[109]
+func (x *ListnodesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[104]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11265,43 +11133,43 @@ func (x *ListpeerchannelsRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsRequest.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{109}
+// Deprecated: Use ListnodesRequest.ProtoReflect.Descriptor instead.
+func (*ListnodesRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{104}
}
-func (x *ListpeerchannelsRequest) GetId() []byte {
+func (x *ListnodesRequest) GetId() []byte {
if x != nil {
return x.Id
}
return nil
}
-type ListpeerchannelsResponse struct {
+type ListnodesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Channels []*ListpeerchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
+ Nodes []*ListnodesNodes `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
}
-func (x *ListpeerchannelsResponse) Reset() {
- *x = ListpeerchannelsResponse{}
+func (x *ListnodesResponse) Reset() {
+ *x = ListnodesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[110]
+ mi := &file_node_proto_msgTypes[105]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsResponse) String() string {
+func (x *ListnodesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsResponse) ProtoMessage() {}
+func (*ListnodesResponse) ProtoMessage() {}
-func (x *ListpeerchannelsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[110]
+func (x *ListnodesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[105]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11312,96 +11180,49 @@ func (x *ListpeerchannelsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsResponse.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{110}
+// Deprecated: Use ListnodesResponse.ProtoReflect.Descriptor instead.
+func (*ListnodesResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{105}
}
-func (x *ListpeerchannelsResponse) GetChannels() []*ListpeerchannelsChannels {
+func (x *ListnodesResponse) GetNodes() []*ListnodesNodes {
if x != nil {
- return x.Channels
+ return x.Nodes
}
return nil
}
-type ListpeerchannelsChannels struct {
+type ListnodesNodes struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
- PeerConnected *bool `protobuf:"varint,2,opt,name=peer_connected,json=peerConnected,proto3,oneof" json:"peer_connected,omitempty"`
- State *ListpeerchannelsChannels_ListpeerchannelsChannelsState `protobuf:"varint,3,opt,name=state,proto3,enum=cln.ListpeerchannelsChannels_ListpeerchannelsChannelsState,oneof" json:"state,omitempty"`
- ScratchTxid []byte `protobuf:"bytes,4,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
- Updates *ListpeerchannelsChannelsUpdates `protobuf:"bytes,55,opt,name=updates,proto3,oneof" json:"updates,omitempty"`
- IgnoreFeeLimits *bool `protobuf:"varint,54,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
- LostState *bool `protobuf:"varint,57,opt,name=lost_state,json=lostState,proto3,oneof" json:"lost_state,omitempty"`
- Feerate *ListpeerchannelsChannelsFeerate `protobuf:"bytes,6,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- Owner *string `protobuf:"bytes,7,opt,name=owner,proto3,oneof" json:"owner,omitempty"`
- ShortChannelId *string `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
- ChannelId []byte `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
- FundingTxid []byte `protobuf:"bytes,10,opt,name=funding_txid,json=fundingTxid,proto3,oneof" json:"funding_txid,omitempty"`
- FundingOutnum *uint32 `protobuf:"varint,11,opt,name=funding_outnum,json=fundingOutnum,proto3,oneof" json:"funding_outnum,omitempty"`
- InitialFeerate *string `protobuf:"bytes,12,opt,name=initial_feerate,json=initialFeerate,proto3,oneof" json:"initial_feerate,omitempty"`
- LastFeerate *string `protobuf:"bytes,13,opt,name=last_feerate,json=lastFeerate,proto3,oneof" json:"last_feerate,omitempty"`
- NextFeerate *string `protobuf:"bytes,14,opt,name=next_feerate,json=nextFeerate,proto3,oneof" json:"next_feerate,omitempty"`
- NextFeeStep *uint32 `protobuf:"varint,15,opt,name=next_fee_step,json=nextFeeStep,proto3,oneof" json:"next_fee_step,omitempty"`
- Inflight []*ListpeerchannelsChannelsInflight `protobuf:"bytes,16,rep,name=inflight,proto3" json:"inflight,omitempty"`
- CloseTo []byte `protobuf:"bytes,17,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
- Private *bool `protobuf:"varint,18,opt,name=private,proto3,oneof" json:"private,omitempty"`
- Opener *ChannelSide `protobuf:"varint,19,opt,name=opener,proto3,enum=cln.ChannelSide,oneof" json:"opener,omitempty"`
- Closer *ChannelSide `protobuf:"varint,20,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
- Funding *ListpeerchannelsChannelsFunding `protobuf:"bytes,22,opt,name=funding,proto3,oneof" json:"funding,omitempty"`
- ToUsMsat *Amount `protobuf:"bytes,23,opt,name=to_us_msat,json=toUsMsat,proto3,oneof" json:"to_us_msat,omitempty"`
- MinToUsMsat *Amount `protobuf:"bytes,24,opt,name=min_to_us_msat,json=minToUsMsat,proto3,oneof" json:"min_to_us_msat,omitempty"`
- MaxToUsMsat *Amount `protobuf:"bytes,25,opt,name=max_to_us_msat,json=maxToUsMsat,proto3,oneof" json:"max_to_us_msat,omitempty"`
- TotalMsat *Amount `protobuf:"bytes,26,opt,name=total_msat,json=totalMsat,proto3,oneof" json:"total_msat,omitempty"`
- FeeBaseMsat *Amount `protobuf:"bytes,27,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
- FeeProportionalMillionths *uint32 `protobuf:"varint,28,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
- DustLimitMsat *Amount `protobuf:"bytes,29,opt,name=dust_limit_msat,json=dustLimitMsat,proto3,oneof" json:"dust_limit_msat,omitempty"`
- MaxTotalHtlcInMsat *Amount `protobuf:"bytes,30,opt,name=max_total_htlc_in_msat,json=maxTotalHtlcInMsat,proto3,oneof" json:"max_total_htlc_in_msat,omitempty"`
- TheirReserveMsat *Amount `protobuf:"bytes,31,opt,name=their_reserve_msat,json=theirReserveMsat,proto3,oneof" json:"their_reserve_msat,omitempty"`
- OurReserveMsat *Amount `protobuf:"bytes,32,opt,name=our_reserve_msat,json=ourReserveMsat,proto3,oneof" json:"our_reserve_msat,omitempty"`
- SpendableMsat *Amount `protobuf:"bytes,33,opt,name=spendable_msat,json=spendableMsat,proto3,oneof" json:"spendable_msat,omitempty"`
- ReceivableMsat *Amount `protobuf:"bytes,34,opt,name=receivable_msat,json=receivableMsat,proto3,oneof" json:"receivable_msat,omitempty"`
- MinimumHtlcInMsat *Amount `protobuf:"bytes,35,opt,name=minimum_htlc_in_msat,json=minimumHtlcInMsat,proto3,oneof" json:"minimum_htlc_in_msat,omitempty"`
- MinimumHtlcOutMsat *Amount `protobuf:"bytes,36,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3,oneof" json:"minimum_htlc_out_msat,omitempty"`
- MaximumHtlcOutMsat *Amount `protobuf:"bytes,37,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3,oneof" json:"maximum_htlc_out_msat,omitempty"`
- TheirToSelfDelay *uint32 `protobuf:"varint,38,opt,name=their_to_self_delay,json=theirToSelfDelay,proto3,oneof" json:"their_to_self_delay,omitempty"`
- OurToSelfDelay *uint32 `protobuf:"varint,39,opt,name=our_to_self_delay,json=ourToSelfDelay,proto3,oneof" json:"our_to_self_delay,omitempty"`
- MaxAcceptedHtlcs *uint32 `protobuf:"varint,40,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3,oneof" json:"max_accepted_htlcs,omitempty"`
- Alias *ListpeerchannelsChannelsAlias `protobuf:"bytes,41,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
- Status []string `protobuf:"bytes,43,rep,name=status,proto3" json:"status,omitempty"`
- InPaymentsOffered *uint64 `protobuf:"varint,44,opt,name=in_payments_offered,json=inPaymentsOffered,proto3,oneof" json:"in_payments_offered,omitempty"`
- InOfferedMsat *Amount `protobuf:"bytes,45,opt,name=in_offered_msat,json=inOfferedMsat,proto3,oneof" json:"in_offered_msat,omitempty"`
- InPaymentsFulfilled *uint64 `protobuf:"varint,46,opt,name=in_payments_fulfilled,json=inPaymentsFulfilled,proto3,oneof" json:"in_payments_fulfilled,omitempty"`
- InFulfilledMsat *Amount `protobuf:"bytes,47,opt,name=in_fulfilled_msat,json=inFulfilledMsat,proto3,oneof" json:"in_fulfilled_msat,omitempty"`
- OutPaymentsOffered *uint64 `protobuf:"varint,48,opt,name=out_payments_offered,json=outPaymentsOffered,proto3,oneof" json:"out_payments_offered,omitempty"`
- OutOfferedMsat *Amount `protobuf:"bytes,49,opt,name=out_offered_msat,json=outOfferedMsat,proto3,oneof" json:"out_offered_msat,omitempty"`
- OutPaymentsFulfilled *uint64 `protobuf:"varint,50,opt,name=out_payments_fulfilled,json=outPaymentsFulfilled,proto3,oneof" json:"out_payments_fulfilled,omitempty"`
- OutFulfilledMsat *Amount `protobuf:"bytes,51,opt,name=out_fulfilled_msat,json=outFulfilledMsat,proto3,oneof" json:"out_fulfilled_msat,omitempty"`
- LastStableConnection *uint64 `protobuf:"varint,56,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
- Htlcs []*ListpeerchannelsChannelsHtlcs `protobuf:"bytes,52,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
- CloseToAddr *string `protobuf:"bytes,53,opt,name=close_to_addr,json=closeToAddr,proto3,oneof" json:"close_to_addr,omitempty"`
+ Nodeid []byte `protobuf:"bytes,1,opt,name=nodeid,proto3" json:"nodeid,omitempty"`
+ LastTimestamp *uint32 `protobuf:"varint,2,opt,name=last_timestamp,json=lastTimestamp,proto3,oneof" json:"last_timestamp,omitempty"`
+ Alias *string `protobuf:"bytes,3,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ Color []byte `protobuf:"bytes,4,opt,name=color,proto3,oneof" json:"color,omitempty"`
+ Features []byte `protobuf:"bytes,5,opt,name=features,proto3,oneof" json:"features,omitempty"`
+ Addresses []*ListnodesNodesAddresses `protobuf:"bytes,6,rep,name=addresses,proto3" json:"addresses,omitempty"`
+ OptionWillFund *ListnodesNodesOptionWillFund `protobuf:"bytes,7,opt,name=option_will_fund,json=optionWillFund,proto3,oneof" json:"option_will_fund,omitempty"`
}
-func (x *ListpeerchannelsChannels) Reset() {
- *x = ListpeerchannelsChannels{}
+func (x *ListnodesNodes) Reset() {
+ *x = ListnodesNodes{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[111]
+ mi := &file_node_proto_msgTypes[106]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannels) String() string {
+func (x *ListnodesNodes) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannels) ProtoMessage() {}
+func (*ListnodesNodes) ProtoMessage() {}
-func (x *ListpeerchannelsChannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[111]
+func (x *ListnodesNodes) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[106]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11412,415 +11233,450 @@ func (x *ListpeerchannelsChannels) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannels.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{111}
+// Deprecated: Use ListnodesNodes.ProtoReflect.Descriptor instead.
+func (*ListnodesNodes) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{106}
}
-func (x *ListpeerchannelsChannels) GetPeerId() []byte {
+func (x *ListnodesNodes) GetNodeid() []byte {
if x != nil {
- return x.PeerId
+ return x.Nodeid
}
return nil
}
-func (x *ListpeerchannelsChannels) GetPeerConnected() bool {
- if x != nil && x.PeerConnected != nil {
- return *x.PeerConnected
+func (x *ListnodesNodes) GetLastTimestamp() uint32 {
+ if x != nil && x.LastTimestamp != nil {
+ return *x.LastTimestamp
}
- return false
+ return 0
}
-func (x *ListpeerchannelsChannels) GetState() ListpeerchannelsChannels_ListpeerchannelsChannelsState {
- if x != nil && x.State != nil {
- return *x.State
+func (x *ListnodesNodes) GetAlias() string {
+ if x != nil && x.Alias != nil {
+ return *x.Alias
}
- return ListpeerchannelsChannels_OPENINGD
+ return ""
}
-func (x *ListpeerchannelsChannels) GetScratchTxid() []byte {
+func (x *ListnodesNodes) GetColor() []byte {
if x != nil {
- return x.ScratchTxid
+ return x.Color
}
return nil
}
-func (x *ListpeerchannelsChannels) GetUpdates() *ListpeerchannelsChannelsUpdates {
+func (x *ListnodesNodes) GetFeatures() []byte {
if x != nil {
- return x.Updates
+ return x.Features
}
return nil
}
-func (x *ListpeerchannelsChannels) GetIgnoreFeeLimits() bool {
- if x != nil && x.IgnoreFeeLimits != nil {
- return *x.IgnoreFeeLimits
- }
- return false
-}
-
-func (x *ListpeerchannelsChannels) GetLostState() bool {
- if x != nil && x.LostState != nil {
- return *x.LostState
- }
- return false
-}
-
-func (x *ListpeerchannelsChannels) GetFeerate() *ListpeerchannelsChannelsFeerate {
+func (x *ListnodesNodes) GetAddresses() []*ListnodesNodesAddresses {
if x != nil {
- return x.Feerate
+ return x.Addresses
}
return nil
}
-func (x *ListpeerchannelsChannels) GetOwner() string {
- if x != nil && x.Owner != nil {
- return *x.Owner
- }
- return ""
-}
-
-func (x *ListpeerchannelsChannels) GetShortChannelId() string {
- if x != nil && x.ShortChannelId != nil {
- return *x.ShortChannelId
- }
- return ""
-}
-
-func (x *ListpeerchannelsChannels) GetChannelId() []byte {
+func (x *ListnodesNodes) GetOptionWillFund() *ListnodesNodesOptionWillFund {
if x != nil {
- return x.ChannelId
+ return x.OptionWillFund
}
return nil
}
-func (x *ListpeerchannelsChannels) GetFundingTxid() []byte {
- if x != nil {
- return x.FundingTxid
- }
- return nil
-}
+type ListnodesNodesOptionWillFund struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *ListpeerchannelsChannels) GetFundingOutnum() uint32 {
- if x != nil && x.FundingOutnum != nil {
- return *x.FundingOutnum
- }
- return 0
+ LeaseFeeBaseMsat *Amount `protobuf:"bytes,1,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3" json:"lease_fee_base_msat,omitempty"`
+ LeaseFeeBasis uint32 `protobuf:"varint,2,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3" json:"lease_fee_basis,omitempty"`
+ FundingWeight uint32 `protobuf:"varint,3,opt,name=funding_weight,json=fundingWeight,proto3" json:"funding_weight,omitempty"`
+ ChannelFeeMaxBaseMsat *Amount `protobuf:"bytes,4,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3" json:"channel_fee_max_base_msat,omitempty"`
+ ChannelFeeMaxProportionalThousandths uint32 `protobuf:"varint,5,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3" json:"channel_fee_max_proportional_thousandths,omitempty"`
+ CompactLease []byte `protobuf:"bytes,6,opt,name=compact_lease,json=compactLease,proto3" json:"compact_lease,omitempty"`
}
-func (x *ListpeerchannelsChannels) GetInitialFeerate() string {
- if x != nil && x.InitialFeerate != nil {
- return *x.InitialFeerate
+func (x *ListnodesNodesOptionWillFund) Reset() {
+ *x = ListnodesNodesOptionWillFund{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[107]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *ListpeerchannelsChannels) GetLastFeerate() string {
- if x != nil && x.LastFeerate != nil {
- return *x.LastFeerate
- }
- return ""
+func (x *ListnodesNodesOptionWillFund) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListpeerchannelsChannels) GetNextFeerate() string {
- if x != nil && x.NextFeerate != nil {
- return *x.NextFeerate
- }
- return ""
-}
+func (*ListnodesNodesOptionWillFund) ProtoMessage() {}
-func (x *ListpeerchannelsChannels) GetNextFeeStep() uint32 {
- if x != nil && x.NextFeeStep != nil {
- return *x.NextFeeStep
+func (x *ListnodesNodesOptionWillFund) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[107]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *ListpeerchannelsChannels) GetInflight() []*ListpeerchannelsChannelsInflight {
- if x != nil {
- return x.Inflight
- }
- return nil
+// Deprecated: Use ListnodesNodesOptionWillFund.ProtoReflect.Descriptor instead.
+func (*ListnodesNodesOptionWillFund) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{107}
}
-func (x *ListpeerchannelsChannels) GetCloseTo() []byte {
+func (x *ListnodesNodesOptionWillFund) GetLeaseFeeBaseMsat() *Amount {
if x != nil {
- return x.CloseTo
+ return x.LeaseFeeBaseMsat
}
return nil
}
-func (x *ListpeerchannelsChannels) GetPrivate() bool {
- if x != nil && x.Private != nil {
- return *x.Private
- }
- return false
-}
-
-func (x *ListpeerchannelsChannels) GetOpener() ChannelSide {
- if x != nil && x.Opener != nil {
- return *x.Opener
+func (x *ListnodesNodesOptionWillFund) GetLeaseFeeBasis() uint32 {
+ if x != nil {
+ return x.LeaseFeeBasis
}
- return ChannelSide_LOCAL
+ return 0
}
-func (x *ListpeerchannelsChannels) GetCloser() ChannelSide {
- if x != nil && x.Closer != nil {
- return *x.Closer
+func (x *ListnodesNodesOptionWillFund) GetFundingWeight() uint32 {
+ if x != nil {
+ return x.FundingWeight
}
- return ChannelSide_LOCAL
+ return 0
}
-func (x *ListpeerchannelsChannels) GetFunding() *ListpeerchannelsChannelsFunding {
+func (x *ListnodesNodesOptionWillFund) GetChannelFeeMaxBaseMsat() *Amount {
if x != nil {
- return x.Funding
+ return x.ChannelFeeMaxBaseMsat
}
return nil
}
-func (x *ListpeerchannelsChannels) GetToUsMsat() *Amount {
+func (x *ListnodesNodesOptionWillFund) GetChannelFeeMaxProportionalThousandths() uint32 {
if x != nil {
- return x.ToUsMsat
+ return x.ChannelFeeMaxProportionalThousandths
}
- return nil
+ return 0
}
-func (x *ListpeerchannelsChannels) GetMinToUsMsat() *Amount {
+func (x *ListnodesNodesOptionWillFund) GetCompactLease() []byte {
if x != nil {
- return x.MinToUsMsat
+ return x.CompactLease
}
return nil
}
-func (x *ListpeerchannelsChannels) GetMaxToUsMsat() *Amount {
- if x != nil {
- return x.MaxToUsMsat
- }
- return nil
+type ListnodesNodesAddresses struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ItemType ListnodesNodesAddresses_ListnodesNodesAddressesType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListnodesNodesAddresses_ListnodesNodesAddressesType" json:"item_type,omitempty"`
+ Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
+ Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}
-func (x *ListpeerchannelsChannels) GetTotalMsat() *Amount {
- if x != nil {
- return x.TotalMsat
+func (x *ListnodesNodesAddresses) Reset() {
+ *x = ListnodesNodesAddresses{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[108]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *ListpeerchannelsChannels) GetFeeBaseMsat() *Amount {
- if x != nil {
- return x.FeeBaseMsat
- }
- return nil
+func (x *ListnodesNodesAddresses) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListpeerchannelsChannels) GetFeeProportionalMillionths() uint32 {
- if x != nil && x.FeeProportionalMillionths != nil {
- return *x.FeeProportionalMillionths
+func (*ListnodesNodesAddresses) ProtoMessage() {}
+
+func (x *ListnodesNodesAddresses) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[108]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *ListpeerchannelsChannels) GetDustLimitMsat() *Amount {
- if x != nil {
- return x.DustLimitMsat
- }
- return nil
+// Deprecated: Use ListnodesNodesAddresses.ProtoReflect.Descriptor instead.
+func (*ListnodesNodesAddresses) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{108}
}
-func (x *ListpeerchannelsChannels) GetMaxTotalHtlcInMsat() *Amount {
+func (x *ListnodesNodesAddresses) GetItemType() ListnodesNodesAddresses_ListnodesNodesAddressesType {
if x != nil {
- return x.MaxTotalHtlcInMsat
+ return x.ItemType
}
- return nil
+ return ListnodesNodesAddresses_DNS
}
-func (x *ListpeerchannelsChannels) GetTheirReserveMsat() *Amount {
+func (x *ListnodesNodesAddresses) GetPort() uint32 {
if x != nil {
- return x.TheirReserveMsat
+ return x.Port
}
- return nil
+ return 0
}
-func (x *ListpeerchannelsChannels) GetOurReserveMsat() *Amount {
- if x != nil {
- return x.OurReserveMsat
+func (x *ListnodesNodesAddresses) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
}
- return nil
+ return ""
}
-func (x *ListpeerchannelsChannels) GetSpendableMsat() *Amount {
- if x != nil {
- return x.SpendableMsat
- }
- return nil
+type WaitanyinvoiceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ LastpayIndex *uint64 `protobuf:"varint,1,opt,name=lastpay_index,json=lastpayIndex,proto3,oneof" json:"lastpay_index,omitempty"`
+ Timeout *uint64 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
}
-func (x *ListpeerchannelsChannels) GetReceivableMsat() *Amount {
- if x != nil {
- return x.ReceivableMsat
+func (x *WaitanyinvoiceRequest) Reset() {
+ *x = WaitanyinvoiceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[109]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *ListpeerchannelsChannels) GetMinimumHtlcInMsat() *Amount {
- if x != nil {
- return x.MinimumHtlcInMsat
- }
- return nil
+func (x *WaitanyinvoiceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListpeerchannelsChannels) GetMinimumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MinimumHtlcOutMsat
+func (*WaitanyinvoiceRequest) ProtoMessage() {}
+
+func (x *WaitanyinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[109]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return nil
+ return mi.MessageOf(x)
}
-func (x *ListpeerchannelsChannels) GetMaximumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MaximumHtlcOutMsat
- }
- return nil
+// Deprecated: Use WaitanyinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*WaitanyinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{109}
}
-func (x *ListpeerchannelsChannels) GetTheirToSelfDelay() uint32 {
- if x != nil && x.TheirToSelfDelay != nil {
- return *x.TheirToSelfDelay
+func (x *WaitanyinvoiceRequest) GetLastpayIndex() uint64 {
+ if x != nil && x.LastpayIndex != nil {
+ return *x.LastpayIndex
}
return 0
}
-func (x *ListpeerchannelsChannels) GetOurToSelfDelay() uint32 {
- if x != nil && x.OurToSelfDelay != nil {
- return *x.OurToSelfDelay
+func (x *WaitanyinvoiceRequest) GetTimeout() uint64 {
+ if x != nil && x.Timeout != nil {
+ return *x.Timeout
}
return 0
}
-func (x *ListpeerchannelsChannels) GetMaxAcceptedHtlcs() uint32 {
- if x != nil && x.MaxAcceptedHtlcs != nil {
- return *x.MaxAcceptedHtlcs
+type WaitanyinvoiceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status WaitanyinvoiceResponse_WaitanyinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitanyinvoiceResponse_WaitanyinvoiceStatus" json:"status,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ PaidOutpoint *WaitanyinvoicePaidOutpoint `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
+}
+
+func (x *WaitanyinvoiceResponse) Reset() {
+ *x = WaitanyinvoiceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[110]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return 0
}
-func (x *ListpeerchannelsChannels) GetAlias() *ListpeerchannelsChannelsAlias {
+func (x *WaitanyinvoiceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitanyinvoiceResponse) ProtoMessage() {}
+
+func (x *WaitanyinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[110]
+ 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 WaitanyinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*WaitanyinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{110}
+}
+
+func (x *WaitanyinvoiceResponse) GetLabel() string {
if x != nil {
- return x.Alias
+ return x.Label
+ }
+ return ""
+}
+
+func (x *WaitanyinvoiceResponse) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *WaitanyinvoiceResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
return nil
}
-func (x *ListpeerchannelsChannels) GetStatus() []string {
+func (x *WaitanyinvoiceResponse) GetStatus() WaitanyinvoiceResponse_WaitanyinvoiceStatus {
if x != nil {
return x.Status
}
- return nil
+ return WaitanyinvoiceResponse_PAID
}
-func (x *ListpeerchannelsChannels) GetInPaymentsOffered() uint64 {
- if x != nil && x.InPaymentsOffered != nil {
- return *x.InPaymentsOffered
+func (x *WaitanyinvoiceResponse) GetExpiresAt() uint64 {
+ if x != nil {
+ return x.ExpiresAt
}
return 0
}
-func (x *ListpeerchannelsChannels) GetInOfferedMsat() *Amount {
+func (x *WaitanyinvoiceResponse) GetAmountMsat() *Amount {
if x != nil {
- return x.InOfferedMsat
+ return x.AmountMsat
}
return nil
}
-func (x *ListpeerchannelsChannels) GetInPaymentsFulfilled() uint64 {
- if x != nil && x.InPaymentsFulfilled != nil {
- return *x.InPaymentsFulfilled
+func (x *WaitanyinvoiceResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
}
- return 0
+ return ""
}
-func (x *ListpeerchannelsChannels) GetInFulfilledMsat() *Amount {
- if x != nil {
- return x.InFulfilledMsat
+func (x *WaitanyinvoiceResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
}
- return nil
+ return ""
}
-func (x *ListpeerchannelsChannels) GetOutPaymentsOffered() uint64 {
- if x != nil && x.OutPaymentsOffered != nil {
- return *x.OutPaymentsOffered
+func (x *WaitanyinvoiceResponse) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
}
return 0
}
-func (x *ListpeerchannelsChannels) GetOutOfferedMsat() *Amount {
+func (x *WaitanyinvoiceResponse) GetAmountReceivedMsat() *Amount {
if x != nil {
- return x.OutOfferedMsat
+ return x.AmountReceivedMsat
}
return nil
}
-func (x *ListpeerchannelsChannels) GetOutPaymentsFulfilled() uint64 {
- if x != nil && x.OutPaymentsFulfilled != nil {
- return *x.OutPaymentsFulfilled
+func (x *WaitanyinvoiceResponse) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
}
return 0
}
-func (x *ListpeerchannelsChannels) GetOutFulfilledMsat() *Amount {
+func (x *WaitanyinvoiceResponse) GetPaymentPreimage() []byte {
if x != nil {
- return x.OutFulfilledMsat
+ return x.PaymentPreimage
}
return nil
}
-func (x *ListpeerchannelsChannels) GetLastStableConnection() uint64 {
- if x != nil && x.LastStableConnection != nil {
- return *x.LastStableConnection
+func (x *WaitanyinvoiceResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
}
return 0
}
-func (x *ListpeerchannelsChannels) GetHtlcs() []*ListpeerchannelsChannelsHtlcs {
- if x != nil {
- return x.Htlcs
+func (x *WaitanyinvoiceResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
}
- return nil
+ return 0
}
-func (x *ListpeerchannelsChannels) GetCloseToAddr() string {
- if x != nil && x.CloseToAddr != nil {
- return *x.CloseToAddr
+func (x *WaitanyinvoiceResponse) GetPaidOutpoint() *WaitanyinvoicePaidOutpoint {
+ if x != nil {
+ return x.PaidOutpoint
}
- return ""
+ return nil
}
-type ListpeerchannelsChannelsUpdates struct {
+type WaitanyinvoicePaidOutpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Local *ListpeerchannelsChannelsUpdatesLocal `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
- Remote *ListpeerchannelsChannelsUpdatesRemote `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}
-func (x *ListpeerchannelsChannelsUpdates) Reset() {
- *x = ListpeerchannelsChannelsUpdates{}
+func (x *WaitanyinvoicePaidOutpoint) Reset() {
+ *x = WaitanyinvoicePaidOutpoint{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[112]
+ mi := &file_node_proto_msgTypes[111]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsUpdates) String() string {
+func (x *WaitanyinvoicePaidOutpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsUpdates) ProtoMessage() {}
+func (*WaitanyinvoicePaidOutpoint) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsUpdates) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[112]
+func (x *WaitanyinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[111]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11831,54 +11687,50 @@ func (x *ListpeerchannelsChannelsUpdates) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsUpdates.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsUpdates) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{112}
+// Deprecated: Use WaitanyinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
+func (*WaitanyinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{111}
}
-func (x *ListpeerchannelsChannelsUpdates) GetLocal() *ListpeerchannelsChannelsUpdatesLocal {
+func (x *WaitanyinvoicePaidOutpoint) GetTxid() []byte {
if x != nil {
- return x.Local
+ return x.Txid
}
return nil
}
-func (x *ListpeerchannelsChannelsUpdates) GetRemote() *ListpeerchannelsChannelsUpdatesRemote {
+func (x *WaitanyinvoicePaidOutpoint) GetOutnum() uint32 {
if x != nil {
- return x.Remote
+ return x.Outnum
}
- return nil
+ return 0
}
-type ListpeerchannelsChannelsUpdatesLocal struct {
+type WaitinvoiceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- HtlcMinimumMsat *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
- HtlcMaximumMsat *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
- CltvExpiryDelta *uint32 `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3,oneof" json:"cltv_expiry_delta,omitempty"`
- FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
- FeeProportionalMillionths *uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
}
-func (x *ListpeerchannelsChannelsUpdatesLocal) Reset() {
- *x = ListpeerchannelsChannelsUpdatesLocal{}
+func (x *WaitinvoiceRequest) Reset() {
+ *x = WaitinvoiceRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[113]
+ mi := &file_node_proto_msgTypes[112]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsUpdatesLocal) String() string {
+func (x *WaitinvoiceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsUpdatesLocal) ProtoMessage() {}
+func (*WaitinvoiceRequest) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsUpdatesLocal) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[113]
+func (x *WaitinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[112]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11889,75 +11741,57 @@ func (x *ListpeerchannelsChannelsUpdatesLocal) ProtoReflect() protoreflect.Messa
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsUpdatesLocal.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsUpdatesLocal) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{113}
-}
-
-func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMinimumMsat() *Amount {
- if x != nil {
- return x.HtlcMinimumMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMaximumMsat() *Amount {
- if x != nil {
- return x.HtlcMaximumMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsUpdatesLocal) GetCltvExpiryDelta() uint32 {
- if x != nil && x.CltvExpiryDelta != nil {
- return *x.CltvExpiryDelta
- }
- return 0
+// Deprecated: Use WaitinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*WaitinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{112}
}
-func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeBaseMsat() *Amount {
+func (x *WaitinvoiceRequest) GetLabel() string {
if x != nil {
- return x.FeeBaseMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeProportionalMillionths() uint32 {
- if x != nil && x.FeeProportionalMillionths != nil {
- return *x.FeeProportionalMillionths
+ return x.Label
}
- return 0
+ return ""
}
-type ListpeerchannelsChannelsUpdatesRemote struct {
+type WaitinvoiceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- HtlcMinimumMsat *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
- HtlcMaximumMsat *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
- CltvExpiryDelta *uint32 `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3,oneof" json:"cltv_expiry_delta,omitempty"`
- FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
- FeeProportionalMillionths *uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status WaitinvoiceResponse_WaitinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitinvoiceResponse_WaitinvoiceStatus" json:"status,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Bolt11 *string `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ PaidOutpoint *WaitinvoicePaidOutpoint `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) Reset() {
- *x = ListpeerchannelsChannelsUpdatesRemote{}
+func (x *WaitinvoiceResponse) Reset() {
+ *x = WaitinvoiceResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[114]
+ mi := &file_node_proto_msgTypes[113]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) String() string {
+func (x *WaitinvoiceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsUpdatesRemote) ProtoMessage() {}
+func (*WaitinvoiceResponse) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsUpdatesRemote) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[114]
+func (x *WaitinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[113]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -11968,72 +11802,142 @@ func (x *ListpeerchannelsChannelsUpdatesRemote) ProtoReflect() protoreflect.Mess
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsUpdatesRemote.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsUpdatesRemote) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{114}
+// Deprecated: Use WaitinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*WaitinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{113}
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMinimumMsat() *Amount {
+func (x *WaitinvoiceResponse) GetLabel() string {
if x != nil {
- return x.HtlcMinimumMsat
+ return x.Label
+ }
+ return ""
+}
+
+func (x *WaitinvoiceResponse) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *WaitinvoiceResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
return nil
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMaximumMsat() *Amount {
+func (x *WaitinvoiceResponse) GetStatus() WaitinvoiceResponse_WaitinvoiceStatus {
if x != nil {
- return x.HtlcMaximumMsat
+ return x.Status
+ }
+ return WaitinvoiceResponse_PAID
+}
+
+func (x *WaitinvoiceResponse) GetExpiresAt() uint64 {
+ if x != nil {
+ return x.ExpiresAt
+ }
+ return 0
+}
+
+func (x *WaitinvoiceResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
return nil
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) GetCltvExpiryDelta() uint32 {
- if x != nil && x.CltvExpiryDelta != nil {
- return *x.CltvExpiryDelta
+func (x *WaitinvoiceResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *WaitinvoiceResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *WaitinvoiceResponse) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
}
return 0
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeBaseMsat() *Amount {
+func (x *WaitinvoiceResponse) GetAmountReceivedMsat() *Amount {
if x != nil {
- return x.FeeBaseMsat
+ return x.AmountReceivedMsat
}
return nil
}
-func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeProportionalMillionths() uint32 {
- if x != nil && x.FeeProportionalMillionths != nil {
- return *x.FeeProportionalMillionths
+func (x *WaitinvoiceResponse) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
}
return 0
}
-type ListpeerchannelsChannelsFeerate struct {
+func (x *WaitinvoiceResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+func (x *WaitinvoiceResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *WaitinvoiceResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *WaitinvoiceResponse) GetPaidOutpoint() *WaitinvoicePaidOutpoint {
+ if x != nil {
+ return x.PaidOutpoint
+ }
+ return nil
+}
+
+type WaitinvoicePaidOutpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Perkw *uint32 `protobuf:"varint,1,opt,name=perkw,proto3,oneof" json:"perkw,omitempty"`
- Perkb *uint32 `protobuf:"varint,2,opt,name=perkb,proto3,oneof" json:"perkb,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}
-func (x *ListpeerchannelsChannelsFeerate) Reset() {
- *x = ListpeerchannelsChannelsFeerate{}
+func (x *WaitinvoicePaidOutpoint) Reset() {
+ *x = WaitinvoicePaidOutpoint{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[115]
+ mi := &file_node_proto_msgTypes[114]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsFeerate) String() string {
+func (x *WaitinvoicePaidOutpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsFeerate) ProtoMessage() {}
+func (*WaitinvoicePaidOutpoint) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsFeerate) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[115]
+func (x *WaitinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[114]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12044,56 +11948,53 @@ func (x *ListpeerchannelsChannelsFeerate) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsFeerate.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsFeerate) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{115}
+// Deprecated: Use WaitinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
+func (*WaitinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{114}
}
-func (x *ListpeerchannelsChannelsFeerate) GetPerkw() uint32 {
- if x != nil && x.Perkw != nil {
- return *x.Perkw
+func (x *WaitinvoicePaidOutpoint) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
}
- return 0
+ return nil
}
-func (x *ListpeerchannelsChannelsFeerate) GetPerkb() uint32 {
- if x != nil && x.Perkb != nil {
- return *x.Perkb
+func (x *WaitinvoicePaidOutpoint) GetOutnum() uint32 {
+ if x != nil {
+ return x.Outnum
}
return 0
}
-type ListpeerchannelsChannelsInflight struct {
+type WaitsendpayRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- FundingTxid []byte `protobuf:"bytes,1,opt,name=funding_txid,json=fundingTxid,proto3,oneof" json:"funding_txid,omitempty"`
- FundingOutnum *uint32 `protobuf:"varint,2,opt,name=funding_outnum,json=fundingOutnum,proto3,oneof" json:"funding_outnum,omitempty"`
- Feerate *string `protobuf:"bytes,3,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- TotalFundingMsat *Amount `protobuf:"bytes,4,opt,name=total_funding_msat,json=totalFundingMsat,proto3,oneof" json:"total_funding_msat,omitempty"`
- SpliceAmount *int64 `protobuf:"zigzag64,7,opt,name=splice_amount,json=spliceAmount,proto3,oneof" json:"splice_amount,omitempty"`
- OurFundingMsat *Amount `protobuf:"bytes,5,opt,name=our_funding_msat,json=ourFundingMsat,proto3,oneof" json:"our_funding_msat,omitempty"`
- ScratchTxid []byte `protobuf:"bytes,6,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Partid *uint64 `protobuf:"varint,2,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Timeout *uint32 `protobuf:"varint,3,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
+ Groupid *uint64 `protobuf:"varint,4,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
}
-func (x *ListpeerchannelsChannelsInflight) Reset() {
- *x = ListpeerchannelsChannelsInflight{}
+func (x *WaitsendpayRequest) Reset() {
+ *x = WaitsendpayRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[116]
+ mi := &file_node_proto_msgTypes[115]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsInflight) String() string {
+func (x *WaitsendpayRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsInflight) ProtoMessage() {}
+func (*WaitsendpayRequest) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsInflight) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[116]
+func (x *WaitsendpayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[115]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12104,89 +12005,79 @@ func (x *ListpeerchannelsChannelsInflight) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsInflight.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsInflight) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{116}
+// Deprecated: Use WaitsendpayRequest.ProtoReflect.Descriptor instead.
+func (*WaitsendpayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{115}
}
-func (x *ListpeerchannelsChannelsInflight) GetFundingTxid() []byte {
+func (x *WaitsendpayRequest) GetPaymentHash() []byte {
if x != nil {
- return x.FundingTxid
+ return x.PaymentHash
}
return nil
}
-func (x *ListpeerchannelsChannelsInflight) GetFundingOutnum() uint32 {
- if x != nil && x.FundingOutnum != nil {
- return *x.FundingOutnum
+func (x *WaitsendpayRequest) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
}
return 0
}
-func (x *ListpeerchannelsChannelsInflight) GetFeerate() string {
- if x != nil && x.Feerate != nil {
- return *x.Feerate
- }
- return ""
-}
-
-func (x *ListpeerchannelsChannelsInflight) GetTotalFundingMsat() *Amount {
- if x != nil {
- return x.TotalFundingMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsInflight) GetSpliceAmount() int64 {
- if x != nil && x.SpliceAmount != nil {
- return *x.SpliceAmount
+func (x *WaitsendpayRequest) GetTimeout() uint32 {
+ if x != nil && x.Timeout != nil {
+ return *x.Timeout
}
return 0
}
-func (x *ListpeerchannelsChannelsInflight) GetOurFundingMsat() *Amount {
- if x != nil {
- return x.OurFundingMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsInflight) GetScratchTxid() []byte {
- if x != nil {
- return x.ScratchTxid
+func (x *WaitsendpayRequest) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
}
- return nil
+ return 0
}
-type ListpeerchannelsChannelsFunding struct {
+type WaitsendpayResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PushedMsat *Amount `protobuf:"bytes,1,opt,name=pushed_msat,json=pushedMsat,proto3,oneof" json:"pushed_msat,omitempty"`
- LocalFundsMsat *Amount `protobuf:"bytes,2,opt,name=local_funds_msat,json=localFundsMsat,proto3,oneof" json:"local_funds_msat,omitempty"`
- RemoteFundsMsat *Amount `protobuf:"bytes,3,opt,name=remote_funds_msat,json=remoteFundsMsat,proto3,oneof" json:"remote_funds_msat,omitempty"`
- FeePaidMsat *Amount `protobuf:"bytes,4,opt,name=fee_paid_msat,json=feePaidMsat,proto3,oneof" json:"fee_paid_msat,omitempty"`
- FeeRcvdMsat *Amount `protobuf:"bytes,5,opt,name=fee_rcvd_msat,json=feeRcvdMsat,proto3,oneof" json:"fee_rcvd_msat,omitempty"`
+ Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
+ Groupid *uint64 `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status WaitsendpayResponse_WaitsendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitsendpayResponse_WaitsendpayStatus" json:"status,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Destination []byte `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Label *string `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Partid *uint64 `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Bolt11 *string `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ CompletedAt *float64 `protobuf:"fixed64,14,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,15,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,16,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}
-func (x *ListpeerchannelsChannelsFunding) Reset() {
- *x = ListpeerchannelsChannelsFunding{}
+func (x *WaitsendpayResponse) Reset() {
+ *x = WaitsendpayResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[117]
+ mi := &file_node_proto_msgTypes[116]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsFunding) String() string {
+func (x *WaitsendpayResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsFunding) ProtoMessage() {}
+func (*WaitsendpayResponse) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsFunding) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[117]
+func (x *WaitsendpayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[116]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12197,133 +12088,148 @@ func (x *ListpeerchannelsChannelsFunding) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsFunding.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsFunding) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{117}
+// Deprecated: Use WaitsendpayResponse.ProtoReflect.Descriptor instead.
+func (*WaitsendpayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{116}
}
-func (x *ListpeerchannelsChannelsFunding) GetPushedMsat() *Amount {
+func (x *WaitsendpayResponse) GetId() uint64 {
if x != nil {
- return x.PushedMsat
+ return x.Id
}
- return nil
+ return 0
}
-func (x *ListpeerchannelsChannelsFunding) GetLocalFundsMsat() *Amount {
- if x != nil {
- return x.LocalFundsMsat
+func (x *WaitsendpayResponse) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
}
- return nil
+ return 0
}
-func (x *ListpeerchannelsChannelsFunding) GetRemoteFundsMsat() *Amount {
+func (x *WaitsendpayResponse) GetPaymentHash() []byte {
if x != nil {
- return x.RemoteFundsMsat
+ return x.PaymentHash
}
return nil
}
-func (x *ListpeerchannelsChannelsFunding) GetFeePaidMsat() *Amount {
+func (x *WaitsendpayResponse) GetStatus() WaitsendpayResponse_WaitsendpayStatus {
if x != nil {
- return x.FeePaidMsat
+ return x.Status
+ }
+ return WaitsendpayResponse_COMPLETE
+}
+
+func (x *WaitsendpayResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
return nil
}
-func (x *ListpeerchannelsChannelsFunding) GetFeeRcvdMsat() *Amount {
+func (x *WaitsendpayResponse) GetDestination() []byte {
if x != nil {
- return x.FeeRcvdMsat
+ return x.Destination
}
return nil
}
-type ListpeerchannelsChannelsAlias struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *WaitsendpayResponse) GetCreatedAt() uint64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
+}
- Local *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
- Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
+func (x *WaitsendpayResponse) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
+ }
+ return nil
}
-func (x *ListpeerchannelsChannelsAlias) Reset() {
- *x = ListpeerchannelsChannelsAlias{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[118]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *WaitsendpayResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
+ return ""
}
-func (x *ListpeerchannelsChannelsAlias) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *WaitsendpayResponse) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
+ }
+ return 0
}
-func (*ListpeerchannelsChannelsAlias) ProtoMessage() {}
+func (x *WaitsendpayResponse) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
-func (x *ListpeerchannelsChannelsAlias) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[118]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *WaitsendpayResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use ListpeerchannelsChannelsAlias.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsAlias) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{118}
+func (x *WaitsendpayResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
}
-func (x *ListpeerchannelsChannelsAlias) GetLocal() string {
- if x != nil && x.Local != nil {
- return *x.Local
+func (x *WaitsendpayResponse) GetCompletedAt() float64 {
+ if x != nil && x.CompletedAt != nil {
+ return *x.CompletedAt
}
- return ""
+ return 0
}
-func (x *ListpeerchannelsChannelsAlias) GetRemote() string {
- if x != nil && x.Remote != nil {
- return *x.Remote
+func (x *WaitsendpayResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
}
- return ""
+ return 0
}
-type ListpeerchannelsChannelsHtlcs struct {
+func (x *WaitsendpayResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+type NewaddrRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Direction *ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=cln.ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection,oneof" json:"direction,omitempty"`
- Id *uint64 `protobuf:"varint,2,opt,name=id,proto3,oneof" json:"id,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Expiry *uint32 `protobuf:"varint,4,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
- PaymentHash []byte `protobuf:"bytes,5,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- LocalTrimmed *bool `protobuf:"varint,6,opt,name=local_trimmed,json=localTrimmed,proto3,oneof" json:"local_trimmed,omitempty"`
- Status *string `protobuf:"bytes,7,opt,name=status,proto3,oneof" json:"status,omitempty"`
- State *HtlcState `protobuf:"varint,8,opt,name=state,proto3,enum=cln.HtlcState,oneof" json:"state,omitempty"`
+ Addresstype *NewaddrRequest_NewaddrAddresstype `protobuf:"varint,1,opt,name=addresstype,proto3,enum=cln.NewaddrRequest_NewaddrAddresstype,oneof" json:"addresstype,omitempty"`
}
-func (x *ListpeerchannelsChannelsHtlcs) Reset() {
- *x = ListpeerchannelsChannelsHtlcs{}
+func (x *NewaddrRequest) Reset() {
+ *x = NewaddrRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[119]
+ mi := &file_node_proto_msgTypes[117]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListpeerchannelsChannelsHtlcs) String() string {
+func (x *NewaddrRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListpeerchannelsChannelsHtlcs) ProtoMessage() {}
+func (*NewaddrRequest) ProtoMessage() {}
-func (x *ListpeerchannelsChannelsHtlcs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[119]
+func (x *NewaddrRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[117]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12334,92 +12240,44 @@ func (x *ListpeerchannelsChannelsHtlcs) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListpeerchannelsChannelsHtlcs.ProtoReflect.Descriptor instead.
-func (*ListpeerchannelsChannelsHtlcs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{119}
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetDirection() ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection {
- if x != nil && x.Direction != nil {
- return *x.Direction
- }
- return ListpeerchannelsChannelsHtlcs_IN
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetId() uint64 {
- if x != nil && x.Id != nil {
- return *x.Id
- }
- return 0
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetExpiry() uint32 {
- if x != nil && x.Expiry != nil {
- return *x.Expiry
- }
- return 0
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetPaymentHash() []byte {
- if x != nil {
- return x.PaymentHash
- }
- return nil
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetLocalTrimmed() bool {
- if x != nil && x.LocalTrimmed != nil {
- return *x.LocalTrimmed
- }
- return false
-}
-
-func (x *ListpeerchannelsChannelsHtlcs) GetStatus() string {
- if x != nil && x.Status != nil {
- return *x.Status
- }
- return ""
+// Deprecated: Use NewaddrRequest.ProtoReflect.Descriptor instead.
+func (*NewaddrRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{117}
}
-func (x *ListpeerchannelsChannelsHtlcs) GetState() HtlcState {
- if x != nil && x.State != nil {
- return *x.State
+func (x *NewaddrRequest) GetAddresstype() NewaddrRequest_NewaddrAddresstype {
+ if x != nil && x.Addresstype != nil {
+ return *x.Addresstype
}
- return HtlcState_SentAddHtlc
+ return NewaddrRequest_BECH32
}
-type ListclosedchannelsRequest struct {
+type NewaddrResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+ Bech32 *string `protobuf:"bytes,1,opt,name=bech32,proto3,oneof" json:"bech32,omitempty"`
+ P2Tr *string `protobuf:"bytes,3,opt,name=p2tr,proto3,oneof" json:"p2tr,omitempty"`
}
-func (x *ListclosedchannelsRequest) Reset() {
- *x = ListclosedchannelsRequest{}
+func (x *NewaddrResponse) Reset() {
+ *x = NewaddrResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[120]
+ mi := &file_node_proto_msgTypes[118]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListclosedchannelsRequest) String() string {
+func (x *NewaddrResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListclosedchannelsRequest) ProtoMessage() {}
+func (*NewaddrResponse) ProtoMessage() {}
-func (x *ListclosedchannelsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[120]
+func (x *NewaddrResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[118]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12430,43 +12288,54 @@ func (x *ListclosedchannelsRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListclosedchannelsRequest.ProtoReflect.Descriptor instead.
-func (*ListclosedchannelsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{120}
+// Deprecated: Use NewaddrResponse.ProtoReflect.Descriptor instead.
+func (*NewaddrResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{118}
}
-func (x *ListclosedchannelsRequest) GetId() []byte {
- if x != nil {
- return x.Id
+func (x *NewaddrResponse) GetBech32() string {
+ if x != nil && x.Bech32 != nil {
+ return *x.Bech32
}
- return nil
+ return ""
}
-type ListclosedchannelsResponse struct {
+func (x *NewaddrResponse) GetP2Tr() string {
+ if x != nil && x.P2Tr != nil {
+ return *x.P2Tr
+ }
+ return ""
+}
+
+type WithdrawRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Closedchannels []*ListclosedchannelsClosedchannels `protobuf:"bytes,1,rep,name=closedchannels,proto3" json:"closedchannels,omitempty"`
+ Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+ Satoshi *AmountOrAll `protobuf:"bytes,2,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
+ Minconf *uint32 `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,5,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
}
-func (x *ListclosedchannelsResponse) Reset() {
- *x = ListclosedchannelsResponse{}
+func (x *WithdrawRequest) Reset() {
+ *x = WithdrawRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[121]
+ mi := &file_node_proto_msgTypes[119]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListclosedchannelsResponse) String() string {
+func (x *WithdrawRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListclosedchannelsResponse) ProtoMessage() {}
+func (*WithdrawRequest) ProtoMessage() {}
-func (x *ListclosedchannelsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[121]
+func (x *WithdrawRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[119]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12477,66 +12346,73 @@ func (x *ListclosedchannelsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListclosedchannelsResponse.ProtoReflect.Descriptor instead.
-func (*ListclosedchannelsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{121}
+// Deprecated: Use WithdrawRequest.ProtoReflect.Descriptor instead.
+func (*WithdrawRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{119}
}
-func (x *ListclosedchannelsResponse) GetClosedchannels() []*ListclosedchannelsClosedchannels {
+func (x *WithdrawRequest) GetDestination() string {
if x != nil {
- return x.Closedchannels
+ return x.Destination
+ }
+ return ""
+}
+
+func (x *WithdrawRequest) GetSatoshi() *AmountOrAll {
+ if x != nil {
+ return x.Satoshi
}
return nil
}
-type ListclosedchannelsClosedchannels struct {
+func (x *WithdrawRequest) GetMinconf() uint32 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
+ }
+ return 0
+}
+
+func (x *WithdrawRequest) GetUtxos() []*Outpoint {
+ if x != nil {
+ return x.Utxos
+ }
+ return nil
+}
+
+func (x *WithdrawRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+type WithdrawResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
- ChannelId []byte `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
- ShortChannelId *string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
- Alias *ListclosedchannelsClosedchannelsAlias `protobuf:"bytes,4,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
- Opener ChannelSide `protobuf:"varint,5,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
- Closer *ChannelSide `protobuf:"varint,6,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
- Private bool `protobuf:"varint,7,opt,name=private,proto3" json:"private,omitempty"`
- TotalLocalCommitments uint64 `protobuf:"varint,9,opt,name=total_local_commitments,json=totalLocalCommitments,proto3" json:"total_local_commitments,omitempty"`
- TotalRemoteCommitments uint64 `protobuf:"varint,10,opt,name=total_remote_commitments,json=totalRemoteCommitments,proto3" json:"total_remote_commitments,omitempty"`
- TotalHtlcsSent uint64 `protobuf:"varint,11,opt,name=total_htlcs_sent,json=totalHtlcsSent,proto3" json:"total_htlcs_sent,omitempty"`
- FundingTxid []byte `protobuf:"bytes,12,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
- FundingOutnum uint32 `protobuf:"varint,13,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
- Leased bool `protobuf:"varint,14,opt,name=leased,proto3" json:"leased,omitempty"`
- FundingFeePaidMsat *Amount `protobuf:"bytes,15,opt,name=funding_fee_paid_msat,json=fundingFeePaidMsat,proto3,oneof" json:"funding_fee_paid_msat,omitempty"`
- FundingFeeRcvdMsat *Amount `protobuf:"bytes,16,opt,name=funding_fee_rcvd_msat,json=fundingFeeRcvdMsat,proto3,oneof" json:"funding_fee_rcvd_msat,omitempty"`
- FundingPushedMsat *Amount `protobuf:"bytes,17,opt,name=funding_pushed_msat,json=fundingPushedMsat,proto3,oneof" json:"funding_pushed_msat,omitempty"`
- TotalMsat *Amount `protobuf:"bytes,18,opt,name=total_msat,json=totalMsat,proto3" json:"total_msat,omitempty"`
- FinalToUsMsat *Amount `protobuf:"bytes,19,opt,name=final_to_us_msat,json=finalToUsMsat,proto3" json:"final_to_us_msat,omitempty"`
- MinToUsMsat *Amount `protobuf:"bytes,20,opt,name=min_to_us_msat,json=minToUsMsat,proto3" json:"min_to_us_msat,omitempty"`
- MaxToUsMsat *Amount `protobuf:"bytes,21,opt,name=max_to_us_msat,json=maxToUsMsat,proto3" json:"max_to_us_msat,omitempty"`
- LastCommitmentTxid []byte `protobuf:"bytes,22,opt,name=last_commitment_txid,json=lastCommitmentTxid,proto3,oneof" json:"last_commitment_txid,omitempty"`
- LastCommitmentFeeMsat *Amount `protobuf:"bytes,23,opt,name=last_commitment_fee_msat,json=lastCommitmentFeeMsat,proto3,oneof" json:"last_commitment_fee_msat,omitempty"`
- CloseCause ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause `protobuf:"varint,24,opt,name=close_cause,json=closeCause,proto3,enum=cln.ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause" json:"close_cause,omitempty"`
- LastStableConnection *uint64 `protobuf:"varint,25,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+ Psbt string `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
}
-func (x *ListclosedchannelsClosedchannels) Reset() {
- *x = ListclosedchannelsClosedchannels{}
+func (x *WithdrawResponse) Reset() {
+ *x = WithdrawResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[122]
+ mi := &file_node_proto_msgTypes[120]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListclosedchannelsClosedchannels) String() string {
+func (x *WithdrawResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListclosedchannelsClosedchannels) ProtoMessage() {}
+func (*WithdrawResponse) ProtoMessage() {}
-func (x *ListclosedchannelsClosedchannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[122]
+func (x *WithdrawResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[120]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12547,190 +12423,273 @@ func (x *ListclosedchannelsClosedchannels) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListclosedchannelsClosedchannels.ProtoReflect.Descriptor instead.
-func (*ListclosedchannelsClosedchannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{122}
+// Deprecated: Use WithdrawResponse.ProtoReflect.Descriptor instead.
+func (*WithdrawResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{120}
}
-func (x *ListclosedchannelsClosedchannels) GetPeerId() []byte {
+func (x *WithdrawResponse) GetTx() []byte {
if x != nil {
- return x.PeerId
+ return x.Tx
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetChannelId() []byte {
+func (x *WithdrawResponse) GetTxid() []byte {
if x != nil {
- return x.ChannelId
+ return x.Txid
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetShortChannelId() string {
- if x != nil && x.ShortChannelId != nil {
- return *x.ShortChannelId
+func (x *WithdrawResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
}
return ""
}
-func (x *ListclosedchannelsClosedchannels) GetAlias() *ListclosedchannelsClosedchannelsAlias {
- if x != nil {
- return x.Alias
- }
- return nil
-}
+type KeysendRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *ListclosedchannelsClosedchannels) GetOpener() ChannelSide {
- if x != nil {
- return x.Opener
- }
- return ChannelSide_LOCAL
+ Destination []byte `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+ Label *string `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Maxfeepercent *float64 `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
+ RetryFor *uint32 `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
+ Maxdelay *uint32 `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
+ Exemptfee *Amount `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
+ Routehints *RoutehintList `protobuf:"bytes,8,opt,name=routehints,proto3,oneof" json:"routehints,omitempty"`
+ Extratlvs *TlvStream `protobuf:"bytes,9,opt,name=extratlvs,proto3,oneof" json:"extratlvs,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}
-func (x *ListclosedchannelsClosedchannels) GetCloser() ChannelSide {
- if x != nil && x.Closer != nil {
- return *x.Closer
+func (x *KeysendRequest) Reset() {
+ *x = KeysendRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[121]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ChannelSide_LOCAL
}
-func (x *ListclosedchannelsClosedchannels) GetPrivate() bool {
- if x != nil {
- return x.Private
- }
- return false
+func (x *KeysendRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListclosedchannelsClosedchannels) GetTotalLocalCommitments() uint64 {
- if x != nil {
- return x.TotalLocalCommitments
- }
- return 0
-}
+func (*KeysendRequest) ProtoMessage() {}
-func (x *ListclosedchannelsClosedchannels) GetTotalRemoteCommitments() uint64 {
- if x != nil {
- return x.TotalRemoteCommitments
+func (x *KeysendRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[121]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *ListclosedchannelsClosedchannels) GetTotalHtlcsSent() uint64 {
- if x != nil {
- return x.TotalHtlcsSent
- }
- return 0
+// Deprecated: Use KeysendRequest.ProtoReflect.Descriptor instead.
+func (*KeysendRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{121}
}
-func (x *ListclosedchannelsClosedchannels) GetFundingTxid() []byte {
+func (x *KeysendRequest) GetDestination() []byte {
if x != nil {
- return x.FundingTxid
+ return x.Destination
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetFundingOutnum() uint32 {
- if x != nil {
- return x.FundingOutnum
+func (x *KeysendRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
- return 0
+ return ""
}
-func (x *ListclosedchannelsClosedchannels) GetLeased() bool {
- if x != nil {
- return x.Leased
+func (x *KeysendRequest) GetMaxfeepercent() float64 {
+ if x != nil && x.Maxfeepercent != nil {
+ return *x.Maxfeepercent
}
- return false
+ return 0
}
-func (x *ListclosedchannelsClosedchannels) GetFundingFeePaidMsat() *Amount {
- if x != nil {
- return x.FundingFeePaidMsat
+func (x *KeysendRequest) GetRetryFor() uint32 {
+ if x != nil && x.RetryFor != nil {
+ return *x.RetryFor
}
- return nil
+ return 0
}
-func (x *ListclosedchannelsClosedchannels) GetFundingFeeRcvdMsat() *Amount {
- if x != nil {
- return x.FundingFeeRcvdMsat
+func (x *KeysendRequest) GetMaxdelay() uint32 {
+ if x != nil && x.Maxdelay != nil {
+ return *x.Maxdelay
}
- return nil
+ return 0
}
-func (x *ListclosedchannelsClosedchannels) GetFundingPushedMsat() *Amount {
+func (x *KeysendRequest) GetExemptfee() *Amount {
if x != nil {
- return x.FundingPushedMsat
+ return x.Exemptfee
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetTotalMsat() *Amount {
+func (x *KeysendRequest) GetRoutehints() *RoutehintList {
if x != nil {
- return x.TotalMsat
+ return x.Routehints
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetFinalToUsMsat() *Amount {
+func (x *KeysendRequest) GetExtratlvs() *TlvStream {
if x != nil {
- return x.FinalToUsMsat
+ return x.Extratlvs
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetMinToUsMsat() *Amount {
+func (x *KeysendRequest) GetAmountMsat() *Amount {
if x != nil {
- return x.MinToUsMsat
+ return x.AmountMsat
}
return nil
}
-func (x *ListclosedchannelsClosedchannels) GetMaxToUsMsat() *Amount {
- if x != nil {
- return x.MaxToUsMsat
- }
- return nil
-}
+type KeysendResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *ListclosedchannelsClosedchannels) GetLastCommitmentTxid() []byte {
- if x != nil {
- return x.LastCommitmentTxid
- }
- return nil
+ PaymentPreimage []byte `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
+ Destination []byte `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ CreatedAt float64 `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Parts uint32 `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ WarningPartialCompletion *string `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
+ Status KeysendResponse_KeysendStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.KeysendResponse_KeysendStatus" json:"status,omitempty"`
}
-func (x *ListclosedchannelsClosedchannels) GetLastCommitmentFeeMsat() *Amount {
- if x != nil {
- return x.LastCommitmentFeeMsat
+func (x *KeysendResponse) Reset() {
+ *x = KeysendResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[122]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *ListclosedchannelsClosedchannels) GetCloseCause() ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause {
- if x != nil {
- return x.CloseCause
- }
- return ListclosedchannelsClosedchannels_UNKNOWN
+func (x *KeysendResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *ListclosedchannelsClosedchannels) GetLastStableConnection() uint64 {
- if x != nil && x.LastStableConnection != nil {
- return *x.LastStableConnection
+func (*KeysendResponse) ProtoMessage() {}
+
+func (x *KeysendResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[122]
+ 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 KeysendResponse.ProtoReflect.Descriptor instead.
+func (*KeysendResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{122}
+}
+
+func (x *KeysendResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+func (x *KeysendResponse) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+func (x *KeysendResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *KeysendResponse) GetCreatedAt() float64 {
+ if x != nil {
+ return x.CreatedAt
}
return 0
}
-type ListclosedchannelsClosedchannelsAlias struct {
+func (x *KeysendResponse) GetParts() uint32 {
+ if x != nil {
+ return x.Parts
+ }
+ return 0
+}
+
+func (x *KeysendResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *KeysendResponse) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
+ }
+ return nil
+}
+
+func (x *KeysendResponse) GetWarningPartialCompletion() string {
+ if x != nil && x.WarningPartialCompletion != nil {
+ return *x.WarningPartialCompletion
+ }
+ return ""
+}
+
+func (x *KeysendResponse) GetStatus() KeysendResponse_KeysendStatus {
+ if x != nil {
+ return x.Status
+ }
+ return KeysendResponse_COMPLETE
+}
+
+type FundpsbtRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Local *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
- Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
+ Satoshi *AmountOrAll `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
+ Startweight uint32 `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
+ Minconf *uint32 `protobuf:"varint,4,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Reserve *uint32 `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+ Locktime *uint32 `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
+ MinWitnessWeight *uint32 `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
+ ExcessAsChange *bool `protobuf:"varint,8,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
+ Nonwrapped *bool `protobuf:"varint,9,opt,name=nonwrapped,proto3,oneof" json:"nonwrapped,omitempty"`
+ OpeningAnchorChannel *bool `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
}
-func (x *ListclosedchannelsClosedchannelsAlias) Reset() {
- *x = ListclosedchannelsClosedchannelsAlias{}
+func (x *FundpsbtRequest) Reset() {
+ *x = FundpsbtRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[123]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -12738,13 +12697,13 @@ func (x *ListclosedchannelsClosedchannelsAlias) Reset() {
}
}
-func (x *ListclosedchannelsClosedchannelsAlias) String() string {
+func (x *FundpsbtRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListclosedchannelsClosedchannelsAlias) ProtoMessage() {}
+func (*FundpsbtRequest) ProtoMessage() {}
-func (x *ListclosedchannelsClosedchannelsAlias) ProtoReflect() protoreflect.Message {
+func (x *FundpsbtRequest) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[123]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -12756,119 +12715,111 @@ func (x *ListclosedchannelsClosedchannelsAlias) ProtoReflect() protoreflect.Mess
return mi.MessageOf(x)
}
-// Deprecated: Use ListclosedchannelsClosedchannelsAlias.ProtoReflect.Descriptor instead.
-func (*ListclosedchannelsClosedchannelsAlias) Descriptor() ([]byte, []int) {
+// Deprecated: Use FundpsbtRequest.ProtoReflect.Descriptor instead.
+func (*FundpsbtRequest) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{123}
}
-func (x *ListclosedchannelsClosedchannelsAlias) GetLocal() string {
- if x != nil && x.Local != nil {
- return *x.Local
+func (x *FundpsbtRequest) GetSatoshi() *AmountOrAll {
+ if x != nil {
+ return x.Satoshi
}
- return ""
+ return nil
}
-func (x *ListclosedchannelsClosedchannelsAlias) GetRemote() string {
- if x != nil && x.Remote != nil {
- return *x.Remote
+func (x *FundpsbtRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
}
- return ""
+ return nil
}
-type DecodepayRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
- Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
+func (x *FundpsbtRequest) GetStartweight() uint32 {
+ if x != nil {
+ return x.Startweight
+ }
+ return 0
}
-func (x *DecodepayRequest) Reset() {
- *x = DecodepayRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[124]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *FundpsbtRequest) GetMinconf() uint32 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
}
+ return 0
}
-func (x *DecodepayRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *FundpsbtRequest) GetReserve() uint32 {
+ if x != nil && x.Reserve != nil {
+ return *x.Reserve
+ }
+ return 0
}
-func (*DecodepayRequest) ProtoMessage() {}
+func (x *FundpsbtRequest) GetLocktime() uint32 {
+ if x != nil && x.Locktime != nil {
+ return *x.Locktime
+ }
+ return 0
+}
-func (x *DecodepayRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[124]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *FundpsbtRequest) GetMinWitnessWeight() uint32 {
+ if x != nil && x.MinWitnessWeight != nil {
+ return *x.MinWitnessWeight
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use DecodepayRequest.ProtoReflect.Descriptor instead.
-func (*DecodepayRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{124}
+func (x *FundpsbtRequest) GetExcessAsChange() bool {
+ if x != nil && x.ExcessAsChange != nil {
+ return *x.ExcessAsChange
+ }
+ return false
}
-func (x *DecodepayRequest) GetBolt11() string {
- if x != nil {
- return x.Bolt11
+func (x *FundpsbtRequest) GetNonwrapped() bool {
+ if x != nil && x.Nonwrapped != nil {
+ return *x.Nonwrapped
}
- return ""
+ return false
}
-func (x *DecodepayRequest) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+func (x *FundpsbtRequest) GetOpeningAnchorChannel() bool {
+ if x != nil && x.OpeningAnchorChannel != nil {
+ return *x.OpeningAnchorChannel
}
- return ""
+ return false
}
-type DecodepayResponse struct {
+type FundpsbtResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Currency string `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"`
- CreatedAt uint64 `protobuf:"varint,2,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- Expiry uint64 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
- Payee []byte `protobuf:"bytes,4,opt,name=payee,proto3" json:"payee,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Signature string `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"`
- Description *string `protobuf:"bytes,8,opt,name=description,proto3,oneof" json:"description,omitempty"`
- DescriptionHash []byte `protobuf:"bytes,9,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
- MinFinalCltvExpiry uint32 `protobuf:"varint,10,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3" json:"min_final_cltv_expiry,omitempty"`
- PaymentSecret []byte `protobuf:"bytes,11,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
- Features []byte `protobuf:"bytes,12,opt,name=features,proto3,oneof" json:"features,omitempty"`
- PaymentMetadata []byte `protobuf:"bytes,13,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
- Fallbacks []*DecodepayFallbacks `protobuf:"bytes,14,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
- Extra []*DecodepayExtra `protobuf:"bytes,16,rep,name=extra,proto3" json:"extra,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ FeeratePerKw uint32 `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
+ EstimatedFinalWeight uint32 `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
+ ExcessMsat *Amount `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
+ ChangeOutnum *uint32 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
+ Reservations []*FundpsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
}
-func (x *DecodepayResponse) Reset() {
- *x = DecodepayResponse{}
+func (x *FundpsbtResponse) Reset() {
+ *x = FundpsbtResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[125]
+ mi := &file_node_proto_msgTypes[124]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodepayResponse) String() string {
+func (x *FundpsbtResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodepayResponse) ProtoMessage() {}
+func (*FundpsbtResponse) ProtoMessage() {}
-func (x *DecodepayResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[125]
+func (x *FundpsbtResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[124]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -12879,128 +12830,143 @@ func (x *DecodepayResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodepayResponse.ProtoReflect.Descriptor instead.
-func (*DecodepayResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{125}
+// Deprecated: Use FundpsbtResponse.ProtoReflect.Descriptor instead.
+func (*FundpsbtResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{124}
}
-func (x *DecodepayResponse) GetCurrency() string {
+func (x *FundpsbtResponse) GetPsbt() string {
if x != nil {
- return x.Currency
+ return x.Psbt
}
return ""
}
-func (x *DecodepayResponse) GetCreatedAt() uint64 {
+func (x *FundpsbtResponse) GetFeeratePerKw() uint32 {
if x != nil {
- return x.CreatedAt
+ return x.FeeratePerKw
}
return 0
}
-func (x *DecodepayResponse) GetExpiry() uint64 {
+func (x *FundpsbtResponse) GetEstimatedFinalWeight() uint32 {
if x != nil {
- return x.Expiry
+ return x.EstimatedFinalWeight
}
return 0
}
-func (x *DecodepayResponse) GetPayee() []byte {
+func (x *FundpsbtResponse) GetExcessMsat() *Amount {
if x != nil {
- return x.Payee
+ return x.ExcessMsat
}
return nil
}
-func (x *DecodepayResponse) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *FundpsbtResponse) GetChangeOutnum() uint32 {
+ if x != nil && x.ChangeOutnum != nil {
+ return *x.ChangeOutnum
}
- return nil
+ return 0
}
-func (x *DecodepayResponse) GetPaymentHash() []byte {
+func (x *FundpsbtResponse) GetReservations() []*FundpsbtReservations {
if x != nil {
- return x.PaymentHash
+ return x.Reservations
}
return nil
}
-func (x *DecodepayResponse) GetSignature() string {
- if x != nil {
- return x.Signature
- }
- return ""
+type FundpsbtReservations struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
+ WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
+ Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
+ ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
}
-func (x *DecodepayResponse) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+func (x *FundpsbtReservations) Reset() {
+ *x = FundpsbtReservations{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[125]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *DecodepayResponse) GetDescriptionHash() []byte {
- if x != nil {
- return x.DescriptionHash
- }
- return nil
+func (x *FundpsbtReservations) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodepayResponse) GetMinFinalCltvExpiry() uint32 {
- if x != nil {
- return x.MinFinalCltvExpiry
+func (*FundpsbtReservations) ProtoMessage() {}
+
+func (x *FundpsbtReservations) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[125]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *DecodepayResponse) GetPaymentSecret() []byte {
+// Deprecated: Use FundpsbtReservations.ProtoReflect.Descriptor instead.
+func (*FundpsbtReservations) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{125}
+}
+
+func (x *FundpsbtReservations) GetTxid() []byte {
if x != nil {
- return x.PaymentSecret
+ return x.Txid
}
return nil
}
-func (x *DecodepayResponse) GetFeatures() []byte {
+func (x *FundpsbtReservations) GetVout() uint32 {
if x != nil {
- return x.Features
+ return x.Vout
}
- return nil
+ return 0
}
-func (x *DecodepayResponse) GetPaymentMetadata() []byte {
+func (x *FundpsbtReservations) GetWasReserved() bool {
if x != nil {
- return x.PaymentMetadata
+ return x.WasReserved
}
- return nil
+ return false
}
-func (x *DecodepayResponse) GetFallbacks() []*DecodepayFallbacks {
+func (x *FundpsbtReservations) GetReserved() bool {
if x != nil {
- return x.Fallbacks
+ return x.Reserved
}
- return nil
+ return false
}
-func (x *DecodepayResponse) GetExtra() []*DecodepayExtra {
+func (x *FundpsbtReservations) GetReservedToBlock() uint32 {
if x != nil {
- return x.Extra
+ return x.ReservedToBlock
}
- return nil
+ return 0
}
-type DecodepayFallbacks struct {
+type SendpsbtRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ItemType DecodepayFallbacks_DecodepayFallbacksType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodepayFallbacks_DecodepayFallbacksType" json:"item_type,omitempty"`
- Addr *string `protobuf:"bytes,2,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
- Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3" json:"hex,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Reserve *uint32 `protobuf:"varint,2,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
}
-func (x *DecodepayFallbacks) Reset() {
- *x = DecodepayFallbacks{}
+func (x *SendpsbtRequest) Reset() {
+ *x = SendpsbtRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[126]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13008,13 +12974,13 @@ func (x *DecodepayFallbacks) Reset() {
}
}
-func (x *DecodepayFallbacks) String() string {
+func (x *SendpsbtRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodepayFallbacks) ProtoMessage() {}
+func (*SendpsbtRequest) ProtoMessage() {}
-func (x *DecodepayFallbacks) ProtoReflect() protoreflect.Message {
+func (x *SendpsbtRequest) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[126]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13026,43 +12992,36 @@ func (x *DecodepayFallbacks) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodepayFallbacks.ProtoReflect.Descriptor instead.
-func (*DecodepayFallbacks) Descriptor() ([]byte, []int) {
+// Deprecated: Use SendpsbtRequest.ProtoReflect.Descriptor instead.
+func (*SendpsbtRequest) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{126}
}
-func (x *DecodepayFallbacks) GetItemType() DecodepayFallbacks_DecodepayFallbacksType {
+func (x *SendpsbtRequest) GetPsbt() string {
if x != nil {
- return x.ItemType
- }
- return DecodepayFallbacks_P2PKH
-}
-
-func (x *DecodepayFallbacks) GetAddr() string {
- if x != nil && x.Addr != nil {
- return *x.Addr
+ return x.Psbt
}
return ""
}
-func (x *DecodepayFallbacks) GetHex() []byte {
- if x != nil {
- return x.Hex
+func (x *SendpsbtRequest) GetReserve() uint32 {
+ if x != nil && x.Reserve != nil {
+ return *x.Reserve
}
- return nil
+ return 0
}
-type DecodepayExtra struct {
+type SendpsbtResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
- Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodepayExtra) Reset() {
- *x = DecodepayExtra{}
+func (x *SendpsbtResponse) Reset() {
+ *x = SendpsbtResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[127]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13070,13 +13029,13 @@ func (x *DecodepayExtra) Reset() {
}
}
-func (x *DecodepayExtra) String() string {
+func (x *SendpsbtResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodepayExtra) ProtoMessage() {}
+func (*SendpsbtResponse) ProtoMessage() {}
-func (x *DecodepayExtra) ProtoReflect() protoreflect.Message {
+func (x *SendpsbtResponse) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[127]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13088,35 +13047,36 @@ func (x *DecodepayExtra) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodepayExtra.ProtoReflect.Descriptor instead.
-func (*DecodepayExtra) Descriptor() ([]byte, []int) {
+// Deprecated: Use SendpsbtResponse.ProtoReflect.Descriptor instead.
+func (*SendpsbtResponse) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{127}
}
-func (x *DecodepayExtra) GetTag() string {
+func (x *SendpsbtResponse) GetTx() []byte {
if x != nil {
- return x.Tag
+ return x.Tx
}
- return ""
+ return nil
}
-func (x *DecodepayExtra) GetData() string {
+func (x *SendpsbtResponse) GetTxid() []byte {
if x != nil {
- return x.Data
+ return x.Txid
}
- return ""
+ return nil
}
-type DecodeRequest struct {
+type SignpsbtRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- String_ string `protobuf:"bytes,1,opt,name=string,proto3" json:"string,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Signonly []uint32 `protobuf:"varint,2,rep,packed,name=signonly,proto3" json:"signonly,omitempty"`
}
-func (x *DecodeRequest) Reset() {
- *x = DecodeRequest{}
+func (x *SignpsbtRequest) Reset() {
+ *x = SignpsbtRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[128]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13124,13 +13084,13 @@ func (x *DecodeRequest) Reset() {
}
}
-func (x *DecodeRequest) String() string {
+func (x *SignpsbtRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeRequest) ProtoMessage() {}
+func (*SignpsbtRequest) ProtoMessage() {}
-func (x *DecodeRequest) ProtoReflect() protoreflect.Message {
+func (x *SignpsbtRequest) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[128]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13142,97 +13102,35 @@ func (x *DecodeRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeRequest.ProtoReflect.Descriptor instead.
-func (*DecodeRequest) Descriptor() ([]byte, []int) {
+// Deprecated: Use SignpsbtRequest.ProtoReflect.Descriptor instead.
+func (*SignpsbtRequest) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{128}
}
-func (x *DecodeRequest) GetString_() string {
+func (x *SignpsbtRequest) GetPsbt() string {
if x != nil {
- return x.String_
+ return x.Psbt
}
return ""
}
-type DecodeResponse struct {
+func (x *SignpsbtRequest) GetSignonly() []uint32 {
+ if x != nil {
+ return x.Signonly
+ }
+ return nil
+}
+
+type SignpsbtResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ItemType DecodeResponse_DecodeType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodeResponse_DecodeType" json:"item_type,omitempty"`
- Valid bool `protobuf:"varint,2,opt,name=valid,proto3" json:"valid,omitempty"`
- OfferId []byte `protobuf:"bytes,3,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
- OfferChains [][]byte `protobuf:"bytes,4,rep,name=offer_chains,json=offerChains,proto3" json:"offer_chains,omitempty"`
- OfferMetadata []byte `protobuf:"bytes,5,opt,name=offer_metadata,json=offerMetadata,proto3,oneof" json:"offer_metadata,omitempty"`
- OfferCurrency *string `protobuf:"bytes,6,opt,name=offer_currency,json=offerCurrency,proto3,oneof" json:"offer_currency,omitempty"`
- WarningUnknownOfferCurrency *string `protobuf:"bytes,7,opt,name=warning_unknown_offer_currency,json=warningUnknownOfferCurrency,proto3,oneof" json:"warning_unknown_offer_currency,omitempty"`
- CurrencyMinorUnit *uint32 `protobuf:"varint,8,opt,name=currency_minor_unit,json=currencyMinorUnit,proto3,oneof" json:"currency_minor_unit,omitempty"`
- OfferAmount *uint64 `protobuf:"varint,9,opt,name=offer_amount,json=offerAmount,proto3,oneof" json:"offer_amount,omitempty"`
- OfferAmountMsat *Amount `protobuf:"bytes,10,opt,name=offer_amount_msat,json=offerAmountMsat,proto3,oneof" json:"offer_amount_msat,omitempty"`
- OfferDescription *string `protobuf:"bytes,11,opt,name=offer_description,json=offerDescription,proto3,oneof" json:"offer_description,omitempty"`
- OfferIssuer *string `protobuf:"bytes,12,opt,name=offer_issuer,json=offerIssuer,proto3,oneof" json:"offer_issuer,omitempty"`
- OfferFeatures []byte `protobuf:"bytes,13,opt,name=offer_features,json=offerFeatures,proto3,oneof" json:"offer_features,omitempty"`
- OfferAbsoluteExpiry *uint64 `protobuf:"varint,14,opt,name=offer_absolute_expiry,json=offerAbsoluteExpiry,proto3,oneof" json:"offer_absolute_expiry,omitempty"`
- OfferQuantityMax *uint64 `protobuf:"varint,15,opt,name=offer_quantity_max,json=offerQuantityMax,proto3,oneof" json:"offer_quantity_max,omitempty"`
- OfferPaths []*DecodeOfferPaths `protobuf:"bytes,16,rep,name=offer_paths,json=offerPaths,proto3" json:"offer_paths,omitempty"`
- OfferNodeId []byte `protobuf:"bytes,17,opt,name=offer_node_id,json=offerNodeId,proto3,oneof" json:"offer_node_id,omitempty"`
- WarningMissingOfferNodeId *string `protobuf:"bytes,20,opt,name=warning_missing_offer_node_id,json=warningMissingOfferNodeId,proto3,oneof" json:"warning_missing_offer_node_id,omitempty"`
- WarningInvalidOfferDescription *string `protobuf:"bytes,21,opt,name=warning_invalid_offer_description,json=warningInvalidOfferDescription,proto3,oneof" json:"warning_invalid_offer_description,omitempty"`
- WarningMissingOfferDescription *string `protobuf:"bytes,22,opt,name=warning_missing_offer_description,json=warningMissingOfferDescription,proto3,oneof" json:"warning_missing_offer_description,omitempty"`
- WarningInvalidOfferCurrency *string `protobuf:"bytes,23,opt,name=warning_invalid_offer_currency,json=warningInvalidOfferCurrency,proto3,oneof" json:"warning_invalid_offer_currency,omitempty"`
- WarningInvalidOfferIssuer *string `protobuf:"bytes,24,opt,name=warning_invalid_offer_issuer,json=warningInvalidOfferIssuer,proto3,oneof" json:"warning_invalid_offer_issuer,omitempty"`
- InvreqMetadata []byte `protobuf:"bytes,25,opt,name=invreq_metadata,json=invreqMetadata,proto3,oneof" json:"invreq_metadata,omitempty"`
- InvreqPayerId []byte `protobuf:"bytes,26,opt,name=invreq_payer_id,json=invreqPayerId,proto3,oneof" json:"invreq_payer_id,omitempty"`
- InvreqChain []byte `protobuf:"bytes,27,opt,name=invreq_chain,json=invreqChain,proto3,oneof" json:"invreq_chain,omitempty"`
- InvreqAmountMsat *Amount `protobuf:"bytes,28,opt,name=invreq_amount_msat,json=invreqAmountMsat,proto3,oneof" json:"invreq_amount_msat,omitempty"`
- InvreqFeatures []byte `protobuf:"bytes,29,opt,name=invreq_features,json=invreqFeatures,proto3,oneof" json:"invreq_features,omitempty"`
- InvreqQuantity *uint64 `protobuf:"varint,30,opt,name=invreq_quantity,json=invreqQuantity,proto3,oneof" json:"invreq_quantity,omitempty"`
- InvreqPayerNote *string `protobuf:"bytes,31,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
- InvreqRecurrenceCounter *uint32 `protobuf:"varint,32,opt,name=invreq_recurrence_counter,json=invreqRecurrenceCounter,proto3,oneof" json:"invreq_recurrence_counter,omitempty"`
- InvreqRecurrenceStart *uint32 `protobuf:"varint,33,opt,name=invreq_recurrence_start,json=invreqRecurrenceStart,proto3,oneof" json:"invreq_recurrence_start,omitempty"`
- WarningMissingInvreqMetadata *string `protobuf:"bytes,35,opt,name=warning_missing_invreq_metadata,json=warningMissingInvreqMetadata,proto3,oneof" json:"warning_missing_invreq_metadata,omitempty"`
- WarningMissingInvreqPayerId *string `protobuf:"bytes,36,opt,name=warning_missing_invreq_payer_id,json=warningMissingInvreqPayerId,proto3,oneof" json:"warning_missing_invreq_payer_id,omitempty"`
- WarningInvalidInvreqPayerNote *string `protobuf:"bytes,37,opt,name=warning_invalid_invreq_payer_note,json=warningInvalidInvreqPayerNote,proto3,oneof" json:"warning_invalid_invreq_payer_note,omitempty"`
- WarningMissingInvoiceRequestSignature *string `protobuf:"bytes,38,opt,name=warning_missing_invoice_request_signature,json=warningMissingInvoiceRequestSignature,proto3,oneof" json:"warning_missing_invoice_request_signature,omitempty"`
- WarningInvalidInvoiceRequestSignature *string `protobuf:"bytes,39,opt,name=warning_invalid_invoice_request_signature,json=warningInvalidInvoiceRequestSignature,proto3,oneof" json:"warning_invalid_invoice_request_signature,omitempty"`
- InvoiceCreatedAt *uint64 `protobuf:"varint,41,opt,name=invoice_created_at,json=invoiceCreatedAt,proto3,oneof" json:"invoice_created_at,omitempty"`
- InvoiceRelativeExpiry *uint32 `protobuf:"varint,42,opt,name=invoice_relative_expiry,json=invoiceRelativeExpiry,proto3,oneof" json:"invoice_relative_expiry,omitempty"`
- InvoicePaymentHash []byte `protobuf:"bytes,43,opt,name=invoice_payment_hash,json=invoicePaymentHash,proto3,oneof" json:"invoice_payment_hash,omitempty"`
- InvoiceAmountMsat *Amount `protobuf:"bytes,44,opt,name=invoice_amount_msat,json=invoiceAmountMsat,proto3,oneof" json:"invoice_amount_msat,omitempty"`
- InvoiceFallbacks []*DecodeInvoiceFallbacks `protobuf:"bytes,45,rep,name=invoice_fallbacks,json=invoiceFallbacks,proto3" json:"invoice_fallbacks,omitempty"`
- InvoiceFeatures []byte `protobuf:"bytes,46,opt,name=invoice_features,json=invoiceFeatures,proto3,oneof" json:"invoice_features,omitempty"`
- InvoiceNodeId []byte `protobuf:"bytes,47,opt,name=invoice_node_id,json=invoiceNodeId,proto3,oneof" json:"invoice_node_id,omitempty"`
- InvoiceRecurrenceBasetime *uint64 `protobuf:"varint,48,opt,name=invoice_recurrence_basetime,json=invoiceRecurrenceBasetime,proto3,oneof" json:"invoice_recurrence_basetime,omitempty"`
- WarningMissingInvoicePaths *string `protobuf:"bytes,50,opt,name=warning_missing_invoice_paths,json=warningMissingInvoicePaths,proto3,oneof" json:"warning_missing_invoice_paths,omitempty"`
- WarningMissingInvoiceBlindedpay *string `protobuf:"bytes,51,opt,name=warning_missing_invoice_blindedpay,json=warningMissingInvoiceBlindedpay,proto3,oneof" json:"warning_missing_invoice_blindedpay,omitempty"`
- WarningMissingInvoiceCreatedAt *string `protobuf:"bytes,52,opt,name=warning_missing_invoice_created_at,json=warningMissingInvoiceCreatedAt,proto3,oneof" json:"warning_missing_invoice_created_at,omitempty"`
- WarningMissingInvoicePaymentHash *string `protobuf:"bytes,53,opt,name=warning_missing_invoice_payment_hash,json=warningMissingInvoicePaymentHash,proto3,oneof" json:"warning_missing_invoice_payment_hash,omitempty"`
- WarningMissingInvoiceAmount *string `protobuf:"bytes,54,opt,name=warning_missing_invoice_amount,json=warningMissingInvoiceAmount,proto3,oneof" json:"warning_missing_invoice_amount,omitempty"`
- WarningMissingInvoiceRecurrenceBasetime *string `protobuf:"bytes,55,opt,name=warning_missing_invoice_recurrence_basetime,json=warningMissingInvoiceRecurrenceBasetime,proto3,oneof" json:"warning_missing_invoice_recurrence_basetime,omitempty"`
- WarningMissingInvoiceNodeId *string `protobuf:"bytes,56,opt,name=warning_missing_invoice_node_id,json=warningMissingInvoiceNodeId,proto3,oneof" json:"warning_missing_invoice_node_id,omitempty"`
- WarningMissingInvoiceSignature *string `protobuf:"bytes,57,opt,name=warning_missing_invoice_signature,json=warningMissingInvoiceSignature,proto3,oneof" json:"warning_missing_invoice_signature,omitempty"`
- WarningInvalidInvoiceSignature *string `protobuf:"bytes,58,opt,name=warning_invalid_invoice_signature,json=warningInvalidInvoiceSignature,proto3,oneof" json:"warning_invalid_invoice_signature,omitempty"`
- Fallbacks []*DecodeFallbacks `protobuf:"bytes,59,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
- CreatedAt *uint64 `protobuf:"varint,60,opt,name=created_at,json=createdAt,proto3,oneof" json:"created_at,omitempty"`
- Expiry *uint64 `protobuf:"varint,61,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
- Payee []byte `protobuf:"bytes,62,opt,name=payee,proto3,oneof" json:"payee,omitempty"`
- PaymentHash []byte `protobuf:"bytes,63,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- DescriptionHash []byte `protobuf:"bytes,64,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
- MinFinalCltvExpiry *uint32 `protobuf:"varint,65,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3,oneof" json:"min_final_cltv_expiry,omitempty"`
- PaymentSecret []byte `protobuf:"bytes,66,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
- PaymentMetadata []byte `protobuf:"bytes,67,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
- Extra []*DecodeExtra `protobuf:"bytes,69,rep,name=extra,proto3" json:"extra,omitempty"`
- UniqueId *string `protobuf:"bytes,70,opt,name=unique_id,json=uniqueId,proto3,oneof" json:"unique_id,omitempty"`
- Version *string `protobuf:"bytes,71,opt,name=version,proto3,oneof" json:"version,omitempty"`
- String_ *string `protobuf:"bytes,72,opt,name=string,proto3,oneof" json:"string,omitempty"`
- Restrictions []*DecodeRestrictions `protobuf:"bytes,73,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
- WarningRuneInvalidUtf8 *string `protobuf:"bytes,74,opt,name=warning_rune_invalid_utf8,json=warningRuneInvalidUtf8,proto3,oneof" json:"warning_rune_invalid_utf8,omitempty"`
- Hex []byte `protobuf:"bytes,75,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
- Decrypted []byte `protobuf:"bytes,76,opt,name=decrypted,proto3,oneof" json:"decrypted,omitempty"`
+ SignedPsbt string `protobuf:"bytes,1,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"`
}
-func (x *DecodeResponse) Reset() {
- *x = DecodeResponse{}
+func (x *SignpsbtResponse) Reset() {
+ *x = SignpsbtResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[129]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13240,13 +13138,13 @@ func (x *DecodeResponse) Reset() {
}
}
-func (x *DecodeResponse) String() string {
+func (x *SignpsbtResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeResponse) ProtoMessage() {}
+func (*SignpsbtResponse) ProtoMessage() {}
-func (x *DecodeResponse) ProtoReflect() protoreflect.Message {
+func (x *SignpsbtResponse) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[129]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -13258,527 +13156,503 @@ func (x *DecodeResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeResponse.ProtoReflect.Descriptor instead.
-func (*DecodeResponse) Descriptor() ([]byte, []int) {
+// Deprecated: Use SignpsbtResponse.ProtoReflect.Descriptor instead.
+func (*SignpsbtResponse) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{129}
}
-func (x *DecodeResponse) GetItemType() DecodeResponse_DecodeType {
+func (x *SignpsbtResponse) GetSignedPsbt() string {
if x != nil {
- return x.ItemType
+ return x.SignedPsbt
}
- return DecodeResponse_BOLT12_OFFER
+ return ""
}
-func (x *DecodeResponse) GetValid() bool {
- if x != nil {
- return x.Valid
- }
- return false
+type UtxopsbtRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Satoshi *AmountOrAll `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
+ Startweight uint32 `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Reserve *uint32 `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+ Locktime *uint32 `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
+ MinWitnessWeight *uint32 `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
+ Reservedok *bool `protobuf:"varint,8,opt,name=reservedok,proto3,oneof" json:"reservedok,omitempty"`
+ ExcessAsChange *bool `protobuf:"varint,9,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
+ OpeningAnchorChannel *bool `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
}
-func (x *DecodeResponse) GetOfferId() []byte {
- if x != nil {
- return x.OfferId
+func (x *UtxopsbtRequest) Reset() {
+ *x = UtxopsbtRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[130]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *DecodeResponse) GetOfferChains() [][]byte {
- if x != nil {
- return x.OfferChains
- }
- return nil
+func (x *UtxopsbtRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetOfferMetadata() []byte {
- if x != nil {
- return x.OfferMetadata
+func (*UtxopsbtRequest) ProtoMessage() {}
+
+func (x *UtxopsbtRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[130]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return nil
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetOfferCurrency() string {
- if x != nil && x.OfferCurrency != nil {
- return *x.OfferCurrency
- }
- return ""
+// Deprecated: Use UtxopsbtRequest.ProtoReflect.Descriptor instead.
+func (*UtxopsbtRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{130}
}
-func (x *DecodeResponse) GetWarningUnknownOfferCurrency() string {
- if x != nil && x.WarningUnknownOfferCurrency != nil {
- return *x.WarningUnknownOfferCurrency
+func (x *UtxopsbtRequest) GetSatoshi() *AmountOrAll {
+ if x != nil {
+ return x.Satoshi
}
- return ""
+ return nil
}
-func (x *DecodeResponse) GetCurrencyMinorUnit() uint32 {
- if x != nil && x.CurrencyMinorUnit != nil {
- return *x.CurrencyMinorUnit
+func (x *UtxopsbtRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
}
- return 0
+ return nil
}
-func (x *DecodeResponse) GetOfferAmount() uint64 {
- if x != nil && x.OfferAmount != nil {
- return *x.OfferAmount
+func (x *UtxopsbtRequest) GetStartweight() uint32 {
+ if x != nil {
+ return x.Startweight
}
return 0
}
-func (x *DecodeResponse) GetOfferAmountMsat() *Amount {
+func (x *UtxopsbtRequest) GetUtxos() []*Outpoint {
if x != nil {
- return x.OfferAmountMsat
+ return x.Utxos
}
return nil
}
-func (x *DecodeResponse) GetOfferDescription() string {
- if x != nil && x.OfferDescription != nil {
- return *x.OfferDescription
+func (x *UtxopsbtRequest) GetReserve() uint32 {
+ if x != nil && x.Reserve != nil {
+ return *x.Reserve
}
- return ""
+ return 0
}
-func (x *DecodeResponse) GetOfferIssuer() string {
- if x != nil && x.OfferIssuer != nil {
- return *x.OfferIssuer
+func (x *UtxopsbtRequest) GetLocktime() uint32 {
+ if x != nil && x.Locktime != nil {
+ return *x.Locktime
}
- return ""
+ return 0
}
-func (x *DecodeResponse) GetOfferFeatures() []byte {
- if x != nil {
- return x.OfferFeatures
+func (x *UtxopsbtRequest) GetMinWitnessWeight() uint32 {
+ if x != nil && x.MinWitnessWeight != nil {
+ return *x.MinWitnessWeight
}
- return nil
+ return 0
}
-func (x *DecodeResponse) GetOfferAbsoluteExpiry() uint64 {
- if x != nil && x.OfferAbsoluteExpiry != nil {
- return *x.OfferAbsoluteExpiry
+func (x *UtxopsbtRequest) GetReservedok() bool {
+ if x != nil && x.Reservedok != nil {
+ return *x.Reservedok
}
- return 0
+ return false
}
-func (x *DecodeResponse) GetOfferQuantityMax() uint64 {
- if x != nil && x.OfferQuantityMax != nil {
- return *x.OfferQuantityMax
+func (x *UtxopsbtRequest) GetExcessAsChange() bool {
+ if x != nil && x.ExcessAsChange != nil {
+ return *x.ExcessAsChange
}
- return 0
+ return false
}
-func (x *DecodeResponse) GetOfferPaths() []*DecodeOfferPaths {
- if x != nil {
- return x.OfferPaths
+func (x *UtxopsbtRequest) GetOpeningAnchorChannel() bool {
+ if x != nil && x.OpeningAnchorChannel != nil {
+ return *x.OpeningAnchorChannel
}
- return nil
+ return false
}
-func (x *DecodeResponse) GetOfferNodeId() []byte {
- if x != nil {
- return x.OfferNodeId
- }
- return nil
+type UtxopsbtResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ FeeratePerKw uint32 `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
+ EstimatedFinalWeight uint32 `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
+ ExcessMsat *Amount `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
+ ChangeOutnum *uint32 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
+ Reservations []*UtxopsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
}
-func (x *DecodeResponse) GetWarningMissingOfferNodeId() string {
- if x != nil && x.WarningMissingOfferNodeId != nil {
- return *x.WarningMissingOfferNodeId
+func (x *UtxopsbtResponse) Reset() {
+ *x = UtxopsbtResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[131]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *DecodeResponse) GetWarningInvalidOfferDescription() string {
- if x != nil && x.WarningInvalidOfferDescription != nil {
- return *x.WarningInvalidOfferDescription
- }
- return ""
+func (x *UtxopsbtResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetWarningMissingOfferDescription() string {
- if x != nil && x.WarningMissingOfferDescription != nil {
- return *x.WarningMissingOfferDescription
+func (*UtxopsbtResponse) ProtoMessage() {}
+
+func (x *UtxopsbtResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[131]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return ""
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetWarningInvalidOfferCurrency() string {
- if x != nil && x.WarningInvalidOfferCurrency != nil {
- return *x.WarningInvalidOfferCurrency
- }
- return ""
+// Deprecated: Use UtxopsbtResponse.ProtoReflect.Descriptor instead.
+func (*UtxopsbtResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{131}
}
-func (x *DecodeResponse) GetWarningInvalidOfferIssuer() string {
- if x != nil && x.WarningInvalidOfferIssuer != nil {
- return *x.WarningInvalidOfferIssuer
+func (x *UtxopsbtResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
}
return ""
}
-func (x *DecodeResponse) GetInvreqMetadata() []byte {
+func (x *UtxopsbtResponse) GetFeeratePerKw() uint32 {
if x != nil {
- return x.InvreqMetadata
+ return x.FeeratePerKw
}
- return nil
+ return 0
}
-func (x *DecodeResponse) GetInvreqPayerId() []byte {
+func (x *UtxopsbtResponse) GetEstimatedFinalWeight() uint32 {
if x != nil {
- return x.InvreqPayerId
+ return x.EstimatedFinalWeight
}
- return nil
+ return 0
}
-func (x *DecodeResponse) GetInvreqChain() []byte {
+func (x *UtxopsbtResponse) GetExcessMsat() *Amount {
if x != nil {
- return x.InvreqChain
+ return x.ExcessMsat
}
return nil
}
-func (x *DecodeResponse) GetInvreqAmountMsat() *Amount {
- if x != nil {
- return x.InvreqAmountMsat
+func (x *UtxopsbtResponse) GetChangeOutnum() uint32 {
+ if x != nil && x.ChangeOutnum != nil {
+ return *x.ChangeOutnum
}
- return nil
+ return 0
}
-func (x *DecodeResponse) GetInvreqFeatures() []byte {
+func (x *UtxopsbtResponse) GetReservations() []*UtxopsbtReservations {
if x != nil {
- return x.InvreqFeatures
+ return x.Reservations
}
return nil
}
-func (x *DecodeResponse) GetInvreqQuantity() uint64 {
- if x != nil && x.InvreqQuantity != nil {
- return *x.InvreqQuantity
- }
- return 0
-}
-
-func (x *DecodeResponse) GetInvreqPayerNote() string {
- if x != nil && x.InvreqPayerNote != nil {
- return *x.InvreqPayerNote
- }
- return ""
-}
-
-func (x *DecodeResponse) GetInvreqRecurrenceCounter() uint32 {
- if x != nil && x.InvreqRecurrenceCounter != nil {
- return *x.InvreqRecurrenceCounter
- }
- return 0
-}
-
-func (x *DecodeResponse) GetInvreqRecurrenceStart() uint32 {
- if x != nil && x.InvreqRecurrenceStart != nil {
- return *x.InvreqRecurrenceStart
- }
- return 0
-}
-
-func (x *DecodeResponse) GetWarningMissingInvreqMetadata() string {
- if x != nil && x.WarningMissingInvreqMetadata != nil {
- return *x.WarningMissingInvreqMetadata
- }
- return ""
-}
+type UtxopsbtReservations struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *DecodeResponse) GetWarningMissingInvreqPayerId() string {
- if x != nil && x.WarningMissingInvreqPayerId != nil {
- return *x.WarningMissingInvreqPayerId
- }
- return ""
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
+ WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
+ Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
+ ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
}
-func (x *DecodeResponse) GetWarningInvalidInvreqPayerNote() string {
- if x != nil && x.WarningInvalidInvreqPayerNote != nil {
- return *x.WarningInvalidInvreqPayerNote
+func (x *UtxopsbtReservations) Reset() {
+ *x = UtxopsbtReservations{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[132]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *DecodeResponse) GetWarningMissingInvoiceRequestSignature() string {
- if x != nil && x.WarningMissingInvoiceRequestSignature != nil {
- return *x.WarningMissingInvoiceRequestSignature
- }
- return ""
+func (x *UtxopsbtReservations) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetWarningInvalidInvoiceRequestSignature() string {
- if x != nil && x.WarningInvalidInvoiceRequestSignature != nil {
- return *x.WarningInvalidInvoiceRequestSignature
- }
- return ""
-}
+func (*UtxopsbtReservations) ProtoMessage() {}
-func (x *DecodeResponse) GetInvoiceCreatedAt() uint64 {
- if x != nil && x.InvoiceCreatedAt != nil {
- return *x.InvoiceCreatedAt
+func (x *UtxopsbtReservations) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[132]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetInvoiceRelativeExpiry() uint32 {
- if x != nil && x.InvoiceRelativeExpiry != nil {
- return *x.InvoiceRelativeExpiry
- }
- return 0
+// Deprecated: Use UtxopsbtReservations.ProtoReflect.Descriptor instead.
+func (*UtxopsbtReservations) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{132}
}
-func (x *DecodeResponse) GetInvoicePaymentHash() []byte {
+func (x *UtxopsbtReservations) GetTxid() []byte {
if x != nil {
- return x.InvoicePaymentHash
+ return x.Txid
}
return nil
}
-func (x *DecodeResponse) GetInvoiceAmountMsat() *Amount {
+func (x *UtxopsbtReservations) GetVout() uint32 {
if x != nil {
- return x.InvoiceAmountMsat
+ return x.Vout
}
- return nil
+ return 0
}
-func (x *DecodeResponse) GetInvoiceFallbacks() []*DecodeInvoiceFallbacks {
+func (x *UtxopsbtReservations) GetWasReserved() bool {
if x != nil {
- return x.InvoiceFallbacks
+ return x.WasReserved
}
- return nil
+ return false
}
-func (x *DecodeResponse) GetInvoiceFeatures() []byte {
+func (x *UtxopsbtReservations) GetReserved() bool {
if x != nil {
- return x.InvoiceFeatures
+ return x.Reserved
}
- return nil
+ return false
}
-func (x *DecodeResponse) GetInvoiceNodeId() []byte {
+func (x *UtxopsbtReservations) GetReservedToBlock() uint32 {
if x != nil {
- return x.InvoiceNodeId
- }
- return nil
-}
-
-func (x *DecodeResponse) GetInvoiceRecurrenceBasetime() uint64 {
- if x != nil && x.InvoiceRecurrenceBasetime != nil {
- return *x.InvoiceRecurrenceBasetime
+ return x.ReservedToBlock
}
return 0
}
-func (x *DecodeResponse) GetWarningMissingInvoicePaths() string {
- if x != nil && x.WarningMissingInvoicePaths != nil {
- return *x.WarningMissingInvoicePaths
- }
- return ""
-}
+type TxdiscardRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *DecodeResponse) GetWarningMissingInvoiceBlindedpay() string {
- if x != nil && x.WarningMissingInvoiceBlindedpay != nil {
- return *x.WarningMissingInvoiceBlindedpay
- }
- return ""
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodeResponse) GetWarningMissingInvoiceCreatedAt() string {
- if x != nil && x.WarningMissingInvoiceCreatedAt != nil {
- return *x.WarningMissingInvoiceCreatedAt
+func (x *TxdiscardRequest) Reset() {
+ *x = TxdiscardRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[133]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *DecodeResponse) GetWarningMissingInvoicePaymentHash() string {
- if x != nil && x.WarningMissingInvoicePaymentHash != nil {
- return *x.WarningMissingInvoicePaymentHash
- }
- return ""
+func (x *TxdiscardRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetWarningMissingInvoiceAmount() string {
- if x != nil && x.WarningMissingInvoiceAmount != nil {
- return *x.WarningMissingInvoiceAmount
- }
- return ""
-}
+func (*TxdiscardRequest) ProtoMessage() {}
-func (x *DecodeResponse) GetWarningMissingInvoiceRecurrenceBasetime() string {
- if x != nil && x.WarningMissingInvoiceRecurrenceBasetime != nil {
- return *x.WarningMissingInvoiceRecurrenceBasetime
+func (x *TxdiscardRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[133]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return ""
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetWarningMissingInvoiceNodeId() string {
- if x != nil && x.WarningMissingInvoiceNodeId != nil {
- return *x.WarningMissingInvoiceNodeId
- }
- return ""
+// Deprecated: Use TxdiscardRequest.ProtoReflect.Descriptor instead.
+func (*TxdiscardRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{133}
}
-func (x *DecodeResponse) GetWarningMissingInvoiceSignature() string {
- if x != nil && x.WarningMissingInvoiceSignature != nil {
- return *x.WarningMissingInvoiceSignature
+func (x *TxdiscardRequest) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
}
- return ""
+ return nil
}
-func (x *DecodeResponse) GetWarningInvalidInvoiceSignature() string {
- if x != nil && x.WarningInvalidInvoiceSignature != nil {
- return *x.WarningInvalidInvoiceSignature
- }
- return ""
+type TxdiscardResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ UnsignedTx []byte `protobuf:"bytes,1,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodeResponse) GetFallbacks() []*DecodeFallbacks {
- if x != nil {
- return x.Fallbacks
+func (x *TxdiscardResponse) Reset() {
+ *x = TxdiscardResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[134]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *DecodeResponse) GetCreatedAt() uint64 {
- if x != nil && x.CreatedAt != nil {
- return *x.CreatedAt
- }
- return 0
+func (x *TxdiscardResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetExpiry() uint64 {
- if x != nil && x.Expiry != nil {
- return *x.Expiry
+func (*TxdiscardResponse) ProtoMessage() {}
+
+func (x *TxdiscardResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[134]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetPayee() []byte {
- if x != nil {
- return x.Payee
- }
- return nil
+// Deprecated: Use TxdiscardResponse.ProtoReflect.Descriptor instead.
+func (*TxdiscardResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{134}
}
-func (x *DecodeResponse) GetPaymentHash() []byte {
+func (x *TxdiscardResponse) GetUnsignedTx() []byte {
if x != nil {
- return x.PaymentHash
+ return x.UnsignedTx
}
return nil
}
-func (x *DecodeResponse) GetDescriptionHash() []byte {
+func (x *TxdiscardResponse) GetTxid() []byte {
if x != nil {
- return x.DescriptionHash
+ return x.Txid
}
return nil
}
-func (x *DecodeResponse) GetMinFinalCltvExpiry() uint32 {
- if x != nil && x.MinFinalCltvExpiry != nil {
- return *x.MinFinalCltvExpiry
- }
- return 0
-}
-
-func (x *DecodeResponse) GetPaymentSecret() []byte {
- if x != nil {
- return x.PaymentSecret
- }
- return nil
-}
+type TxprepareRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *DecodeResponse) GetPaymentMetadata() []byte {
- if x != nil {
- return x.PaymentMetadata
- }
- return nil
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Minconf *uint32 `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Outputs []*OutputDesc `protobuf:"bytes,5,rep,name=outputs,proto3" json:"outputs,omitempty"`
}
-func (x *DecodeResponse) GetExtra() []*DecodeExtra {
- if x != nil {
- return x.Extra
+func (x *TxprepareRequest) Reset() {
+ *x = TxprepareRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[135]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *DecodeResponse) GetUniqueId() string {
- if x != nil && x.UniqueId != nil {
- return *x.UniqueId
- }
- return ""
+func (x *TxprepareRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *DecodeResponse) GetVersion() string {
- if x != nil && x.Version != nil {
- return *x.Version
+func (*TxprepareRequest) ProtoMessage() {}
+
+func (x *TxprepareRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[135]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return ""
+ return mi.MessageOf(x)
}
-func (x *DecodeResponse) GetString_() string {
- if x != nil && x.String_ != nil {
- return *x.String_
- }
- return ""
+// Deprecated: Use TxprepareRequest.ProtoReflect.Descriptor instead.
+func (*TxprepareRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{135}
}
-func (x *DecodeResponse) GetRestrictions() []*DecodeRestrictions {
+func (x *TxprepareRequest) GetFeerate() *Feerate {
if x != nil {
- return x.Restrictions
+ return x.Feerate
}
return nil
}
-func (x *DecodeResponse) GetWarningRuneInvalidUtf8() string {
- if x != nil && x.WarningRuneInvalidUtf8 != nil {
- return *x.WarningRuneInvalidUtf8
+func (x *TxprepareRequest) GetMinconf() uint32 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
}
- return ""
+ return 0
}
-func (x *DecodeResponse) GetHex() []byte {
+func (x *TxprepareRequest) GetUtxos() []*Outpoint {
if x != nil {
- return x.Hex
+ return x.Utxos
}
return nil
}
-func (x *DecodeResponse) GetDecrypted() []byte {
+func (x *TxprepareRequest) GetOutputs() []*OutputDesc {
if x != nil {
- return x.Decrypted
+ return x.Outputs
}
return nil
}
-type DecodeOfferPaths struct {
+type TxprepareResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- FirstNodeId []byte `protobuf:"bytes,1,opt,name=first_node_id,json=firstNodeId,proto3" json:"first_node_id,omitempty"`
- Blinding []byte `protobuf:"bytes,2,opt,name=blinding,proto3" json:"blinding,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ UnsignedTx []byte `protobuf:"bytes,2,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
+ Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodeOfferPaths) Reset() {
- *x = DecodeOfferPaths{}
+func (x *TxprepareResponse) Reset() {
+ *x = TxprepareResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[130]
+ mi := &file_node_proto_msgTypes[136]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeOfferPaths) String() string {
+func (x *TxprepareResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeOfferPaths) ProtoMessage() {}
+func (*TxprepareResponse) ProtoMessage() {}
-func (x *DecodeOfferPaths) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[130]
+func (x *TxprepareResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[136]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13789,52 +13663,57 @@ func (x *DecodeOfferPaths) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeOfferPaths.ProtoReflect.Descriptor instead.
-func (*DecodeOfferPaths) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{130}
+// Deprecated: Use TxprepareResponse.ProtoReflect.Descriptor instead.
+func (*TxprepareResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{136}
}
-func (x *DecodeOfferPaths) GetFirstNodeId() []byte {
+func (x *TxprepareResponse) GetPsbt() string {
if x != nil {
- return x.FirstNodeId
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *TxprepareResponse) GetUnsignedTx() []byte {
+ if x != nil {
+ return x.UnsignedTx
}
return nil
}
-func (x *DecodeOfferPaths) GetBlinding() []byte {
+func (x *TxprepareResponse) GetTxid() []byte {
if x != nil {
- return x.Blinding
+ return x.Txid
}
return nil
}
-type DecodeOfferRecurrencePaywindow struct {
+type TxsendRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- SecondsBefore uint32 `protobuf:"varint,1,opt,name=seconds_before,json=secondsBefore,proto3" json:"seconds_before,omitempty"`
- SecondsAfter uint32 `protobuf:"varint,2,opt,name=seconds_after,json=secondsAfter,proto3" json:"seconds_after,omitempty"`
- ProportionalAmount *bool `protobuf:"varint,3,opt,name=proportional_amount,json=proportionalAmount,proto3,oneof" json:"proportional_amount,omitempty"`
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodeOfferRecurrencePaywindow) Reset() {
- *x = DecodeOfferRecurrencePaywindow{}
+func (x *TxsendRequest) Reset() {
+ *x = TxsendRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[131]
+ mi := &file_node_proto_msgTypes[137]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeOfferRecurrencePaywindow) String() string {
+func (x *TxsendRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeOfferRecurrencePaywindow) ProtoMessage() {}
+func (*TxsendRequest) ProtoMessage() {}
-func (x *DecodeOfferRecurrencePaywindow) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[131]
+func (x *TxsendRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[137]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13845,58 +13724,45 @@ func (x *DecodeOfferRecurrencePaywindow) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeOfferRecurrencePaywindow.ProtoReflect.Descriptor instead.
-func (*DecodeOfferRecurrencePaywindow) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{131}
-}
-
-func (x *DecodeOfferRecurrencePaywindow) GetSecondsBefore() uint32 {
- if x != nil {
- return x.SecondsBefore
- }
- return 0
+// Deprecated: Use TxsendRequest.ProtoReflect.Descriptor instead.
+func (*TxsendRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{137}
}
-func (x *DecodeOfferRecurrencePaywindow) GetSecondsAfter() uint32 {
+func (x *TxsendRequest) GetTxid() []byte {
if x != nil {
- return x.SecondsAfter
- }
- return 0
-}
-
-func (x *DecodeOfferRecurrencePaywindow) GetProportionalAmount() bool {
- if x != nil && x.ProportionalAmount != nil {
- return *x.ProportionalAmount
+ return x.Txid
}
- return false
+ return nil
}
-type DecodeInvoicePathsPath struct {
+type TxsendResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- BlindedNodeId []byte `protobuf:"bytes,1,opt,name=blinded_node_id,json=blindedNodeId,proto3" json:"blinded_node_id,omitempty"`
- EncryptedRecipientData []byte `protobuf:"bytes,2,opt,name=encrypted_recipient_data,json=encryptedRecipientData,proto3" json:"encrypted_recipient_data,omitempty"`
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Tx []byte `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
}
-func (x *DecodeInvoicePathsPath) Reset() {
- *x = DecodeInvoicePathsPath{}
+func (x *TxsendResponse) Reset() {
+ *x = TxsendResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[132]
+ mi := &file_node_proto_msgTypes[138]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeInvoicePathsPath) String() string {
+func (x *TxsendResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeInvoicePathsPath) ProtoMessage() {}
+func (*TxsendResponse) ProtoMessage() {}
-func (x *DecodeInvoicePathsPath) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[132]
+func (x *TxsendResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[138]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13907,52 +13773,57 @@ func (x *DecodeInvoicePathsPath) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeInvoicePathsPath.ProtoReflect.Descriptor instead.
-func (*DecodeInvoicePathsPath) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{132}
+// Deprecated: Use TxsendResponse.ProtoReflect.Descriptor instead.
+func (*TxsendResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{138}
}
-func (x *DecodeInvoicePathsPath) GetBlindedNodeId() []byte {
+func (x *TxsendResponse) GetPsbt() string {
if x != nil {
- return x.BlindedNodeId
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *TxsendResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
}
return nil
}
-func (x *DecodeInvoicePathsPath) GetEncryptedRecipientData() []byte {
+func (x *TxsendResponse) GetTxid() []byte {
if x != nil {
- return x.EncryptedRecipientData
+ return x.Txid
}
return nil
}
-type DecodeInvoiceFallbacks struct {
+type ListpeerchannelsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
- Hex []byte `protobuf:"bytes,2,opt,name=hex,proto3" json:"hex,omitempty"`
- Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}
-func (x *DecodeInvoiceFallbacks) Reset() {
- *x = DecodeInvoiceFallbacks{}
+func (x *ListpeerchannelsRequest) Reset() {
+ *x = ListpeerchannelsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[133]
+ mi := &file_node_proto_msgTypes[139]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeInvoiceFallbacks) String() string {
+func (x *ListpeerchannelsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeInvoiceFallbacks) ProtoMessage() {}
+func (*ListpeerchannelsRequest) ProtoMessage() {}
-func (x *DecodeInvoiceFallbacks) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[133]
+func (x *ListpeerchannelsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[139]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -13963,57 +13834,43 @@ func (x *DecodeInvoiceFallbacks) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeInvoiceFallbacks.ProtoReflect.Descriptor instead.
-func (*DecodeInvoiceFallbacks) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{133}
-}
-
-func (x *DecodeInvoiceFallbacks) GetVersion() uint32 {
- if x != nil {
- return x.Version
- }
- return 0
+// Deprecated: Use ListpeerchannelsRequest.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{139}
}
-func (x *DecodeInvoiceFallbacks) GetHex() []byte {
+func (x *ListpeerchannelsRequest) GetId() []byte {
if x != nil {
- return x.Hex
+ return x.Id
}
return nil
}
-func (x *DecodeInvoiceFallbacks) GetAddress() string {
- if x != nil && x.Address != nil {
- return *x.Address
- }
- return ""
-}
-
-type DecodeFallbacks struct {
+type ListpeerchannelsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- WarningInvoiceFallbacksVersionInvalid *string `protobuf:"bytes,1,opt,name=warning_invoice_fallbacks_version_invalid,json=warningInvoiceFallbacksVersionInvalid,proto3,oneof" json:"warning_invoice_fallbacks_version_invalid,omitempty"`
+ Channels []*ListpeerchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}
-func (x *DecodeFallbacks) Reset() {
- *x = DecodeFallbacks{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[134]
+func (x *ListpeerchannelsResponse) Reset() {
+ *x = ListpeerchannelsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[140]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeFallbacks) String() string {
+func (x *ListpeerchannelsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeFallbacks) ProtoMessage() {}
+func (*ListpeerchannelsResponse) ProtoMessage() {}
-func (x *DecodeFallbacks) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[134]
+func (x *ListpeerchannelsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[140]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -14024,44 +13881,99 @@ func (x *DecodeFallbacks) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeFallbacks.ProtoReflect.Descriptor instead.
-func (*DecodeFallbacks) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{134}
+// Deprecated: Use ListpeerchannelsResponse.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{140}
}
-func (x *DecodeFallbacks) GetWarningInvoiceFallbacksVersionInvalid() string {
- if x != nil && x.WarningInvoiceFallbacksVersionInvalid != nil {
- return *x.WarningInvoiceFallbacksVersionInvalid
+func (x *ListpeerchannelsResponse) GetChannels() []*ListpeerchannelsChannels {
+ if x != nil {
+ return x.Channels
}
- return ""
+ return nil
}
-type DecodeExtra struct {
+type ListpeerchannelsChannels struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
- Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+ PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
+ PeerConnected bool `protobuf:"varint,2,opt,name=peer_connected,json=peerConnected,proto3" json:"peer_connected,omitempty"`
+ State ListpeerchannelsChannels_ListpeerchannelsChannelsState `protobuf:"varint,3,opt,name=state,proto3,enum=cln.ListpeerchannelsChannels_ListpeerchannelsChannelsState" json:"state,omitempty"`
+ ScratchTxid []byte `protobuf:"bytes,4,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
+ Feerate *ListpeerchannelsChannelsFeerate `protobuf:"bytes,6,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Owner *string `protobuf:"bytes,7,opt,name=owner,proto3,oneof" json:"owner,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ ChannelId []byte `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,10,opt,name=funding_txid,json=fundingTxid,proto3,oneof" json:"funding_txid,omitempty"`
+ FundingOutnum *uint32 `protobuf:"varint,11,opt,name=funding_outnum,json=fundingOutnum,proto3,oneof" json:"funding_outnum,omitempty"`
+ InitialFeerate *string `protobuf:"bytes,12,opt,name=initial_feerate,json=initialFeerate,proto3,oneof" json:"initial_feerate,omitempty"`
+ LastFeerate *string `protobuf:"bytes,13,opt,name=last_feerate,json=lastFeerate,proto3,oneof" json:"last_feerate,omitempty"`
+ NextFeerate *string `protobuf:"bytes,14,opt,name=next_feerate,json=nextFeerate,proto3,oneof" json:"next_feerate,omitempty"`
+ NextFeeStep *uint32 `protobuf:"varint,15,opt,name=next_fee_step,json=nextFeeStep,proto3,oneof" json:"next_fee_step,omitempty"`
+ Inflight []*ListpeerchannelsChannelsInflight `protobuf:"bytes,16,rep,name=inflight,proto3" json:"inflight,omitempty"`
+ CloseTo []byte `protobuf:"bytes,17,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ Private *bool `protobuf:"varint,18,opt,name=private,proto3,oneof" json:"private,omitempty"`
+ Opener ChannelSide `protobuf:"varint,19,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
+ Closer *ChannelSide `protobuf:"varint,20,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
+ Funding *ListpeerchannelsChannelsFunding `protobuf:"bytes,22,opt,name=funding,proto3,oneof" json:"funding,omitempty"`
+ ToUsMsat *Amount `protobuf:"bytes,23,opt,name=to_us_msat,json=toUsMsat,proto3,oneof" json:"to_us_msat,omitempty"`
+ MinToUsMsat *Amount `protobuf:"bytes,24,opt,name=min_to_us_msat,json=minToUsMsat,proto3,oneof" json:"min_to_us_msat,omitempty"`
+ MaxToUsMsat *Amount `protobuf:"bytes,25,opt,name=max_to_us_msat,json=maxToUsMsat,proto3,oneof" json:"max_to_us_msat,omitempty"`
+ TotalMsat *Amount `protobuf:"bytes,26,opt,name=total_msat,json=totalMsat,proto3,oneof" json:"total_msat,omitempty"`
+ FeeBaseMsat *Amount `protobuf:"bytes,27,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
+ FeeProportionalMillionths *uint32 `protobuf:"varint,28,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
+ DustLimitMsat *Amount `protobuf:"bytes,29,opt,name=dust_limit_msat,json=dustLimitMsat,proto3,oneof" json:"dust_limit_msat,omitempty"`
+ MaxTotalHtlcInMsat *Amount `protobuf:"bytes,30,opt,name=max_total_htlc_in_msat,json=maxTotalHtlcInMsat,proto3,oneof" json:"max_total_htlc_in_msat,omitempty"`
+ TheirReserveMsat *Amount `protobuf:"bytes,31,opt,name=their_reserve_msat,json=theirReserveMsat,proto3,oneof" json:"their_reserve_msat,omitempty"`
+ OurReserveMsat *Amount `protobuf:"bytes,32,opt,name=our_reserve_msat,json=ourReserveMsat,proto3,oneof" json:"our_reserve_msat,omitempty"`
+ SpendableMsat *Amount `protobuf:"bytes,33,opt,name=spendable_msat,json=spendableMsat,proto3,oneof" json:"spendable_msat,omitempty"`
+ ReceivableMsat *Amount `protobuf:"bytes,34,opt,name=receivable_msat,json=receivableMsat,proto3,oneof" json:"receivable_msat,omitempty"`
+ MinimumHtlcInMsat *Amount `protobuf:"bytes,35,opt,name=minimum_htlc_in_msat,json=minimumHtlcInMsat,proto3,oneof" json:"minimum_htlc_in_msat,omitempty"`
+ MinimumHtlcOutMsat *Amount `protobuf:"bytes,36,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3,oneof" json:"minimum_htlc_out_msat,omitempty"`
+ MaximumHtlcOutMsat *Amount `protobuf:"bytes,37,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3,oneof" json:"maximum_htlc_out_msat,omitempty"`
+ TheirToSelfDelay *uint32 `protobuf:"varint,38,opt,name=their_to_self_delay,json=theirToSelfDelay,proto3,oneof" json:"their_to_self_delay,omitempty"`
+ OurToSelfDelay *uint32 `protobuf:"varint,39,opt,name=our_to_self_delay,json=ourToSelfDelay,proto3,oneof" json:"our_to_self_delay,omitempty"`
+ MaxAcceptedHtlcs *uint32 `protobuf:"varint,40,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3,oneof" json:"max_accepted_htlcs,omitempty"`
+ Alias *ListpeerchannelsChannelsAlias `protobuf:"bytes,41,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ Status []string `protobuf:"bytes,43,rep,name=status,proto3" json:"status,omitempty"`
+ InPaymentsOffered *uint64 `protobuf:"varint,44,opt,name=in_payments_offered,json=inPaymentsOffered,proto3,oneof" json:"in_payments_offered,omitempty"`
+ InOfferedMsat *Amount `protobuf:"bytes,45,opt,name=in_offered_msat,json=inOfferedMsat,proto3,oneof" json:"in_offered_msat,omitempty"`
+ InPaymentsFulfilled *uint64 `protobuf:"varint,46,opt,name=in_payments_fulfilled,json=inPaymentsFulfilled,proto3,oneof" json:"in_payments_fulfilled,omitempty"`
+ InFulfilledMsat *Amount `protobuf:"bytes,47,opt,name=in_fulfilled_msat,json=inFulfilledMsat,proto3,oneof" json:"in_fulfilled_msat,omitempty"`
+ OutPaymentsOffered *uint64 `protobuf:"varint,48,opt,name=out_payments_offered,json=outPaymentsOffered,proto3,oneof" json:"out_payments_offered,omitempty"`
+ OutOfferedMsat *Amount `protobuf:"bytes,49,opt,name=out_offered_msat,json=outOfferedMsat,proto3,oneof" json:"out_offered_msat,omitempty"`
+ OutPaymentsFulfilled *uint64 `protobuf:"varint,50,opt,name=out_payments_fulfilled,json=outPaymentsFulfilled,proto3,oneof" json:"out_payments_fulfilled,omitempty"`
+ OutFulfilledMsat *Amount `protobuf:"bytes,51,opt,name=out_fulfilled_msat,json=outFulfilledMsat,proto3,oneof" json:"out_fulfilled_msat,omitempty"`
+ Htlcs []*ListpeerchannelsChannelsHtlcs `protobuf:"bytes,52,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
+ CloseToAddr *string `protobuf:"bytes,53,opt,name=close_to_addr,json=closeToAddr,proto3,oneof" json:"close_to_addr,omitempty"`
+ IgnoreFeeLimits *bool `protobuf:"varint,54,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
+ Updates *ListpeerchannelsChannelsUpdates `protobuf:"bytes,55,opt,name=updates,proto3,oneof" json:"updates,omitempty"`
+ LastStableConnection *uint64 `protobuf:"varint,56,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
+ LostState *bool `protobuf:"varint,57,opt,name=lost_state,json=lostState,proto3,oneof" json:"lost_state,omitempty"`
+ Reestablished *bool `protobuf:"varint,58,opt,name=reestablished,proto3,oneof" json:"reestablished,omitempty"`
+ LastTxFeeMsat *Amount `protobuf:"bytes,59,opt,name=last_tx_fee_msat,json=lastTxFeeMsat,proto3,oneof" json:"last_tx_fee_msat,omitempty"`
+ Direction *uint32 `protobuf:"varint,60,opt,name=direction,proto3,oneof" json:"direction,omitempty"`
}
-func (x *DecodeExtra) Reset() {
- *x = DecodeExtra{}
+func (x *ListpeerchannelsChannels) Reset() {
+ *x = ListpeerchannelsChannels{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[135]
+ mi := &file_node_proto_msgTypes[141]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *DecodeExtra) String() string {
+func (x *ListpeerchannelsChannels) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DecodeExtra) ProtoMessage() {}
+func (*ListpeerchannelsChannels) ProtoMessage() {}
-func (x *DecodeExtra) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[135]
+func (x *ListpeerchannelsChannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[141]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -14072,430 +13984,421 @@ func (x *DecodeExtra) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DecodeExtra.ProtoReflect.Descriptor instead.
-func (*DecodeExtra) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{135}
+// Deprecated: Use ListpeerchannelsChannels.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{141}
}
-func (x *DecodeExtra) GetTag() string {
+func (x *ListpeerchannelsChannels) GetPeerId() []byte {
if x != nil {
- return x.Tag
+ return x.PeerId
}
- return ""
+ return nil
}
-func (x *DecodeExtra) GetData() string {
+func (x *ListpeerchannelsChannels) GetPeerConnected() bool {
if x != nil {
- return x.Data
+ return x.PeerConnected
}
- return ""
+ return false
}
-type DecodeRestrictions struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Alternatives []string `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
- Summary string `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"`
+func (x *ListpeerchannelsChannels) GetState() ListpeerchannelsChannels_ListpeerchannelsChannelsState {
+ if x != nil {
+ return x.State
+ }
+ return ListpeerchannelsChannels_OPENINGD
}
-func (x *DecodeRestrictions) Reset() {
- *x = DecodeRestrictions{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[136]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetScratchTxid() []byte {
+ if x != nil {
+ return x.ScratchTxid
}
+ return nil
}
-func (x *DecodeRestrictions) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListpeerchannelsChannels) GetFeerate() *ListpeerchannelsChannelsFeerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
}
-func (*DecodeRestrictions) ProtoMessage() {}
-
-func (x *DecodeRestrictions) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[136]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetOwner() string {
+ if x != nil && x.Owner != nil {
+ return *x.Owner
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use DecodeRestrictions.ProtoReflect.Descriptor instead.
-func (*DecodeRestrictions) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{136}
+func (x *ListpeerchannelsChannels) GetShortChannelId() string {
+ if x != nil && x.ShortChannelId != nil {
+ return *x.ShortChannelId
+ }
+ return ""
}
-func (x *DecodeRestrictions) GetAlternatives() []string {
+func (x *ListpeerchannelsChannels) GetChannelId() []byte {
if x != nil {
- return x.Alternatives
+ return x.ChannelId
}
return nil
}
-func (x *DecodeRestrictions) GetSummary() string {
+func (x *ListpeerchannelsChannels) GetFundingTxid() []byte {
if x != nil {
- return x.Summary
+ return x.FundingTxid
}
- return ""
+ return nil
}
-type DisconnectRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Force *bool `protobuf:"varint,2,opt,name=force,proto3,oneof" json:"force,omitempty"`
+func (x *ListpeerchannelsChannels) GetFundingOutnum() uint32 {
+ if x != nil && x.FundingOutnum != nil {
+ return *x.FundingOutnum
+ }
+ return 0
}
-func (x *DisconnectRequest) Reset() {
- *x = DisconnectRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[137]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetInitialFeerate() string {
+ if x != nil && x.InitialFeerate != nil {
+ return *x.InitialFeerate
}
+ return ""
}
-func (x *DisconnectRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListpeerchannelsChannels) GetLastFeerate() string {
+ if x != nil && x.LastFeerate != nil {
+ return *x.LastFeerate
+ }
+ return ""
}
-func (*DisconnectRequest) ProtoMessage() {}
+func (x *ListpeerchannelsChannels) GetNextFeerate() string {
+ if x != nil && x.NextFeerate != nil {
+ return *x.NextFeerate
+ }
+ return ""
+}
-func (x *DisconnectRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[137]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetNextFeeStep() uint32 {
+ if x != nil && x.NextFeeStep != nil {
+ return *x.NextFeeStep
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use DisconnectRequest.ProtoReflect.Descriptor instead.
-func (*DisconnectRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{137}
+func (x *ListpeerchannelsChannels) GetInflight() []*ListpeerchannelsChannelsInflight {
+ if x != nil {
+ return x.Inflight
+ }
+ return nil
}
-func (x *DisconnectRequest) GetId() []byte {
+func (x *ListpeerchannelsChannels) GetCloseTo() []byte {
if x != nil {
- return x.Id
+ return x.CloseTo
}
return nil
}
-func (x *DisconnectRequest) GetForce() bool {
- if x != nil && x.Force != nil {
- return *x.Force
+func (x *ListpeerchannelsChannels) GetPrivate() bool {
+ if x != nil && x.Private != nil {
+ return *x.Private
}
return false
}
-type DisconnectResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *ListpeerchannelsChannels) GetOpener() ChannelSide {
+ if x != nil {
+ return x.Opener
+ }
+ return ChannelSide_LOCAL
}
-func (x *DisconnectResponse) Reset() {
- *x = DisconnectResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[138]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetCloser() ChannelSide {
+ if x != nil && x.Closer != nil {
+ return *x.Closer
}
+ return ChannelSide_LOCAL
}
-func (x *DisconnectResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListpeerchannelsChannels) GetFunding() *ListpeerchannelsChannelsFunding {
+ if x != nil {
+ return x.Funding
+ }
+ return nil
}
-func (*DisconnectResponse) ProtoMessage() {}
-
-func (x *DisconnectResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[138]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetToUsMsat() *Amount {
+ if x != nil {
+ return x.ToUsMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use DisconnectResponse.ProtoReflect.Descriptor instead.
-func (*DisconnectResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{138}
+func (x *ListpeerchannelsChannels) GetMinToUsMsat() *Amount {
+ if x != nil {
+ return x.MinToUsMsat
+ }
+ return nil
}
-type FeeratesRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *ListpeerchannelsChannels) GetMaxToUsMsat() *Amount {
+ if x != nil {
+ return x.MaxToUsMsat
+ }
+ return nil
+}
- Style FeeratesRequest_FeeratesStyle `protobuf:"varint,1,opt,name=style,proto3,enum=cln.FeeratesRequest_FeeratesStyle" json:"style,omitempty"`
+func (x *ListpeerchannelsChannels) GetTotalMsat() *Amount {
+ if x != nil {
+ return x.TotalMsat
+ }
+ return nil
}
-func (x *FeeratesRequest) Reset() {
- *x = FeeratesRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[139]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.FeeBaseMsat
}
+ return nil
}
-func (x *FeeratesRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*FeeratesRequest) ProtoMessage() {}
-
-func (x *FeeratesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[139]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetFeeProportionalMillionths() uint32 {
+ if x != nil && x.FeeProportionalMillionths != nil {
+ return *x.FeeProportionalMillionths
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use FeeratesRequest.ProtoReflect.Descriptor instead.
-func (*FeeratesRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{139}
+ return 0
}
-func (x *FeeratesRequest) GetStyle() FeeratesRequest_FeeratesStyle {
+func (x *ListpeerchannelsChannels) GetDustLimitMsat() *Amount {
if x != nil {
- return x.Style
+ return x.DustLimitMsat
}
- return FeeratesRequest_PERKB
-}
-
-type FeeratesResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- WarningMissingFeerates *string `protobuf:"bytes,1,opt,name=warning_missing_feerates,json=warningMissingFeerates,proto3,oneof" json:"warning_missing_feerates,omitempty"`
- Perkb *FeeratesPerkb `protobuf:"bytes,2,opt,name=perkb,proto3,oneof" json:"perkb,omitempty"`
- Perkw *FeeratesPerkw `protobuf:"bytes,3,opt,name=perkw,proto3,oneof" json:"perkw,omitempty"`
- OnchainFeeEstimates *FeeratesOnchainFeeEstimates `protobuf:"bytes,4,opt,name=onchain_fee_estimates,json=onchainFeeEstimates,proto3,oneof" json:"onchain_fee_estimates,omitempty"`
+ return nil
}
-func (x *FeeratesResponse) Reset() {
- *x = FeeratesResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[140]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetMaxTotalHtlcInMsat() *Amount {
+ if x != nil {
+ return x.MaxTotalHtlcInMsat
}
+ return nil
}
-func (x *FeeratesResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListpeerchannelsChannels) GetTheirReserveMsat() *Amount {
+ if x != nil {
+ return x.TheirReserveMsat
+ }
+ return nil
}
-func (*FeeratesResponse) ProtoMessage() {}
-
-func (x *FeeratesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[140]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetOurReserveMsat() *Amount {
+ if x != nil {
+ return x.OurReserveMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use FeeratesResponse.ProtoReflect.Descriptor instead.
-func (*FeeratesResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{140}
+func (x *ListpeerchannelsChannels) GetSpendableMsat() *Amount {
+ if x != nil {
+ return x.SpendableMsat
+ }
+ return nil
}
-func (x *FeeratesResponse) GetWarningMissingFeerates() string {
- if x != nil && x.WarningMissingFeerates != nil {
- return *x.WarningMissingFeerates
+func (x *ListpeerchannelsChannels) GetReceivableMsat() *Amount {
+ if x != nil {
+ return x.ReceivableMsat
}
- return ""
+ return nil
}
-func (x *FeeratesResponse) GetPerkb() *FeeratesPerkb {
+func (x *ListpeerchannelsChannels) GetMinimumHtlcInMsat() *Amount {
if x != nil {
- return x.Perkb
+ return x.MinimumHtlcInMsat
}
return nil
}
-func (x *FeeratesResponse) GetPerkw() *FeeratesPerkw {
+func (x *ListpeerchannelsChannels) GetMinimumHtlcOutMsat() *Amount {
if x != nil {
- return x.Perkw
+ return x.MinimumHtlcOutMsat
}
return nil
}
-func (x *FeeratesResponse) GetOnchainFeeEstimates() *FeeratesOnchainFeeEstimates {
+func (x *ListpeerchannelsChannels) GetMaximumHtlcOutMsat() *Amount {
if x != nil {
- return x.OnchainFeeEstimates
+ return x.MaximumHtlcOutMsat
}
return nil
}
-type FeeratesPerkb struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- MinAcceptable uint32 `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
- MaxAcceptable uint32 `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
- Floor *uint32 `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
- Estimates []*FeeratesPerkbEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
- Opening *uint32 `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
- MutualClose *uint32 `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
- UnilateralClose *uint32 `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
- UnilateralAnchorClose *uint32 `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
- DelayedToUs *uint32 `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
- HtlcResolution *uint32 `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
- Penalty *uint32 `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
+func (x *ListpeerchannelsChannels) GetTheirToSelfDelay() uint32 {
+ if x != nil && x.TheirToSelfDelay != nil {
+ return *x.TheirToSelfDelay
+ }
+ return 0
}
-func (x *FeeratesPerkb) Reset() {
- *x = FeeratesPerkb{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[141]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListpeerchannelsChannels) GetOurToSelfDelay() uint32 {
+ if x != nil && x.OurToSelfDelay != nil {
+ return *x.OurToSelfDelay
}
+ return 0
}
-func (x *FeeratesPerkb) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListpeerchannelsChannels) GetMaxAcceptedHtlcs() uint32 {
+ if x != nil && x.MaxAcceptedHtlcs != nil {
+ return *x.MaxAcceptedHtlcs
+ }
+ return 0
}
-func (*FeeratesPerkb) ProtoMessage() {}
-
-func (x *FeeratesPerkb) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[141]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListpeerchannelsChannels) GetAlias() *ListpeerchannelsChannelsAlias {
+ if x != nil {
+ return x.Alias
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use FeeratesPerkb.ProtoReflect.Descriptor instead.
-func (*FeeratesPerkb) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{141}
+func (x *ListpeerchannelsChannels) GetStatus() []string {
+ if x != nil {
+ return x.Status
+ }
+ return nil
}
-func (x *FeeratesPerkb) GetMinAcceptable() uint32 {
- if x != nil {
- return x.MinAcceptable
+func (x *ListpeerchannelsChannels) GetInPaymentsOffered() uint64 {
+ if x != nil && x.InPaymentsOffered != nil {
+ return *x.InPaymentsOffered
}
return 0
}
-func (x *FeeratesPerkb) GetMaxAcceptable() uint32 {
+func (x *ListpeerchannelsChannels) GetInOfferedMsat() *Amount {
if x != nil {
- return x.MaxAcceptable
+ return x.InOfferedMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkb) GetFloor() uint32 {
- if x != nil && x.Floor != nil {
- return *x.Floor
+func (x *ListpeerchannelsChannels) GetInPaymentsFulfilled() uint64 {
+ if x != nil && x.InPaymentsFulfilled != nil {
+ return *x.InPaymentsFulfilled
}
return 0
}
-func (x *FeeratesPerkb) GetEstimates() []*FeeratesPerkbEstimates {
+func (x *ListpeerchannelsChannels) GetInFulfilledMsat() *Amount {
if x != nil {
- return x.Estimates
+ return x.InFulfilledMsat
}
return nil
}
-func (x *FeeratesPerkb) GetOpening() uint32 {
- if x != nil && x.Opening != nil {
- return *x.Opening
+func (x *ListpeerchannelsChannels) GetOutPaymentsOffered() uint64 {
+ if x != nil && x.OutPaymentsOffered != nil {
+ return *x.OutPaymentsOffered
}
return 0
}
-func (x *FeeratesPerkb) GetMutualClose() uint32 {
- if x != nil && x.MutualClose != nil {
- return *x.MutualClose
+func (x *ListpeerchannelsChannels) GetOutOfferedMsat() *Amount {
+ if x != nil {
+ return x.OutOfferedMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkb) GetUnilateralClose() uint32 {
- if x != nil && x.UnilateralClose != nil {
- return *x.UnilateralClose
+func (x *ListpeerchannelsChannels) GetOutPaymentsFulfilled() uint64 {
+ if x != nil && x.OutPaymentsFulfilled != nil {
+ return *x.OutPaymentsFulfilled
}
return 0
}
-func (x *FeeratesPerkb) GetUnilateralAnchorClose() uint32 {
- if x != nil && x.UnilateralAnchorClose != nil {
- return *x.UnilateralAnchorClose
+func (x *ListpeerchannelsChannels) GetOutFulfilledMsat() *Amount {
+ if x != nil {
+ return x.OutFulfilledMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkb) GetDelayedToUs() uint32 {
- if x != nil && x.DelayedToUs != nil {
- return *x.DelayedToUs
+func (x *ListpeerchannelsChannels) GetHtlcs() []*ListpeerchannelsChannelsHtlcs {
+ if x != nil {
+ return x.Htlcs
}
- return 0
+ return nil
}
-func (x *FeeratesPerkb) GetHtlcResolution() uint32 {
- if x != nil && x.HtlcResolution != nil {
- return *x.HtlcResolution
+func (x *ListpeerchannelsChannels) GetCloseToAddr() string {
+ if x != nil && x.CloseToAddr != nil {
+ return *x.CloseToAddr
}
- return 0
+ return ""
}
-func (x *FeeratesPerkb) GetPenalty() uint32 {
- if x != nil && x.Penalty != nil {
- return *x.Penalty
+func (x *ListpeerchannelsChannels) GetIgnoreFeeLimits() bool {
+ if x != nil && x.IgnoreFeeLimits != nil {
+ return *x.IgnoreFeeLimits
}
- return 0
+ return false
}
-type FeeratesPerkbEstimates struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Blockcount *uint32 `protobuf:"varint,1,opt,name=blockcount,proto3,oneof" json:"blockcount,omitempty"`
- Feerate *uint32 `protobuf:"varint,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- SmoothedFeerate *uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3,oneof" json:"smoothed_feerate,omitempty"`
+func (x *ListpeerchannelsChannels) GetUpdates() *ListpeerchannelsChannelsUpdates {
+ if x != nil {
+ return x.Updates
+ }
+ return nil
}
-func (x *FeeratesPerkbEstimates) Reset() {
- *x = FeeratesPerkbEstimates{}
+func (x *ListpeerchannelsChannels) GetLastStableConnection() uint64 {
+ if x != nil && x.LastStableConnection != nil {
+ return *x.LastStableConnection
+ }
+ return 0
+}
+
+func (x *ListpeerchannelsChannels) GetLostState() bool {
+ if x != nil && x.LostState != nil {
+ return *x.LostState
+ }
+ return false
+}
+
+func (x *ListpeerchannelsChannels) GetReestablished() bool {
+ if x != nil && x.Reestablished != nil {
+ return *x.Reestablished
+ }
+ return false
+}
+
+func (x *ListpeerchannelsChannels) GetLastTxFeeMsat() *Amount {
+ if x != nil {
+ return x.LastTxFeeMsat
+ }
+ return nil
+}
+
+func (x *ListpeerchannelsChannels) GetDirection() uint32 {
+ if x != nil && x.Direction != nil {
+ return *x.Direction
+ }
+ return 0
+}
+
+type ListpeerchannelsChannelsUpdates struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Local *ListpeerchannelsChannelsUpdatesLocal `protobuf:"bytes,1,opt,name=local,proto3" json:"local,omitempty"`
+ Remote *ListpeerchannelsChannelsUpdatesRemote `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
+}
+
+func (x *ListpeerchannelsChannelsUpdates) Reset() {
+ *x = ListpeerchannelsChannelsUpdates{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[142]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14503,13 +14406,13 @@ func (x *FeeratesPerkbEstimates) Reset() {
}
}
-func (x *FeeratesPerkbEstimates) String() string {
+func (x *ListpeerchannelsChannelsUpdates) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FeeratesPerkbEstimates) ProtoMessage() {}
+func (*ListpeerchannelsChannelsUpdates) ProtoMessage() {}
-func (x *FeeratesPerkbEstimates) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsUpdates) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[142]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14521,52 +14424,39 @@ func (x *FeeratesPerkbEstimates) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FeeratesPerkbEstimates.ProtoReflect.Descriptor instead.
-func (*FeeratesPerkbEstimates) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsUpdates.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsUpdates) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{142}
}
-func (x *FeeratesPerkbEstimates) GetBlockcount() uint32 {
- if x != nil && x.Blockcount != nil {
- return *x.Blockcount
- }
- return 0
-}
-
-func (x *FeeratesPerkbEstimates) GetFeerate() uint32 {
- if x != nil && x.Feerate != nil {
- return *x.Feerate
+func (x *ListpeerchannelsChannelsUpdates) GetLocal() *ListpeerchannelsChannelsUpdatesLocal {
+ if x != nil {
+ return x.Local
}
- return 0
+ return nil
}
-func (x *FeeratesPerkbEstimates) GetSmoothedFeerate() uint32 {
- if x != nil && x.SmoothedFeerate != nil {
- return *x.SmoothedFeerate
+func (x *ListpeerchannelsChannelsUpdates) GetRemote() *ListpeerchannelsChannelsUpdatesRemote {
+ if x != nil {
+ return x.Remote
}
- return 0
+ return nil
}
-type FeeratesPerkw struct {
+type ListpeerchannelsChannelsUpdatesLocal struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- MinAcceptable uint32 `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
- MaxAcceptable uint32 `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
- Floor *uint32 `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
- Estimates []*FeeratesPerkwEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
- Opening *uint32 `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
- MutualClose *uint32 `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
- UnilateralClose *uint32 `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
- UnilateralAnchorClose *uint32 `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
- DelayedToUs *uint32 `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
- HtlcResolution *uint32 `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
- Penalty *uint32 `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
+ HtlcMinimumMsat *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
+ HtlcMaximumMsat *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"`
+ CltvExpiryDelta uint32 `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"`
+ FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
+ FeeProportionalMillionths uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
}
-func (x *FeeratesPerkw) Reset() {
- *x = FeeratesPerkw{}
+func (x *ListpeerchannelsChannelsUpdatesLocal) Reset() {
+ *x = ListpeerchannelsChannelsUpdatesLocal{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[143]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14574,13 +14464,13 @@ func (x *FeeratesPerkw) Reset() {
}
}
-func (x *FeeratesPerkw) String() string {
+func (x *ListpeerchannelsChannelsUpdatesLocal) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FeeratesPerkw) ProtoMessage() {}
+func (*ListpeerchannelsChannelsUpdatesLocal) ProtoMessage() {}
-func (x *FeeratesPerkw) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsUpdatesLocal) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[143]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14592,100 +14482,60 @@ func (x *FeeratesPerkw) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FeeratesPerkw.ProtoReflect.Descriptor instead.
-func (*FeeratesPerkw) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsUpdatesLocal.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsUpdatesLocal) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{143}
}
-func (x *FeeratesPerkw) GetMinAcceptable() uint32 {
+func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMinimumMsat() *Amount {
if x != nil {
- return x.MinAcceptable
+ return x.HtlcMinimumMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkw) GetMaxAcceptable() uint32 {
+func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMaximumMsat() *Amount {
if x != nil {
- return x.MaxAcceptable
+ return x.HtlcMaximumMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkw) GetFloor() uint32 {
- if x != nil && x.Floor != nil {
- return *x.Floor
+func (x *ListpeerchannelsChannelsUpdatesLocal) GetCltvExpiryDelta() uint32 {
+ if x != nil {
+ return x.CltvExpiryDelta
}
return 0
}
-func (x *FeeratesPerkw) GetEstimates() []*FeeratesPerkwEstimates {
+func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeBaseMsat() *Amount {
if x != nil {
- return x.Estimates
+ return x.FeeBaseMsat
}
return nil
}
-func (x *FeeratesPerkw) GetOpening() uint32 {
- if x != nil && x.Opening != nil {
- return *x.Opening
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetMutualClose() uint32 {
- if x != nil && x.MutualClose != nil {
- return *x.MutualClose
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetUnilateralClose() uint32 {
- if x != nil && x.UnilateralClose != nil {
- return *x.UnilateralClose
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetUnilateralAnchorClose() uint32 {
- if x != nil && x.UnilateralAnchorClose != nil {
- return *x.UnilateralAnchorClose
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetDelayedToUs() uint32 {
- if x != nil && x.DelayedToUs != nil {
- return *x.DelayedToUs
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetHtlcResolution() uint32 {
- if x != nil && x.HtlcResolution != nil {
- return *x.HtlcResolution
- }
- return 0
-}
-
-func (x *FeeratesPerkw) GetPenalty() uint32 {
- if x != nil && x.Penalty != nil {
- return *x.Penalty
+func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeProportionalMillionths() uint32 {
+ if x != nil {
+ return x.FeeProportionalMillionths
}
return 0
}
-type FeeratesPerkwEstimates struct {
+type ListpeerchannelsChannelsUpdatesRemote struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Blockcount *uint32 `protobuf:"varint,1,opt,name=blockcount,proto3,oneof" json:"blockcount,omitempty"`
- Feerate *uint32 `protobuf:"varint,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- SmoothedFeerate *uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3,oneof" json:"smoothed_feerate,omitempty"`
+ HtlcMinimumMsat *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
+ HtlcMaximumMsat *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"`
+ CltvExpiryDelta uint32 `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"`
+ FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
+ FeeProportionalMillionths uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
}
-func (x *FeeratesPerkwEstimates) Reset() {
- *x = FeeratesPerkwEstimates{}
+func (x *ListpeerchannelsChannelsUpdatesRemote) Reset() {
+ *x = ListpeerchannelsChannelsUpdatesRemote{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[144]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14693,13 +14543,13 @@ func (x *FeeratesPerkwEstimates) Reset() {
}
}
-func (x *FeeratesPerkwEstimates) String() string {
+func (x *ListpeerchannelsChannelsUpdatesRemote) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FeeratesPerkwEstimates) ProtoMessage() {}
+func (*ListpeerchannelsChannelsUpdatesRemote) ProtoMessage() {}
-func (x *FeeratesPerkwEstimates) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsUpdatesRemote) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[144]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14711,47 +14561,57 @@ func (x *FeeratesPerkwEstimates) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FeeratesPerkwEstimates.ProtoReflect.Descriptor instead.
-func (*FeeratesPerkwEstimates) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsUpdatesRemote.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsUpdatesRemote) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{144}
}
-func (x *FeeratesPerkwEstimates) GetBlockcount() uint32 {
- if x != nil && x.Blockcount != nil {
- return *x.Blockcount
+func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMinimumMsat() *Amount {
+ if x != nil {
+ return x.HtlcMinimumMsat
}
- return 0
+ return nil
}
-func (x *FeeratesPerkwEstimates) GetFeerate() uint32 {
- if x != nil && x.Feerate != nil {
- return *x.Feerate
+func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMaximumMsat() *Amount {
+ if x != nil {
+ return x.HtlcMaximumMsat
+ }
+ return nil
+}
+
+func (x *ListpeerchannelsChannelsUpdatesRemote) GetCltvExpiryDelta() uint32 {
+ if x != nil {
+ return x.CltvExpiryDelta
}
return 0
}
-func (x *FeeratesPerkwEstimates) GetSmoothedFeerate() uint32 {
- if x != nil && x.SmoothedFeerate != nil {
- return *x.SmoothedFeerate
+func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.FeeBaseMsat
+ }
+ return nil
+}
+
+func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeProportionalMillionths() uint32 {
+ if x != nil {
+ return x.FeeProportionalMillionths
}
return 0
}
-type FeeratesOnchainFeeEstimates struct {
+type ListpeerchannelsChannelsFeerate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- OpeningChannelSatoshis uint64 `protobuf:"varint,1,opt,name=opening_channel_satoshis,json=openingChannelSatoshis,proto3" json:"opening_channel_satoshis,omitempty"`
- MutualCloseSatoshis uint64 `protobuf:"varint,2,opt,name=mutual_close_satoshis,json=mutualCloseSatoshis,proto3" json:"mutual_close_satoshis,omitempty"`
- UnilateralCloseSatoshis uint64 `protobuf:"varint,3,opt,name=unilateral_close_satoshis,json=unilateralCloseSatoshis,proto3" json:"unilateral_close_satoshis,omitempty"`
- UnilateralCloseNonanchorSatoshis *uint64 `protobuf:"varint,6,opt,name=unilateral_close_nonanchor_satoshis,json=unilateralCloseNonanchorSatoshis,proto3,oneof" json:"unilateral_close_nonanchor_satoshis,omitempty"`
- HtlcTimeoutSatoshis uint64 `protobuf:"varint,4,opt,name=htlc_timeout_satoshis,json=htlcTimeoutSatoshis,proto3" json:"htlc_timeout_satoshis,omitempty"`
- HtlcSuccessSatoshis uint64 `protobuf:"varint,5,opt,name=htlc_success_satoshis,json=htlcSuccessSatoshis,proto3" json:"htlc_success_satoshis,omitempty"`
+ Perkw uint32 `protobuf:"varint,1,opt,name=perkw,proto3" json:"perkw,omitempty"`
+ Perkb uint32 `protobuf:"varint,2,opt,name=perkb,proto3" json:"perkb,omitempty"`
}
-func (x *FeeratesOnchainFeeEstimates) Reset() {
- *x = FeeratesOnchainFeeEstimates{}
+func (x *ListpeerchannelsChannelsFeerate) Reset() {
+ *x = ListpeerchannelsChannelsFeerate{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[145]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14759,13 +14619,13 @@ func (x *FeeratesOnchainFeeEstimates) Reset() {
}
}
-func (x *FeeratesOnchainFeeEstimates) String() string {
+func (x *ListpeerchannelsChannelsFeerate) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FeeratesOnchainFeeEstimates) ProtoMessage() {}
+func (*ListpeerchannelsChannelsFeerate) ProtoMessage() {}
-func (x *FeeratesOnchainFeeEstimates) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsFeerate) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[145]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14777,70 +14637,41 @@ func (x *FeeratesOnchainFeeEstimates) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FeeratesOnchainFeeEstimates.ProtoReflect.Descriptor instead.
-func (*FeeratesOnchainFeeEstimates) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsFeerate.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsFeerate) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{145}
}
-func (x *FeeratesOnchainFeeEstimates) GetOpeningChannelSatoshis() uint64 {
+func (x *ListpeerchannelsChannelsFeerate) GetPerkw() uint32 {
if x != nil {
- return x.OpeningChannelSatoshis
+ return x.Perkw
}
return 0
}
-func (x *FeeratesOnchainFeeEstimates) GetMutualCloseSatoshis() uint64 {
+func (x *ListpeerchannelsChannelsFeerate) GetPerkb() uint32 {
if x != nil {
- return x.MutualCloseSatoshis
+ return x.Perkb
}
return 0
}
-func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseSatoshis() uint64 {
- if x != nil {
- return x.UnilateralCloseSatoshis
- }
- return 0
-}
+type ListpeerchannelsChannelsInflight struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseNonanchorSatoshis() uint64 {
- if x != nil && x.UnilateralCloseNonanchorSatoshis != nil {
- return *x.UnilateralCloseNonanchorSatoshis
- }
- return 0
-}
-
-func (x *FeeratesOnchainFeeEstimates) GetHtlcTimeoutSatoshis() uint64 {
- if x != nil {
- return x.HtlcTimeoutSatoshis
- }
- return 0
-}
-
-func (x *FeeratesOnchainFeeEstimates) GetHtlcSuccessSatoshis() uint64 {
- if x != nil {
- return x.HtlcSuccessSatoshis
- }
- return 0
-}
-
-type FetchinvoiceRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Offer string `protobuf:"bytes,1,opt,name=offer,proto3" json:"offer,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- Quantity *uint64 `protobuf:"varint,3,opt,name=quantity,proto3,oneof" json:"quantity,omitempty"`
- RecurrenceCounter *uint64 `protobuf:"varint,4,opt,name=recurrence_counter,json=recurrenceCounter,proto3,oneof" json:"recurrence_counter,omitempty"`
- RecurrenceStart *float64 `protobuf:"fixed64,5,opt,name=recurrence_start,json=recurrenceStart,proto3,oneof" json:"recurrence_start,omitempty"`
- RecurrenceLabel *string `protobuf:"bytes,6,opt,name=recurrence_label,json=recurrenceLabel,proto3,oneof" json:"recurrence_label,omitempty"`
- Timeout *float64 `protobuf:"fixed64,7,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
- PayerNote *string `protobuf:"bytes,8,opt,name=payer_note,json=payerNote,proto3,oneof" json:"payer_note,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,1,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
+ FundingOutnum uint32 `protobuf:"varint,2,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
+ Feerate string `protobuf:"bytes,3,opt,name=feerate,proto3" json:"feerate,omitempty"`
+ TotalFundingMsat *Amount `protobuf:"bytes,4,opt,name=total_funding_msat,json=totalFundingMsat,proto3" json:"total_funding_msat,omitempty"`
+ OurFundingMsat *Amount `protobuf:"bytes,5,opt,name=our_funding_msat,json=ourFundingMsat,proto3" json:"our_funding_msat,omitempty"`
+ ScratchTxid []byte `protobuf:"bytes,6,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
+ SpliceAmount *int64 `protobuf:"zigzag64,7,opt,name=splice_amount,json=spliceAmount,proto3,oneof" json:"splice_amount,omitempty"`
}
-func (x *FetchinvoiceRequest) Reset() {
- *x = FetchinvoiceRequest{}
+func (x *ListpeerchannelsChannelsInflight) Reset() {
+ *x = ListpeerchannelsChannelsInflight{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[146]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14848,13 +14679,13 @@ func (x *FetchinvoiceRequest) Reset() {
}
}
-func (x *FetchinvoiceRequest) String() string {
+func (x *ListpeerchannelsChannelsInflight) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FetchinvoiceRequest) ProtoMessage() {}
+func (*ListpeerchannelsChannelsInflight) ProtoMessage() {}
-func (x *FetchinvoiceRequest) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsInflight) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[146]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14866,79 +14697,74 @@ func (x *FetchinvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FetchinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*FetchinvoiceRequest) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsInflight.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsInflight) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{146}
}
-func (x *FetchinvoiceRequest) GetOffer() string {
- if x != nil {
- return x.Offer
- }
- return ""
-}
-
-func (x *FetchinvoiceRequest) GetAmountMsat() *Amount {
+func (x *ListpeerchannelsChannelsInflight) GetFundingTxid() []byte {
if x != nil {
- return x.AmountMsat
+ return x.FundingTxid
}
return nil
}
-func (x *FetchinvoiceRequest) GetQuantity() uint64 {
- if x != nil && x.Quantity != nil {
- return *x.Quantity
+func (x *ListpeerchannelsChannelsInflight) GetFundingOutnum() uint32 {
+ if x != nil {
+ return x.FundingOutnum
}
return 0
}
-func (x *FetchinvoiceRequest) GetRecurrenceCounter() uint64 {
- if x != nil && x.RecurrenceCounter != nil {
- return *x.RecurrenceCounter
+func (x *ListpeerchannelsChannelsInflight) GetFeerate() string {
+ if x != nil {
+ return x.Feerate
}
- return 0
+ return ""
}
-func (x *FetchinvoiceRequest) GetRecurrenceStart() float64 {
- if x != nil && x.RecurrenceStart != nil {
- return *x.RecurrenceStart
+func (x *ListpeerchannelsChannelsInflight) GetTotalFundingMsat() *Amount {
+ if x != nil {
+ return x.TotalFundingMsat
}
- return 0
+ return nil
}
-func (x *FetchinvoiceRequest) GetRecurrenceLabel() string {
- if x != nil && x.RecurrenceLabel != nil {
- return *x.RecurrenceLabel
+func (x *ListpeerchannelsChannelsInflight) GetOurFundingMsat() *Amount {
+ if x != nil {
+ return x.OurFundingMsat
}
- return ""
+ return nil
}
-func (x *FetchinvoiceRequest) GetTimeout() float64 {
- if x != nil && x.Timeout != nil {
- return *x.Timeout
+func (x *ListpeerchannelsChannelsInflight) GetScratchTxid() []byte {
+ if x != nil {
+ return x.ScratchTxid
}
- return 0
+ return nil
}
-func (x *FetchinvoiceRequest) GetPayerNote() string {
- if x != nil && x.PayerNote != nil {
- return *x.PayerNote
+func (x *ListpeerchannelsChannelsInflight) GetSpliceAmount() int64 {
+ if x != nil && x.SpliceAmount != nil {
+ return *x.SpliceAmount
}
- return ""
+ return 0
}
-type FetchinvoiceResponse struct {
+type ListpeerchannelsChannelsFunding struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Invoice string `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
- Changes *FetchinvoiceChanges `protobuf:"bytes,2,opt,name=changes,proto3" json:"changes,omitempty"`
- NextPeriod *FetchinvoiceNextPeriod `protobuf:"bytes,3,opt,name=next_period,json=nextPeriod,proto3,oneof" json:"next_period,omitempty"`
+ PushedMsat *Amount `protobuf:"bytes,1,opt,name=pushed_msat,json=pushedMsat,proto3,oneof" json:"pushed_msat,omitempty"`
+ LocalFundsMsat *Amount `protobuf:"bytes,2,opt,name=local_funds_msat,json=localFundsMsat,proto3" json:"local_funds_msat,omitempty"`
+ RemoteFundsMsat *Amount `protobuf:"bytes,3,opt,name=remote_funds_msat,json=remoteFundsMsat,proto3" json:"remote_funds_msat,omitempty"`
+ FeePaidMsat *Amount `protobuf:"bytes,4,opt,name=fee_paid_msat,json=feePaidMsat,proto3,oneof" json:"fee_paid_msat,omitempty"`
+ FeeRcvdMsat *Amount `protobuf:"bytes,5,opt,name=fee_rcvd_msat,json=feeRcvdMsat,proto3,oneof" json:"fee_rcvd_msat,omitempty"`
}
-func (x *FetchinvoiceResponse) Reset() {
- *x = FetchinvoiceResponse{}
+func (x *ListpeerchannelsChannelsFunding) Reset() {
+ *x = ListpeerchannelsChannelsFunding{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[147]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14946,13 +14772,13 @@ func (x *FetchinvoiceResponse) Reset() {
}
}
-func (x *FetchinvoiceResponse) String() string {
+func (x *ListpeerchannelsChannelsFunding) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FetchinvoiceResponse) ProtoMessage() {}
+func (*ListpeerchannelsChannelsFunding) ProtoMessage() {}
-func (x *FetchinvoiceResponse) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsFunding) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[147]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -14964,46 +14790,57 @@ func (x *FetchinvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FetchinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*FetchinvoiceResponse) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsFunding.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsFunding) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{147}
}
-func (x *FetchinvoiceResponse) GetInvoice() string {
+func (x *ListpeerchannelsChannelsFunding) GetPushedMsat() *Amount {
if x != nil {
- return x.Invoice
+ return x.PushedMsat
}
- return ""
+ return nil
}
-func (x *FetchinvoiceResponse) GetChanges() *FetchinvoiceChanges {
+func (x *ListpeerchannelsChannelsFunding) GetLocalFundsMsat() *Amount {
if x != nil {
- return x.Changes
+ return x.LocalFundsMsat
}
return nil
}
-func (x *FetchinvoiceResponse) GetNextPeriod() *FetchinvoiceNextPeriod {
+func (x *ListpeerchannelsChannelsFunding) GetRemoteFundsMsat() *Amount {
if x != nil {
- return x.NextPeriod
+ return x.RemoteFundsMsat
}
return nil
}
-type FetchinvoiceChanges struct {
+func (x *ListpeerchannelsChannelsFunding) GetFeePaidMsat() *Amount {
+ if x != nil {
+ return x.FeePaidMsat
+ }
+ return nil
+}
+
+func (x *ListpeerchannelsChannelsFunding) GetFeeRcvdMsat() *Amount {
+ if x != nil {
+ return x.FeeRcvdMsat
+ }
+ return nil
+}
+
+type ListpeerchannelsChannelsAlias struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- DescriptionAppended *string `protobuf:"bytes,1,opt,name=description_appended,json=descriptionAppended,proto3,oneof" json:"description_appended,omitempty"`
- Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
- VendorRemoved *string `protobuf:"bytes,3,opt,name=vendor_removed,json=vendorRemoved,proto3,oneof" json:"vendor_removed,omitempty"`
- Vendor *string `protobuf:"bytes,4,opt,name=vendor,proto3,oneof" json:"vendor,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Local *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
+ Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
}
-func (x *FetchinvoiceChanges) Reset() {
- *x = FetchinvoiceChanges{}
+func (x *ListpeerchannelsChannelsAlias) Reset() {
+ *x = ListpeerchannelsChannelsAlias{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[148]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15011,13 +14848,13 @@ func (x *FetchinvoiceChanges) Reset() {
}
}
-func (x *FetchinvoiceChanges) String() string {
+func (x *ListpeerchannelsChannelsAlias) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FetchinvoiceChanges) ProtoMessage() {}
+func (*ListpeerchannelsChannelsAlias) ProtoMessage() {}
-func (x *FetchinvoiceChanges) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsAlias) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[148]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15029,60 +14866,42 @@ func (x *FetchinvoiceChanges) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FetchinvoiceChanges.ProtoReflect.Descriptor instead.
-func (*FetchinvoiceChanges) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsAlias.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsAlias) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{148}
}
-func (x *FetchinvoiceChanges) GetDescriptionAppended() string {
- if x != nil && x.DescriptionAppended != nil {
- return *x.DescriptionAppended
- }
- return ""
-}
-
-func (x *FetchinvoiceChanges) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
- }
- return ""
-}
-
-func (x *FetchinvoiceChanges) GetVendorRemoved() string {
- if x != nil && x.VendorRemoved != nil {
- return *x.VendorRemoved
+func (x *ListpeerchannelsChannelsAlias) GetLocal() string {
+ if x != nil && x.Local != nil {
+ return *x.Local
}
return ""
}
-func (x *FetchinvoiceChanges) GetVendor() string {
- if x != nil && x.Vendor != nil {
- return *x.Vendor
+func (x *ListpeerchannelsChannelsAlias) GetRemote() string {
+ if x != nil && x.Remote != nil {
+ return *x.Remote
}
return ""
}
-func (x *FetchinvoiceChanges) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
- }
- return nil
-}
-
-type FetchinvoiceNextPeriod struct {
+type ListpeerchannelsChannelsHtlcs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Counter uint64 `protobuf:"varint,1,opt,name=counter,proto3" json:"counter,omitempty"`
- Starttime uint64 `protobuf:"varint,2,opt,name=starttime,proto3" json:"starttime,omitempty"`
- Endtime uint64 `protobuf:"varint,3,opt,name=endtime,proto3" json:"endtime,omitempty"`
- PaywindowStart uint64 `protobuf:"varint,4,opt,name=paywindow_start,json=paywindowStart,proto3" json:"paywindow_start,omitempty"`
- PaywindowEnd uint64 `protobuf:"varint,5,opt,name=paywindow_end,json=paywindowEnd,proto3" json:"paywindow_end,omitempty"`
+ Direction ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=cln.ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection" json:"direction,omitempty"`
+ Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ Expiry uint32 `protobuf:"varint,4,opt,name=expiry,proto3" json:"expiry,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,5,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ LocalTrimmed *bool `protobuf:"varint,6,opt,name=local_trimmed,json=localTrimmed,proto3,oneof" json:"local_trimmed,omitempty"`
+ Status *string `protobuf:"bytes,7,opt,name=status,proto3,oneof" json:"status,omitempty"`
+ State HtlcState `protobuf:"varint,8,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
}
-func (x *FetchinvoiceNextPeriod) Reset() {
- *x = FetchinvoiceNextPeriod{}
+func (x *ListpeerchannelsChannelsHtlcs) Reset() {
+ *x = ListpeerchannelsChannelsHtlcs{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[149]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15090,13 +14909,13 @@ func (x *FetchinvoiceNextPeriod) Reset() {
}
}
-func (x *FetchinvoiceNextPeriod) String() string {
+func (x *ListpeerchannelsChannelsHtlcs) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FetchinvoiceNextPeriod) ProtoMessage() {}
+func (*ListpeerchannelsChannelsHtlcs) ProtoMessage() {}
-func (x *FetchinvoiceNextPeriod) ProtoReflect() protoreflect.Message {
+func (x *ListpeerchannelsChannelsHtlcs) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[149]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15108,68 +14927,77 @@ func (x *FetchinvoiceNextPeriod) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FetchinvoiceNextPeriod.ProtoReflect.Descriptor instead.
-func (*FetchinvoiceNextPeriod) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListpeerchannelsChannelsHtlcs.ProtoReflect.Descriptor instead.
+func (*ListpeerchannelsChannelsHtlcs) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{149}
}
-func (x *FetchinvoiceNextPeriod) GetCounter() uint64 {
+func (x *ListpeerchannelsChannelsHtlcs) GetDirection() ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection {
if x != nil {
- return x.Counter
+ return x.Direction
}
- return 0
+ return ListpeerchannelsChannelsHtlcs_IN
}
-func (x *FetchinvoiceNextPeriod) GetStarttime() uint64 {
+func (x *ListpeerchannelsChannelsHtlcs) GetId() uint64 {
if x != nil {
- return x.Starttime
+ return x.Id
}
return 0
}
-func (x *FetchinvoiceNextPeriod) GetEndtime() uint64 {
+func (x *ListpeerchannelsChannelsHtlcs) GetAmountMsat() *Amount {
if x != nil {
- return x.Endtime
+ return x.AmountMsat
}
- return 0
+ return nil
}
-func (x *FetchinvoiceNextPeriod) GetPaywindowStart() uint64 {
+func (x *ListpeerchannelsChannelsHtlcs) GetExpiry() uint32 {
if x != nil {
- return x.PaywindowStart
+ return x.Expiry
}
return 0
}
-func (x *FetchinvoiceNextPeriod) GetPaywindowEnd() uint64 {
+func (x *ListpeerchannelsChannelsHtlcs) GetPaymentHash() []byte {
if x != nil {
- return x.PaywindowEnd
+ return x.PaymentHash
}
- return 0
+ return nil
}
-type FundchannelRequest struct {
+func (x *ListpeerchannelsChannelsHtlcs) GetLocalTrimmed() bool {
+ if x != nil && x.LocalTrimmed != nil {
+ return *x.LocalTrimmed
+ }
+ return false
+}
+
+func (x *ListpeerchannelsChannelsHtlcs) GetStatus() string {
+ if x != nil && x.Status != nil {
+ return *x.Status
+ }
+ return ""
+}
+
+func (x *ListpeerchannelsChannelsHtlcs) GetState() HtlcState {
+ if x != nil {
+ return x.State
+ }
+ return HtlcState_SentAddHtlc
+}
+
+type ListclosedchannelsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,9,opt,name=id,proto3" json:"id,omitempty"`
- Amount *AmountOrAll `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
- Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
- Announce *bool `protobuf:"varint,3,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
- Minconf *uint32 `protobuf:"varint,10,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
- PushMsat *Amount `protobuf:"bytes,5,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
- CloseTo *string `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
- RequestAmt *Amount `protobuf:"bytes,7,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
- CompactLease *string `protobuf:"bytes,8,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
- Utxos []*Outpoint `protobuf:"bytes,11,rep,name=utxos,proto3" json:"utxos,omitempty"`
- Mindepth *uint32 `protobuf:"varint,12,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
- Reserve *Amount `protobuf:"bytes,13,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
- ChannelType []uint32 `protobuf:"varint,14,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}
-func (x *FundchannelRequest) Reset() {
- *x = FundchannelRequest{}
+func (x *ListclosedchannelsRequest) Reset() {
+ *x = ListclosedchannelsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_node_proto_msgTypes[150]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15177,13 +15005,13 @@ func (x *FundchannelRequest) Reset() {
}
}
-func (x *FundchannelRequest) String() string {
+func (x *ListclosedchannelsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FundchannelRequest) ProtoMessage() {}
+func (*ListclosedchannelsRequest) ProtoMessage() {}
-func (x *FundchannelRequest) ProtoReflect() protoreflect.Message {
+func (x *ListclosedchannelsRequest) ProtoReflect() protoreflect.Message {
mi := &file_node_proto_msgTypes[150]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -15195,133 +15023,113 @@ func (x *FundchannelRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FundchannelRequest.ProtoReflect.Descriptor instead.
-func (*FundchannelRequest) Descriptor() ([]byte, []int) {
+// Deprecated: Use ListclosedchannelsRequest.ProtoReflect.Descriptor instead.
+func (*ListclosedchannelsRequest) Descriptor() ([]byte, []int) {
return file_node_proto_rawDescGZIP(), []int{150}
}
-func (x *FundchannelRequest) GetId() []byte {
+func (x *ListclosedchannelsRequest) GetId() []byte {
if x != nil {
return x.Id
}
return nil
}
-func (x *FundchannelRequest) GetAmount() *AmountOrAll {
- if x != nil {
- return x.Amount
- }
- return nil
-}
-
-func (x *FundchannelRequest) GetFeerate() *Feerate {
- if x != nil {
- return x.Feerate
- }
- return nil
-}
-
-func (x *FundchannelRequest) GetAnnounce() bool {
- if x != nil && x.Announce != nil {
- return *x.Announce
- }
- return false
-}
-
-func (x *FundchannelRequest) GetMinconf() uint32 {
- if x != nil && x.Minconf != nil {
- return *x.Minconf
- }
- return 0
-}
-
-func (x *FundchannelRequest) GetPushMsat() *Amount {
- if x != nil {
- return x.PushMsat
- }
- return nil
-}
+type ListclosedchannelsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
-func (x *FundchannelRequest) GetCloseTo() string {
- if x != nil && x.CloseTo != nil {
- return *x.CloseTo
- }
- return ""
+ Closedchannels []*ListclosedchannelsClosedchannels `protobuf:"bytes,1,rep,name=closedchannels,proto3" json:"closedchannels,omitempty"`
}
-func (x *FundchannelRequest) GetRequestAmt() *Amount {
- if x != nil {
- return x.RequestAmt
+func (x *ListclosedchannelsResponse) Reset() {
+ *x = ListclosedchannelsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[151]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return nil
}
-func (x *FundchannelRequest) GetCompactLease() string {
- if x != nil && x.CompactLease != nil {
- return *x.CompactLease
- }
- return ""
+func (x *ListclosedchannelsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (x *FundchannelRequest) GetUtxos() []*Outpoint {
- if x != nil {
- return x.Utxos
- }
- return nil
-}
+func (*ListclosedchannelsResponse) ProtoMessage() {}
-func (x *FundchannelRequest) GetMindepth() uint32 {
- if x != nil && x.Mindepth != nil {
- return *x.Mindepth
+func (x *ListclosedchannelsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[151]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return 0
+ return mi.MessageOf(x)
}
-func (x *FundchannelRequest) GetReserve() *Amount {
- if x != nil {
- return x.Reserve
- }
- return nil
+// Deprecated: Use ListclosedchannelsResponse.ProtoReflect.Descriptor instead.
+func (*ListclosedchannelsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{151}
}
-func (x *FundchannelRequest) GetChannelType() []uint32 {
+func (x *ListclosedchannelsResponse) GetClosedchannels() []*ListclosedchannelsClosedchannels {
if x != nil {
- return x.ChannelType
+ return x.Closedchannels
}
return nil
}
-type FundchannelResponse struct {
+type ListclosedchannelsClosedchannels struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
- Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
- Outnum uint32 `protobuf:"varint,3,opt,name=outnum,proto3" json:"outnum,omitempty"`
- ChannelId []byte `protobuf:"bytes,4,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
- ChannelType *FundchannelChannelType `protobuf:"bytes,7,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
- CloseTo []byte `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
- Mindepth *uint32 `protobuf:"varint,6,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+ PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
+ ChannelId []byte `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ Alias *ListclosedchannelsClosedchannelsAlias `protobuf:"bytes,4,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ Opener ChannelSide `protobuf:"varint,5,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
+ Closer *ChannelSide `protobuf:"varint,6,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
+ Private bool `protobuf:"varint,7,opt,name=private,proto3" json:"private,omitempty"`
+ TotalLocalCommitments uint64 `protobuf:"varint,9,opt,name=total_local_commitments,json=totalLocalCommitments,proto3" json:"total_local_commitments,omitempty"`
+ TotalRemoteCommitments uint64 `protobuf:"varint,10,opt,name=total_remote_commitments,json=totalRemoteCommitments,proto3" json:"total_remote_commitments,omitempty"`
+ TotalHtlcsSent uint64 `protobuf:"varint,11,opt,name=total_htlcs_sent,json=totalHtlcsSent,proto3" json:"total_htlcs_sent,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,12,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
+ FundingOutnum uint32 `protobuf:"varint,13,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
+ Leased bool `protobuf:"varint,14,opt,name=leased,proto3" json:"leased,omitempty"`
+ FundingFeePaidMsat *Amount `protobuf:"bytes,15,opt,name=funding_fee_paid_msat,json=fundingFeePaidMsat,proto3,oneof" json:"funding_fee_paid_msat,omitempty"`
+ FundingFeeRcvdMsat *Amount `protobuf:"bytes,16,opt,name=funding_fee_rcvd_msat,json=fundingFeeRcvdMsat,proto3,oneof" json:"funding_fee_rcvd_msat,omitempty"`
+ FundingPushedMsat *Amount `protobuf:"bytes,17,opt,name=funding_pushed_msat,json=fundingPushedMsat,proto3,oneof" json:"funding_pushed_msat,omitempty"`
+ TotalMsat *Amount `protobuf:"bytes,18,opt,name=total_msat,json=totalMsat,proto3" json:"total_msat,omitempty"`
+ FinalToUsMsat *Amount `protobuf:"bytes,19,opt,name=final_to_us_msat,json=finalToUsMsat,proto3" json:"final_to_us_msat,omitempty"`
+ MinToUsMsat *Amount `protobuf:"bytes,20,opt,name=min_to_us_msat,json=minToUsMsat,proto3" json:"min_to_us_msat,omitempty"`
+ MaxToUsMsat *Amount `protobuf:"bytes,21,opt,name=max_to_us_msat,json=maxToUsMsat,proto3" json:"max_to_us_msat,omitempty"`
+ LastCommitmentTxid []byte `protobuf:"bytes,22,opt,name=last_commitment_txid,json=lastCommitmentTxid,proto3,oneof" json:"last_commitment_txid,omitempty"`
+ LastCommitmentFeeMsat *Amount `protobuf:"bytes,23,opt,name=last_commitment_fee_msat,json=lastCommitmentFeeMsat,proto3,oneof" json:"last_commitment_fee_msat,omitempty"`
+ CloseCause ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause `protobuf:"varint,24,opt,name=close_cause,json=closeCause,proto3,enum=cln.ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause" json:"close_cause,omitempty"`
+ LastStableConnection *uint64 `protobuf:"varint,25,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
}
-func (x *FundchannelResponse) Reset() {
- *x = FundchannelResponse{}
+func (x *ListclosedchannelsClosedchannels) Reset() {
+ *x = ListclosedchannelsClosedchannels{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[151]
+ mi := &file_node_proto_msgTypes[152]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *FundchannelResponse) String() string {
+func (x *ListclosedchannelsClosedchannels) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*FundchannelResponse) ProtoMessage() {}
+func (*ListclosedchannelsClosedchannels) ProtoMessage() {}
-func (x *FundchannelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[151]
+func (x *ListclosedchannelsClosedchannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[152]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15332,243 +15140,205 @@ func (x *FundchannelResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use FundchannelResponse.ProtoReflect.Descriptor instead.
-func (*FundchannelResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{151}
+// Deprecated: Use ListclosedchannelsClosedchannels.ProtoReflect.Descriptor instead.
+func (*ListclosedchannelsClosedchannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{152}
}
-func (x *FundchannelResponse) GetTx() []byte {
+func (x *ListclosedchannelsClosedchannels) GetPeerId() []byte {
if x != nil {
- return x.Tx
+ return x.PeerId
}
return nil
}
-func (x *FundchannelResponse) GetTxid() []byte {
+func (x *ListclosedchannelsClosedchannels) GetChannelId() []byte {
if x != nil {
- return x.Txid
+ return x.ChannelId
}
return nil
}
-func (x *FundchannelResponse) GetOutnum() uint32 {
- if x != nil {
- return x.Outnum
+func (x *ListclosedchannelsClosedchannels) GetShortChannelId() string {
+ if x != nil && x.ShortChannelId != nil {
+ return *x.ShortChannelId
}
- return 0
+ return ""
}
-func (x *FundchannelResponse) GetChannelId() []byte {
+func (x *ListclosedchannelsClosedchannels) GetAlias() *ListclosedchannelsClosedchannelsAlias {
if x != nil {
- return x.ChannelId
+ return x.Alias
}
return nil
}
-func (x *FundchannelResponse) GetChannelType() *FundchannelChannelType {
+func (x *ListclosedchannelsClosedchannels) GetOpener() ChannelSide {
if x != nil {
- return x.ChannelType
+ return x.Opener
}
- return nil
+ return ChannelSide_LOCAL
}
-func (x *FundchannelResponse) GetCloseTo() []byte {
+func (x *ListclosedchannelsClosedchannels) GetCloser() ChannelSide {
+ if x != nil && x.Closer != nil {
+ return *x.Closer
+ }
+ return ChannelSide_LOCAL
+}
+
+func (x *ListclosedchannelsClosedchannels) GetPrivate() bool {
if x != nil {
- return x.CloseTo
+ return x.Private
}
- return nil
+ return false
}
-func (x *FundchannelResponse) GetMindepth() uint32 {
- if x != nil && x.Mindepth != nil {
- return *x.Mindepth
+func (x *ListclosedchannelsClosedchannels) GetTotalLocalCommitments() uint64 {
+ if x != nil {
+ return x.TotalLocalCommitments
}
return 0
}
-type FundchannelChannelType struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
- Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
-}
-
-func (x *FundchannelChannelType) Reset() {
- *x = FundchannelChannelType{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[152]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListclosedchannelsClosedchannels) GetTotalRemoteCommitments() uint64 {
+ if x != nil {
+ return x.TotalRemoteCommitments
}
+ return 0
}
-func (x *FundchannelChannelType) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*FundchannelChannelType) ProtoMessage() {}
-
-func (x *FundchannelChannelType) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[152]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListclosedchannelsClosedchannels) GetTotalHtlcsSent() uint64 {
+ if x != nil {
+ return x.TotalHtlcsSent
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use FundchannelChannelType.ProtoReflect.Descriptor instead.
-func (*FundchannelChannelType) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{152}
+ return 0
}
-func (x *FundchannelChannelType) GetBits() []uint32 {
+func (x *ListclosedchannelsClosedchannels) GetFundingTxid() []byte {
if x != nil {
- return x.Bits
+ return x.FundingTxid
}
return nil
}
-func (x *FundchannelChannelType) GetNames() []ChannelTypeName {
+func (x *ListclosedchannelsClosedchannels) GetFundingOutnum() uint32 {
if x != nil {
- return x.Names
+ return x.FundingOutnum
}
- return nil
-}
-
-type GetrouteRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,9,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Riskfactor uint64 `protobuf:"varint,3,opt,name=riskfactor,proto3" json:"riskfactor,omitempty"`
- Cltv *uint32 `protobuf:"varint,4,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
- Fromid []byte `protobuf:"bytes,5,opt,name=fromid,proto3,oneof" json:"fromid,omitempty"`
- Fuzzpercent *uint32 `protobuf:"varint,6,opt,name=fuzzpercent,proto3,oneof" json:"fuzzpercent,omitempty"`
- Exclude []string `protobuf:"bytes,7,rep,name=exclude,proto3" json:"exclude,omitempty"`
- Maxhops *uint32 `protobuf:"varint,8,opt,name=maxhops,proto3,oneof" json:"maxhops,omitempty"`
+ return 0
}
-func (x *GetrouteRequest) Reset() {
- *x = GetrouteRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[153]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *ListclosedchannelsClosedchannels) GetLeased() bool {
+ if x != nil {
+ return x.Leased
}
+ return false
}
-func (x *GetrouteRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *ListclosedchannelsClosedchannels) GetFundingFeePaidMsat() *Amount {
+ if x != nil {
+ return x.FundingFeePaidMsat
+ }
+ return nil
}
-func (*GetrouteRequest) ProtoMessage() {}
-
-func (x *GetrouteRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[153]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *ListclosedchannelsClosedchannels) GetFundingFeeRcvdMsat() *Amount {
+ if x != nil {
+ return x.FundingFeeRcvdMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use GetrouteRequest.ProtoReflect.Descriptor instead.
-func (*GetrouteRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{153}
+func (x *ListclosedchannelsClosedchannels) GetFundingPushedMsat() *Amount {
+ if x != nil {
+ return x.FundingPushedMsat
+ }
+ return nil
}
-func (x *GetrouteRequest) GetId() []byte {
+func (x *ListclosedchannelsClosedchannels) GetTotalMsat() *Amount {
if x != nil {
- return x.Id
+ return x.TotalMsat
}
return nil
}
-func (x *GetrouteRequest) GetAmountMsat() *Amount {
+func (x *ListclosedchannelsClosedchannels) GetFinalToUsMsat() *Amount {
if x != nil {
- return x.AmountMsat
+ return x.FinalToUsMsat
}
return nil
}
-func (x *GetrouteRequest) GetRiskfactor() uint64 {
+func (x *ListclosedchannelsClosedchannels) GetMinToUsMsat() *Amount {
if x != nil {
- return x.Riskfactor
+ return x.MinToUsMsat
}
- return 0
+ return nil
}
-func (x *GetrouteRequest) GetCltv() uint32 {
- if x != nil && x.Cltv != nil {
- return *x.Cltv
+func (x *ListclosedchannelsClosedchannels) GetMaxToUsMsat() *Amount {
+ if x != nil {
+ return x.MaxToUsMsat
}
- return 0
+ return nil
}
-func (x *GetrouteRequest) GetFromid() []byte {
+func (x *ListclosedchannelsClosedchannels) GetLastCommitmentTxid() []byte {
if x != nil {
- return x.Fromid
+ return x.LastCommitmentTxid
}
return nil
}
-func (x *GetrouteRequest) GetFuzzpercent() uint32 {
- if x != nil && x.Fuzzpercent != nil {
- return *x.Fuzzpercent
+func (x *ListclosedchannelsClosedchannels) GetLastCommitmentFeeMsat() *Amount {
+ if x != nil {
+ return x.LastCommitmentFeeMsat
}
- return 0
+ return nil
}
-func (x *GetrouteRequest) GetExclude() []string {
+func (x *ListclosedchannelsClosedchannels) GetCloseCause() ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause {
if x != nil {
- return x.Exclude
+ return x.CloseCause
}
- return nil
+ return ListclosedchannelsClosedchannels_UNKNOWN
}
-func (x *GetrouteRequest) GetMaxhops() uint32 {
- if x != nil && x.Maxhops != nil {
- return *x.Maxhops
+func (x *ListclosedchannelsClosedchannels) GetLastStableConnection() uint64 {
+ if x != nil && x.LastStableConnection != nil {
+ return *x.LastStableConnection
}
return 0
}
-type GetrouteResponse struct {
+type ListclosedchannelsClosedchannelsAlias struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Route []*GetrouteRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
+ Local *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
+ Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
}
-func (x *GetrouteResponse) Reset() {
- *x = GetrouteResponse{}
+func (x *ListclosedchannelsClosedchannelsAlias) Reset() {
+ *x = ListclosedchannelsClosedchannelsAlias{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[154]
+ mi := &file_node_proto_msgTypes[153]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *GetrouteResponse) String() string {
+func (x *ListclosedchannelsClosedchannelsAlias) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*GetrouteResponse) ProtoMessage() {}
+func (*ListclosedchannelsClosedchannelsAlias) ProtoMessage() {}
-func (x *GetrouteResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[154]
+func (x *ListclosedchannelsClosedchannelsAlias) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[153]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15579,48 +15349,51 @@ func (x *GetrouteResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use GetrouteResponse.ProtoReflect.Descriptor instead.
-func (*GetrouteResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{154}
+// Deprecated: Use ListclosedchannelsClosedchannelsAlias.ProtoReflect.Descriptor instead.
+func (*ListclosedchannelsClosedchannelsAlias) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{153}
}
-func (x *GetrouteResponse) GetRoute() []*GetrouteRoute {
- if x != nil {
- return x.Route
+func (x *ListclosedchannelsClosedchannelsAlias) GetLocal() string {
+ if x != nil && x.Local != nil {
+ return *x.Local
}
- return nil
+ return ""
}
-type GetrouteRoute struct {
+func (x *ListclosedchannelsClosedchannelsAlias) GetRemote() string {
+ if x != nil && x.Remote != nil {
+ return *x.Remote
+ }
+ return ""
+}
+
+type DecodepayRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
- Direction uint32 `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Delay uint32 `protobuf:"varint,5,opt,name=delay,proto3" json:"delay,omitempty"`
- Style GetrouteRoute_GetrouteRouteStyle `protobuf:"varint,6,opt,name=style,proto3,enum=cln.GetrouteRoute_GetrouteRouteStyle" json:"style,omitempty"`
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+ Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
}
-func (x *GetrouteRoute) Reset() {
- *x = GetrouteRoute{}
+func (x *DecodepayRequest) Reset() {
+ *x = DecodepayRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[155]
+ mi := &file_node_proto_msgTypes[154]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *GetrouteRoute) String() string {
+func (x *DecodepayRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*GetrouteRoute) ProtoMessage() {}
+func (*DecodepayRequest) ProtoMessage() {}
-func (x *GetrouteRoute) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[155]
+func (x *DecodepayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[154]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15631,165 +15404,219 @@ func (x *GetrouteRoute) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use GetrouteRoute.ProtoReflect.Descriptor instead.
-func (*GetrouteRoute) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{155}
+// Deprecated: Use DecodepayRequest.ProtoReflect.Descriptor instead.
+func (*DecodepayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{154}
}
-func (x *GetrouteRoute) GetId() []byte {
+func (x *DecodepayRequest) GetBolt11() string {
if x != nil {
- return x.Id
+ return x.Bolt11
}
- return nil
+ return ""
}
-func (x *GetrouteRoute) GetChannel() string {
- if x != nil {
- return x.Channel
+func (x *DecodepayRequest) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
}
return ""
}
-func (x *GetrouteRoute) GetDirection() uint32 {
- if x != nil {
- return x.Direction
- }
- return 0
+type DecodepayResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Currency string `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,2,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Expiry uint64 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
+ Payee []byte `protobuf:"bytes,4,opt,name=payee,proto3" json:"payee,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Signature string `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"`
+ Description *string `protobuf:"bytes,8,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ DescriptionHash []byte `protobuf:"bytes,9,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
+ MinFinalCltvExpiry uint32 `protobuf:"varint,10,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3" json:"min_final_cltv_expiry,omitempty"`
+ PaymentSecret []byte `protobuf:"bytes,11,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
+ Features []byte `protobuf:"bytes,12,opt,name=features,proto3,oneof" json:"features,omitempty"`
+ PaymentMetadata []byte `protobuf:"bytes,13,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
+ Fallbacks []*DecodepayFallbacks `protobuf:"bytes,14,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
+ Extra []*DecodepayExtra `protobuf:"bytes,16,rep,name=extra,proto3" json:"extra,omitempty"`
+ Routes *DecodeRoutehintList `protobuf:"bytes,17,opt,name=routes,proto3,oneof" json:"routes,omitempty"`
}
-func (x *GetrouteRoute) GetAmountMsat() *Amount {
+func (x *DecodepayResponse) Reset() {
+ *x = DecodepayResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[155]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DecodepayResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DecodepayResponse) ProtoMessage() {}
+
+func (x *DecodepayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[155]
+ 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 DecodepayResponse.ProtoReflect.Descriptor instead.
+func (*DecodepayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{155}
+}
+
+func (x *DecodepayResponse) GetCurrency() string {
if x != nil {
- return x.AmountMsat
+ return x.Currency
}
- return nil
+ return ""
}
-func (x *GetrouteRoute) GetDelay() uint32 {
+func (x *DecodepayResponse) GetCreatedAt() uint64 {
if x != nil {
- return x.Delay
+ return x.CreatedAt
}
return 0
}
-func (x *GetrouteRoute) GetStyle() GetrouteRoute_GetrouteRouteStyle {
+func (x *DecodepayResponse) GetExpiry() uint64 {
if x != nil {
- return x.Style
+ return x.Expiry
}
- return GetrouteRoute_TLV
+ return 0
}
-type ListforwardsRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *DecodepayResponse) GetPayee() []byte {
+ if x != nil {
+ return x.Payee
+ }
+ return nil
+}
- Status *ListforwardsRequest_ListforwardsStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cln.ListforwardsRequest_ListforwardsStatus,oneof" json:"status,omitempty"`
- InChannel *string `protobuf:"bytes,2,opt,name=in_channel,json=inChannel,proto3,oneof" json:"in_channel,omitempty"`
- OutChannel *string `protobuf:"bytes,3,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
- Index *ListforwardsRequest_ListforwardsIndex `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListforwardsRequest_ListforwardsIndex,oneof" json:"index,omitempty"`
- Start *uint64 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
- Limit *uint32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
+func (x *DecodepayResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
}
-func (x *ListforwardsRequest) Reset() {
- *x = ListforwardsRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[156]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodepayResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
}
+ return nil
}
-func (x *ListforwardsRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodepayResponse) GetSignature() string {
+ if x != nil {
+ return x.Signature
+ }
+ return ""
}
-func (*ListforwardsRequest) ProtoMessage() {}
+func (x *DecodepayResponse) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
-func (x *ListforwardsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[156]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodepayResponse) GetDescriptionHash() []byte {
+ if x != nil {
+ return x.DescriptionHash
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use ListforwardsRequest.ProtoReflect.Descriptor instead.
-func (*ListforwardsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{156}
+func (x *DecodepayResponse) GetMinFinalCltvExpiry() uint32 {
+ if x != nil {
+ return x.MinFinalCltvExpiry
+ }
+ return 0
}
-func (x *ListforwardsRequest) GetStatus() ListforwardsRequest_ListforwardsStatus {
- if x != nil && x.Status != nil {
- return *x.Status
+func (x *DecodepayResponse) GetPaymentSecret() []byte {
+ if x != nil {
+ return x.PaymentSecret
}
- return ListforwardsRequest_OFFERED
+ return nil
}
-func (x *ListforwardsRequest) GetInChannel() string {
- if x != nil && x.InChannel != nil {
- return *x.InChannel
+func (x *DecodepayResponse) GetFeatures() []byte {
+ if x != nil {
+ return x.Features
}
- return ""
+ return nil
}
-func (x *ListforwardsRequest) GetOutChannel() string {
- if x != nil && x.OutChannel != nil {
- return *x.OutChannel
+func (x *DecodepayResponse) GetPaymentMetadata() []byte {
+ if x != nil {
+ return x.PaymentMetadata
}
- return ""
+ return nil
}
-func (x *ListforwardsRequest) GetIndex() ListforwardsRequest_ListforwardsIndex {
- if x != nil && x.Index != nil {
- return *x.Index
+func (x *DecodepayResponse) GetFallbacks() []*DecodepayFallbacks {
+ if x != nil {
+ return x.Fallbacks
}
- return ListforwardsRequest_CREATED
+ return nil
}
-func (x *ListforwardsRequest) GetStart() uint64 {
- if x != nil && x.Start != nil {
- return *x.Start
+func (x *DecodepayResponse) GetExtra() []*DecodepayExtra {
+ if x != nil {
+ return x.Extra
}
- return 0
+ return nil
}
-func (x *ListforwardsRequest) GetLimit() uint32 {
- if x != nil && x.Limit != nil {
- return *x.Limit
+func (x *DecodepayResponse) GetRoutes() *DecodeRoutehintList {
+ if x != nil {
+ return x.Routes
}
- return 0
+ return nil
}
-type ListforwardsResponse struct {
+type DecodepayFallbacks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Forwards []*ListforwardsForwards `protobuf:"bytes,1,rep,name=forwards,proto3" json:"forwards,omitempty"`
+ ItemType DecodepayFallbacks_DecodepayFallbacksType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodepayFallbacks_DecodepayFallbacksType" json:"item_type,omitempty"`
+ Addr *string `protobuf:"bytes,2,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
+ Hex []byte `protobuf:"bytes,3,opt,name=hex,proto3" json:"hex,omitempty"`
}
-func (x *ListforwardsResponse) Reset() {
- *x = ListforwardsResponse{}
+func (x *DecodepayFallbacks) Reset() {
+ *x = DecodepayFallbacks{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[157]
+ mi := &file_node_proto_msgTypes[156]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListforwardsResponse) String() string {
+func (x *DecodepayFallbacks) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListforwardsResponse) ProtoMessage() {}
+func (*DecodepayFallbacks) ProtoMessage() {}
-func (x *ListforwardsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[157]
+func (x *DecodepayFallbacks) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[156]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15800,54 +15627,58 @@ func (x *ListforwardsResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListforwardsResponse.ProtoReflect.Descriptor instead.
-func (*ListforwardsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{157}
+// Deprecated: Use DecodepayFallbacks.ProtoReflect.Descriptor instead.
+func (*DecodepayFallbacks) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{156}
}
-func (x *ListforwardsResponse) GetForwards() []*ListforwardsForwards {
+func (x *DecodepayFallbacks) GetItemType() DecodepayFallbacks_DecodepayFallbacksType {
if x != nil {
- return x.Forwards
+ return x.ItemType
+ }
+ return DecodepayFallbacks_P2PKH
+}
+
+func (x *DecodepayFallbacks) GetAddr() string {
+ if x != nil && x.Addr != nil {
+ return *x.Addr
+ }
+ return ""
+}
+
+func (x *DecodepayFallbacks) GetHex() []byte {
+ if x != nil {
+ return x.Hex
}
return nil
}
-type ListforwardsForwards struct {
+type DecodepayExtra struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- CreatedIndex *uint64 `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
- InChannel string `protobuf:"bytes,1,opt,name=in_channel,json=inChannel,proto3" json:"in_channel,omitempty"`
- InHtlcId *uint64 `protobuf:"varint,10,opt,name=in_htlc_id,json=inHtlcId,proto3,oneof" json:"in_htlc_id,omitempty"`
- InMsat *Amount `protobuf:"bytes,2,opt,name=in_msat,json=inMsat,proto3" json:"in_msat,omitempty"`
- Status ListforwardsForwards_ListforwardsForwardsStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStatus" json:"status,omitempty"`
- ReceivedTime float64 `protobuf:"fixed64,4,opt,name=received_time,json=receivedTime,proto3" json:"received_time,omitempty"`
- OutChannel *string `protobuf:"bytes,5,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
- OutHtlcId *uint64 `protobuf:"varint,11,opt,name=out_htlc_id,json=outHtlcId,proto3,oneof" json:"out_htlc_id,omitempty"`
- UpdatedIndex *uint64 `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
- Style *ListforwardsForwards_ListforwardsForwardsStyle `protobuf:"varint,9,opt,name=style,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStyle,oneof" json:"style,omitempty"`
- FeeMsat *Amount `protobuf:"bytes,7,opt,name=fee_msat,json=feeMsat,proto3,oneof" json:"fee_msat,omitempty"`
- OutMsat *Amount `protobuf:"bytes,8,opt,name=out_msat,json=outMsat,proto3,oneof" json:"out_msat,omitempty"`
+ Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
+ Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}
-func (x *ListforwardsForwards) Reset() {
- *x = ListforwardsForwards{}
+func (x *DecodepayExtra) Reset() {
+ *x = DecodepayExtra{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[158]
+ mi := &file_node_proto_msgTypes[157]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListforwardsForwards) String() string {
+func (x *DecodepayExtra) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListforwardsForwards) ProtoMessage() {}
+func (*DecodepayExtra) ProtoMessage() {}
-func (x *ListforwardsForwards) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[158]
+func (x *DecodepayExtra) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[157]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15858,121 +15689,50 @@ func (x *ListforwardsForwards) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListforwardsForwards.ProtoReflect.Descriptor instead.
-func (*ListforwardsForwards) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{158}
+// Deprecated: Use DecodepayExtra.ProtoReflect.Descriptor instead.
+func (*DecodepayExtra) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{157}
}
-func (x *ListforwardsForwards) GetCreatedIndex() uint64 {
- if x != nil && x.CreatedIndex != nil {
- return *x.CreatedIndex
+func (x *DecodepayExtra) GetTag() string {
+ if x != nil {
+ return x.Tag
}
- return 0
+ return ""
}
-func (x *ListforwardsForwards) GetInChannel() string {
+func (x *DecodepayExtra) GetData() string {
if x != nil {
- return x.InChannel
+ return x.Data
}
return ""
}
-func (x *ListforwardsForwards) GetInHtlcId() uint64 {
- if x != nil && x.InHtlcId != nil {
- return *x.InHtlcId
- }
- return 0
-}
-
-func (x *ListforwardsForwards) GetInMsat() *Amount {
- if x != nil {
- return x.InMsat
- }
- return nil
-}
-
-func (x *ListforwardsForwards) GetStatus() ListforwardsForwards_ListforwardsForwardsStatus {
- if x != nil {
- return x.Status
- }
- return ListforwardsForwards_OFFERED
-}
-
-func (x *ListforwardsForwards) GetReceivedTime() float64 {
- if x != nil {
- return x.ReceivedTime
- }
- return 0
-}
-
-func (x *ListforwardsForwards) GetOutChannel() string {
- if x != nil && x.OutChannel != nil {
- return *x.OutChannel
- }
- return ""
-}
-
-func (x *ListforwardsForwards) GetOutHtlcId() uint64 {
- if x != nil && x.OutHtlcId != nil {
- return *x.OutHtlcId
- }
- return 0
-}
-
-func (x *ListforwardsForwards) GetUpdatedIndex() uint64 {
- if x != nil && x.UpdatedIndex != nil {
- return *x.UpdatedIndex
- }
- return 0
-}
-
-func (x *ListforwardsForwards) GetStyle() ListforwardsForwards_ListforwardsForwardsStyle {
- if x != nil && x.Style != nil {
- return *x.Style
- }
- return ListforwardsForwards_LEGACY
-}
-
-func (x *ListforwardsForwards) GetFeeMsat() *Amount {
- if x != nil {
- return x.FeeMsat
- }
- return nil
-}
-
-func (x *ListforwardsForwards) GetOutMsat() *Amount {
- if x != nil {
- return x.OutMsat
- }
- return nil
-}
-
-type ListoffersRequest struct {
+type DecodeRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
- ActiveOnly *bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3,oneof" json:"active_only,omitempty"`
+ String_ string `protobuf:"bytes,1,opt,name=string,proto3" json:"string,omitempty"`
}
-func (x *ListoffersRequest) Reset() {
- *x = ListoffersRequest{}
+func (x *DecodeRequest) Reset() {
+ *x = DecodeRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[159]
+ mi := &file_node_proto_msgTypes[158]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListoffersRequest) String() string {
+func (x *DecodeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListoffersRequest) ProtoMessage() {}
+func (*DecodeRequest) ProtoMessage() {}
-func (x *ListoffersRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[159]
+func (x *DecodeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[158]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -15983,50 +15743,118 @@ func (x *ListoffersRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListoffersRequest.ProtoReflect.Descriptor instead.
-func (*ListoffersRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{159}
+// Deprecated: Use DecodeRequest.ProtoReflect.Descriptor instead.
+func (*DecodeRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{158}
}
-func (x *ListoffersRequest) GetOfferId() []byte {
+func (x *DecodeRequest) GetString_() string {
if x != nil {
- return x.OfferId
- }
- return nil
-}
-
-func (x *ListoffersRequest) GetActiveOnly() bool {
- if x != nil && x.ActiveOnly != nil {
- return *x.ActiveOnly
+ return x.String_
}
- return false
+ return ""
}
-type ListoffersResponse struct {
+type DecodeResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Offers []*ListoffersOffers `protobuf:"bytes,1,rep,name=offers,proto3" json:"offers,omitempty"`
+ ItemType DecodeResponse_DecodeType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodeResponse_DecodeType" json:"item_type,omitempty"`
+ Valid bool `protobuf:"varint,2,opt,name=valid,proto3" json:"valid,omitempty"`
+ OfferId []byte `protobuf:"bytes,3,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
+ OfferChains [][]byte `protobuf:"bytes,4,rep,name=offer_chains,json=offerChains,proto3" json:"offer_chains,omitempty"`
+ OfferMetadata []byte `protobuf:"bytes,5,opt,name=offer_metadata,json=offerMetadata,proto3,oneof" json:"offer_metadata,omitempty"`
+ OfferCurrency *string `protobuf:"bytes,6,opt,name=offer_currency,json=offerCurrency,proto3,oneof" json:"offer_currency,omitempty"`
+ WarningUnknownOfferCurrency *string `protobuf:"bytes,7,opt,name=warning_unknown_offer_currency,json=warningUnknownOfferCurrency,proto3,oneof" json:"warning_unknown_offer_currency,omitempty"`
+ CurrencyMinorUnit *uint32 `protobuf:"varint,8,opt,name=currency_minor_unit,json=currencyMinorUnit,proto3,oneof" json:"currency_minor_unit,omitempty"`
+ OfferAmount *uint64 `protobuf:"varint,9,opt,name=offer_amount,json=offerAmount,proto3,oneof" json:"offer_amount,omitempty"`
+ OfferAmountMsat *Amount `protobuf:"bytes,10,opt,name=offer_amount_msat,json=offerAmountMsat,proto3,oneof" json:"offer_amount_msat,omitempty"`
+ OfferDescription *string `protobuf:"bytes,11,opt,name=offer_description,json=offerDescription,proto3,oneof" json:"offer_description,omitempty"`
+ OfferIssuer *string `protobuf:"bytes,12,opt,name=offer_issuer,json=offerIssuer,proto3,oneof" json:"offer_issuer,omitempty"`
+ OfferFeatures []byte `protobuf:"bytes,13,opt,name=offer_features,json=offerFeatures,proto3,oneof" json:"offer_features,omitempty"`
+ OfferAbsoluteExpiry *uint64 `protobuf:"varint,14,opt,name=offer_absolute_expiry,json=offerAbsoluteExpiry,proto3,oneof" json:"offer_absolute_expiry,omitempty"`
+ OfferQuantityMax *uint64 `protobuf:"varint,15,opt,name=offer_quantity_max,json=offerQuantityMax,proto3,oneof" json:"offer_quantity_max,omitempty"`
+ OfferPaths []*DecodeOfferPaths `protobuf:"bytes,16,rep,name=offer_paths,json=offerPaths,proto3" json:"offer_paths,omitempty"`
+ OfferNodeId []byte `protobuf:"bytes,17,opt,name=offer_node_id,json=offerNodeId,proto3,oneof" json:"offer_node_id,omitempty"`
+ WarningMissingOfferNodeId *string `protobuf:"bytes,20,opt,name=warning_missing_offer_node_id,json=warningMissingOfferNodeId,proto3,oneof" json:"warning_missing_offer_node_id,omitempty"`
+ WarningInvalidOfferDescription *string `protobuf:"bytes,21,opt,name=warning_invalid_offer_description,json=warningInvalidOfferDescription,proto3,oneof" json:"warning_invalid_offer_description,omitempty"`
+ WarningMissingOfferDescription *string `protobuf:"bytes,22,opt,name=warning_missing_offer_description,json=warningMissingOfferDescription,proto3,oneof" json:"warning_missing_offer_description,omitempty"`
+ WarningInvalidOfferCurrency *string `protobuf:"bytes,23,opt,name=warning_invalid_offer_currency,json=warningInvalidOfferCurrency,proto3,oneof" json:"warning_invalid_offer_currency,omitempty"`
+ WarningInvalidOfferIssuer *string `protobuf:"bytes,24,opt,name=warning_invalid_offer_issuer,json=warningInvalidOfferIssuer,proto3,oneof" json:"warning_invalid_offer_issuer,omitempty"`
+ InvreqMetadata []byte `protobuf:"bytes,25,opt,name=invreq_metadata,json=invreqMetadata,proto3,oneof" json:"invreq_metadata,omitempty"`
+ InvreqPayerId []byte `protobuf:"bytes,26,opt,name=invreq_payer_id,json=invreqPayerId,proto3,oneof" json:"invreq_payer_id,omitempty"`
+ InvreqChain []byte `protobuf:"bytes,27,opt,name=invreq_chain,json=invreqChain,proto3,oneof" json:"invreq_chain,omitempty"`
+ InvreqAmountMsat *Amount `protobuf:"bytes,28,opt,name=invreq_amount_msat,json=invreqAmountMsat,proto3,oneof" json:"invreq_amount_msat,omitempty"`
+ InvreqFeatures []byte `protobuf:"bytes,29,opt,name=invreq_features,json=invreqFeatures,proto3,oneof" json:"invreq_features,omitempty"`
+ InvreqQuantity *uint64 `protobuf:"varint,30,opt,name=invreq_quantity,json=invreqQuantity,proto3,oneof" json:"invreq_quantity,omitempty"`
+ InvreqPayerNote *string `protobuf:"bytes,31,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
+ InvreqRecurrenceCounter *uint32 `protobuf:"varint,32,opt,name=invreq_recurrence_counter,json=invreqRecurrenceCounter,proto3,oneof" json:"invreq_recurrence_counter,omitempty"`
+ InvreqRecurrenceStart *uint32 `protobuf:"varint,33,opt,name=invreq_recurrence_start,json=invreqRecurrenceStart,proto3,oneof" json:"invreq_recurrence_start,omitempty"`
+ WarningMissingInvreqMetadata *string `protobuf:"bytes,35,opt,name=warning_missing_invreq_metadata,json=warningMissingInvreqMetadata,proto3,oneof" json:"warning_missing_invreq_metadata,omitempty"`
+ WarningMissingInvreqPayerId *string `protobuf:"bytes,36,opt,name=warning_missing_invreq_payer_id,json=warningMissingInvreqPayerId,proto3,oneof" json:"warning_missing_invreq_payer_id,omitempty"`
+ WarningInvalidInvreqPayerNote *string `protobuf:"bytes,37,opt,name=warning_invalid_invreq_payer_note,json=warningInvalidInvreqPayerNote,proto3,oneof" json:"warning_invalid_invreq_payer_note,omitempty"`
+ WarningMissingInvoiceRequestSignature *string `protobuf:"bytes,38,opt,name=warning_missing_invoice_request_signature,json=warningMissingInvoiceRequestSignature,proto3,oneof" json:"warning_missing_invoice_request_signature,omitempty"`
+ WarningInvalidInvoiceRequestSignature *string `protobuf:"bytes,39,opt,name=warning_invalid_invoice_request_signature,json=warningInvalidInvoiceRequestSignature,proto3,oneof" json:"warning_invalid_invoice_request_signature,omitempty"`
+ InvoiceCreatedAt *uint64 `protobuf:"varint,41,opt,name=invoice_created_at,json=invoiceCreatedAt,proto3,oneof" json:"invoice_created_at,omitempty"`
+ InvoiceRelativeExpiry *uint32 `protobuf:"varint,42,opt,name=invoice_relative_expiry,json=invoiceRelativeExpiry,proto3,oneof" json:"invoice_relative_expiry,omitempty"`
+ InvoicePaymentHash []byte `protobuf:"bytes,43,opt,name=invoice_payment_hash,json=invoicePaymentHash,proto3,oneof" json:"invoice_payment_hash,omitempty"`
+ InvoiceAmountMsat *Amount `protobuf:"bytes,44,opt,name=invoice_amount_msat,json=invoiceAmountMsat,proto3,oneof" json:"invoice_amount_msat,omitempty"`
+ InvoiceFallbacks []*DecodeInvoiceFallbacks `protobuf:"bytes,45,rep,name=invoice_fallbacks,json=invoiceFallbacks,proto3" json:"invoice_fallbacks,omitempty"`
+ InvoiceFeatures []byte `protobuf:"bytes,46,opt,name=invoice_features,json=invoiceFeatures,proto3,oneof" json:"invoice_features,omitempty"`
+ InvoiceNodeId []byte `protobuf:"bytes,47,opt,name=invoice_node_id,json=invoiceNodeId,proto3,oneof" json:"invoice_node_id,omitempty"`
+ InvoiceRecurrenceBasetime *uint64 `protobuf:"varint,48,opt,name=invoice_recurrence_basetime,json=invoiceRecurrenceBasetime,proto3,oneof" json:"invoice_recurrence_basetime,omitempty"`
+ WarningMissingInvoicePaths *string `protobuf:"bytes,50,opt,name=warning_missing_invoice_paths,json=warningMissingInvoicePaths,proto3,oneof" json:"warning_missing_invoice_paths,omitempty"`
+ WarningMissingInvoiceBlindedpay *string `protobuf:"bytes,51,opt,name=warning_missing_invoice_blindedpay,json=warningMissingInvoiceBlindedpay,proto3,oneof" json:"warning_missing_invoice_blindedpay,omitempty"`
+ WarningMissingInvoiceCreatedAt *string `protobuf:"bytes,52,opt,name=warning_missing_invoice_created_at,json=warningMissingInvoiceCreatedAt,proto3,oneof" json:"warning_missing_invoice_created_at,omitempty"`
+ WarningMissingInvoicePaymentHash *string `protobuf:"bytes,53,opt,name=warning_missing_invoice_payment_hash,json=warningMissingInvoicePaymentHash,proto3,oneof" json:"warning_missing_invoice_payment_hash,omitempty"`
+ WarningMissingInvoiceAmount *string `protobuf:"bytes,54,opt,name=warning_missing_invoice_amount,json=warningMissingInvoiceAmount,proto3,oneof" json:"warning_missing_invoice_amount,omitempty"`
+ WarningMissingInvoiceRecurrenceBasetime *string `protobuf:"bytes,55,opt,name=warning_missing_invoice_recurrence_basetime,json=warningMissingInvoiceRecurrenceBasetime,proto3,oneof" json:"warning_missing_invoice_recurrence_basetime,omitempty"`
+ WarningMissingInvoiceNodeId *string `protobuf:"bytes,56,opt,name=warning_missing_invoice_node_id,json=warningMissingInvoiceNodeId,proto3,oneof" json:"warning_missing_invoice_node_id,omitempty"`
+ WarningMissingInvoiceSignature *string `protobuf:"bytes,57,opt,name=warning_missing_invoice_signature,json=warningMissingInvoiceSignature,proto3,oneof" json:"warning_missing_invoice_signature,omitempty"`
+ WarningInvalidInvoiceSignature *string `protobuf:"bytes,58,opt,name=warning_invalid_invoice_signature,json=warningInvalidInvoiceSignature,proto3,oneof" json:"warning_invalid_invoice_signature,omitempty"`
+ Fallbacks []*DecodeFallbacks `protobuf:"bytes,59,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
+ CreatedAt *uint64 `protobuf:"varint,60,opt,name=created_at,json=createdAt,proto3,oneof" json:"created_at,omitempty"`
+ Expiry *uint64 `protobuf:"varint,61,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
+ Payee []byte `protobuf:"bytes,62,opt,name=payee,proto3,oneof" json:"payee,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,63,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
+ DescriptionHash []byte `protobuf:"bytes,64,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
+ MinFinalCltvExpiry *uint32 `protobuf:"varint,65,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3,oneof" json:"min_final_cltv_expiry,omitempty"`
+ PaymentSecret []byte `protobuf:"bytes,66,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
+ PaymentMetadata []byte `protobuf:"bytes,67,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
+ Extra []*DecodeExtra `protobuf:"bytes,69,rep,name=extra,proto3" json:"extra,omitempty"`
+ UniqueId *string `protobuf:"bytes,70,opt,name=unique_id,json=uniqueId,proto3,oneof" json:"unique_id,omitempty"`
+ Version *string `protobuf:"bytes,71,opt,name=version,proto3,oneof" json:"version,omitempty"`
+ String_ *string `protobuf:"bytes,72,opt,name=string,proto3,oneof" json:"string,omitempty"`
+ Restrictions []*DecodeRestrictions `protobuf:"bytes,73,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
+ WarningRuneInvalidUtf8 *string `protobuf:"bytes,74,opt,name=warning_rune_invalid_utf8,json=warningRuneInvalidUtf8,proto3,oneof" json:"warning_rune_invalid_utf8,omitempty"`
+ Hex []byte `protobuf:"bytes,75,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
+ Decrypted []byte `protobuf:"bytes,76,opt,name=decrypted,proto3,oneof" json:"decrypted,omitempty"`
+ Signature *string `protobuf:"bytes,77,opt,name=signature,proto3,oneof" json:"signature,omitempty"`
+ Currency *string `protobuf:"bytes,78,opt,name=currency,proto3,oneof" json:"currency,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,79,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Description *string `protobuf:"bytes,80,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ Features []byte `protobuf:"bytes,81,opt,name=features,proto3,oneof" json:"features,omitempty"`
+ Routes *DecodeRoutehintList `protobuf:"bytes,82,opt,name=routes,proto3,oneof" json:"routes,omitempty"`
}
-func (x *ListoffersResponse) Reset() {
- *x = ListoffersResponse{}
+func (x *DecodeResponse) Reset() {
+ *x = DecodeResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[160]
+ mi := &file_node_proto_msgTypes[159]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *ListoffersResponse) String() string {
+func (x *DecodeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*ListoffersResponse) ProtoMessage() {}
+func (*DecodeResponse) ProtoMessage() {}
-func (x *ListoffersResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[160]
+func (x *DecodeResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[159]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -16037,713 +15865,571 @@ func (x *ListoffersResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use ListoffersResponse.ProtoReflect.Descriptor instead.
-func (*ListoffersResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{160}
+// Deprecated: Use DecodeResponse.ProtoReflect.Descriptor instead.
+func (*DecodeResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{159}
}
-func (x *ListoffersResponse) GetOffers() []*ListoffersOffers {
+func (x *DecodeResponse) GetItemType() DecodeResponse_DecodeType {
if x != nil {
- return x.Offers
- }
- return nil
-}
-
-type ListoffersOffers struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
- Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
- SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
- Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
- Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
- Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
-}
-
-func (x *ListoffersOffers) Reset() {
- *x = ListoffersOffers{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[161]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+ return x.ItemType
}
+ return DecodeResponse_BOLT12_OFFER
}
-func (x *ListoffersOffers) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ListoffersOffers) ProtoMessage() {}
-
-func (x *ListoffersOffers) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[161]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetValid() bool {
+ if x != nil {
+ return x.Valid
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use ListoffersOffers.ProtoReflect.Descriptor instead.
-func (*ListoffersOffers) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{161}
+ return false
}
-func (x *ListoffersOffers) GetOfferId() []byte {
+func (x *DecodeResponse) GetOfferId() []byte {
if x != nil {
return x.OfferId
}
return nil
}
-func (x *ListoffersOffers) GetActive() bool {
+func (x *DecodeResponse) GetOfferChains() [][]byte {
if x != nil {
- return x.Active
+ return x.OfferChains
}
- return false
+ return nil
}
-func (x *ListoffersOffers) GetSingleUse() bool {
+func (x *DecodeResponse) GetOfferMetadata() []byte {
if x != nil {
- return x.SingleUse
+ return x.OfferMetadata
}
- return false
+ return nil
}
-func (x *ListoffersOffers) GetBolt12() string {
- if x != nil {
- return x.Bolt12
+func (x *DecodeResponse) GetOfferCurrency() string {
+ if x != nil && x.OfferCurrency != nil {
+ return *x.OfferCurrency
}
return ""
}
-func (x *ListoffersOffers) GetUsed() bool {
- if x != nil {
- return x.Used
- }
- return false
-}
-
-func (x *ListoffersOffers) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *DecodeResponse) GetWarningUnknownOfferCurrency() string {
+ if x != nil && x.WarningUnknownOfferCurrency != nil {
+ return *x.WarningUnknownOfferCurrency
}
return ""
}
-type ListpaysRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Bolt11 *string `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- Status *ListpaysRequest_ListpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListpaysRequest_ListpaysStatus,oneof" json:"status,omitempty"`
-}
-
-func (x *ListpaysRequest) Reset() {
- *x = ListpaysRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[162]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetCurrencyMinorUnit() uint32 {
+ if x != nil && x.CurrencyMinorUnit != nil {
+ return *x.CurrencyMinorUnit
}
+ return 0
}
-func (x *ListpaysRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodeResponse) GetOfferAmount() uint64 {
+ if x != nil && x.OfferAmount != nil {
+ return *x.OfferAmount
+ }
+ return 0
}
-func (*ListpaysRequest) ProtoMessage() {}
-
-func (x *ListpaysRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[162]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetOfferAmountMsat() *Amount {
+ if x != nil {
+ return x.OfferAmountMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use ListpaysRequest.ProtoReflect.Descriptor instead.
-func (*ListpaysRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{162}
+func (x *DecodeResponse) GetOfferDescription() string {
+ if x != nil && x.OfferDescription != nil {
+ return *x.OfferDescription
+ }
+ return ""
}
-func (x *ListpaysRequest) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *DecodeResponse) GetOfferIssuer() string {
+ if x != nil && x.OfferIssuer != nil {
+ return *x.OfferIssuer
}
return ""
}
-func (x *ListpaysRequest) GetPaymentHash() []byte {
+func (x *DecodeResponse) GetOfferFeatures() []byte {
if x != nil {
- return x.PaymentHash
+ return x.OfferFeatures
}
return nil
}
-func (x *ListpaysRequest) GetStatus() ListpaysRequest_ListpaysStatus {
- if x != nil && x.Status != nil {
- return *x.Status
+func (x *DecodeResponse) GetOfferAbsoluteExpiry() uint64 {
+ if x != nil && x.OfferAbsoluteExpiry != nil {
+ return *x.OfferAbsoluteExpiry
}
- return ListpaysRequest_PENDING
-}
-
-type ListpaysResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Pays []*ListpaysPays `protobuf:"bytes,1,rep,name=pays,proto3" json:"pays,omitempty"`
+ return 0
}
-func (x *ListpaysResponse) Reset() {
- *x = ListpaysResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[163]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetOfferQuantityMax() uint64 {
+ if x != nil && x.OfferQuantityMax != nil {
+ return *x.OfferQuantityMax
}
+ return 0
}
-func (x *ListpaysResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ListpaysResponse) ProtoMessage() {}
-
-func (x *ListpaysResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[163]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetOfferPaths() []*DecodeOfferPaths {
+ if x != nil {
+ return x.OfferPaths
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use ListpaysResponse.ProtoReflect.Descriptor instead.
-func (*ListpaysResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{163}
+ return nil
}
-func (x *ListpaysResponse) GetPays() []*ListpaysPays {
+func (x *DecodeResponse) GetOfferNodeId() []byte {
if x != nil {
- return x.Pays
+ return x.OfferNodeId
}
return nil
}
-type ListpaysPays struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- Status ListpaysPays_ListpaysPaysStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.ListpaysPays_ListpaysPaysStatus" json:"status,omitempty"`
- Destination []byte `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- CreatedAt uint64 `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
- CompletedAt *uint64 `protobuf:"varint,12,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
- Label *string `protobuf:"bytes,5,opt,name=label,proto3,oneof" json:"label,omitempty"`
- Bolt11 *string `protobuf:"bytes,6,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
- Description *string `protobuf:"bytes,11,opt,name=description,proto3,oneof" json:"description,omitempty"`
- Bolt12 *string `protobuf:"bytes,7,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,8,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
- AmountSentMsat *Amount `protobuf:"bytes,9,opt,name=amount_sent_msat,json=amountSentMsat,proto3,oneof" json:"amount_sent_msat,omitempty"`
- Preimage []byte `protobuf:"bytes,13,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
- NumberOfParts *uint64 `protobuf:"varint,14,opt,name=number_of_parts,json=numberOfParts,proto3,oneof" json:"number_of_parts,omitempty"`
- Erroronion []byte `protobuf:"bytes,10,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
+func (x *DecodeResponse) GetWarningMissingOfferNodeId() string {
+ if x != nil && x.WarningMissingOfferNodeId != nil {
+ return *x.WarningMissingOfferNodeId
+ }
+ return ""
}
-func (x *ListpaysPays) Reset() {
- *x = ListpaysPays{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[164]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetWarningInvalidOfferDescription() string {
+ if x != nil && x.WarningInvalidOfferDescription != nil {
+ return *x.WarningInvalidOfferDescription
}
+ return ""
}
-func (x *ListpaysPays) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodeResponse) GetWarningMissingOfferDescription() string {
+ if x != nil && x.WarningMissingOfferDescription != nil {
+ return *x.WarningMissingOfferDescription
+ }
+ return ""
}
-func (*ListpaysPays) ProtoMessage() {}
+func (x *DecodeResponse) GetWarningInvalidOfferCurrency() string {
+ if x != nil && x.WarningInvalidOfferCurrency != nil {
+ return *x.WarningInvalidOfferCurrency
+ }
+ return ""
+}
-func (x *ListpaysPays) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[164]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetWarningInvalidOfferIssuer() string {
+ if x != nil && x.WarningInvalidOfferIssuer != nil {
+ return *x.WarningInvalidOfferIssuer
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use ListpaysPays.ProtoReflect.Descriptor instead.
-func (*ListpaysPays) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{164}
+func (x *DecodeResponse) GetInvreqMetadata() []byte {
+ if x != nil {
+ return x.InvreqMetadata
+ }
+ return nil
}
-func (x *ListpaysPays) GetPaymentHash() []byte {
+func (x *DecodeResponse) GetInvreqPayerId() []byte {
if x != nil {
- return x.PaymentHash
+ return x.InvreqPayerId
}
return nil
}
-func (x *ListpaysPays) GetStatus() ListpaysPays_ListpaysPaysStatus {
+func (x *DecodeResponse) GetInvreqChain() []byte {
if x != nil {
- return x.Status
+ return x.InvreqChain
}
- return ListpaysPays_PENDING
+ return nil
}
-func (x *ListpaysPays) GetDestination() []byte {
+func (x *DecodeResponse) GetInvreqAmountMsat() *Amount {
if x != nil {
- return x.Destination
+ return x.InvreqAmountMsat
}
return nil
}
-func (x *ListpaysPays) GetCreatedAt() uint64 {
+func (x *DecodeResponse) GetInvreqFeatures() []byte {
if x != nil {
- return x.CreatedAt
+ return x.InvreqFeatures
}
- return 0
+ return nil
}
-func (x *ListpaysPays) GetCompletedAt() uint64 {
- if x != nil && x.CompletedAt != nil {
- return *x.CompletedAt
+func (x *DecodeResponse) GetInvreqQuantity() uint64 {
+ if x != nil && x.InvreqQuantity != nil {
+ return *x.InvreqQuantity
}
return 0
}
-func (x *ListpaysPays) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *DecodeResponse) GetInvreqPayerNote() string {
+ if x != nil && x.InvreqPayerNote != nil {
+ return *x.InvreqPayerNote
}
return ""
}
-func (x *ListpaysPays) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *DecodeResponse) GetInvreqRecurrenceCounter() uint32 {
+ if x != nil && x.InvreqRecurrenceCounter != nil {
+ return *x.InvreqRecurrenceCounter
}
- return ""
+ return 0
}
-func (x *ListpaysPays) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+func (x *DecodeResponse) GetInvreqRecurrenceStart() uint32 {
+ if x != nil && x.InvreqRecurrenceStart != nil {
+ return *x.InvreqRecurrenceStart
}
- return ""
+ return 0
}
-func (x *ListpaysPays) GetBolt12() string {
- if x != nil && x.Bolt12 != nil {
- return *x.Bolt12
+func (x *DecodeResponse) GetWarningMissingInvreqMetadata() string {
+ if x != nil && x.WarningMissingInvreqMetadata != nil {
+ return *x.WarningMissingInvreqMetadata
}
return ""
}
-func (x *ListpaysPays) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *DecodeResponse) GetWarningMissingInvreqPayerId() string {
+ if x != nil && x.WarningMissingInvreqPayerId != nil {
+ return *x.WarningMissingInvreqPayerId
}
- return nil
+ return ""
}
-func (x *ListpaysPays) GetAmountSentMsat() *Amount {
- if x != nil {
- return x.AmountSentMsat
+func (x *DecodeResponse) GetWarningInvalidInvreqPayerNote() string {
+ if x != nil && x.WarningInvalidInvreqPayerNote != nil {
+ return *x.WarningInvalidInvreqPayerNote
}
- return nil
+ return ""
}
-func (x *ListpaysPays) GetPreimage() []byte {
- if x != nil {
- return x.Preimage
+func (x *DecodeResponse) GetWarningMissingInvoiceRequestSignature() string {
+ if x != nil && x.WarningMissingInvoiceRequestSignature != nil {
+ return *x.WarningMissingInvoiceRequestSignature
}
- return nil
+ return ""
}
-func (x *ListpaysPays) GetNumberOfParts() uint64 {
- if x != nil && x.NumberOfParts != nil {
- return *x.NumberOfParts
+func (x *DecodeResponse) GetWarningInvalidInvoiceRequestSignature() string {
+ if x != nil && x.WarningInvalidInvoiceRequestSignature != nil {
+ return *x.WarningInvalidInvoiceRequestSignature
}
- return 0
+ return ""
}
-func (x *ListpaysPays) GetErroronion() []byte {
- if x != nil {
- return x.Erroronion
+func (x *DecodeResponse) GetInvoiceCreatedAt() uint64 {
+ if x != nil && x.InvoiceCreatedAt != nil {
+ return *x.InvoiceCreatedAt
}
- return nil
-}
-
-type ListhtlcsRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+ return 0
}
-func (x *ListhtlcsRequest) Reset() {
- *x = ListhtlcsRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[165]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetInvoiceRelativeExpiry() uint32 {
+ if x != nil && x.InvoiceRelativeExpiry != nil {
+ return *x.InvoiceRelativeExpiry
}
+ return 0
}
-func (x *ListhtlcsRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*ListhtlcsRequest) ProtoMessage() {}
-
-func (x *ListhtlcsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[165]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetInvoicePaymentHash() []byte {
+ if x != nil {
+ return x.InvoicePaymentHash
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use ListhtlcsRequest.ProtoReflect.Descriptor instead.
-func (*ListhtlcsRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{165}
+func (x *DecodeResponse) GetInvoiceAmountMsat() *Amount {
+ if x != nil {
+ return x.InvoiceAmountMsat
+ }
+ return nil
}
-func (x *ListhtlcsRequest) GetId() string {
- if x != nil && x.Id != nil {
- return *x.Id
+func (x *DecodeResponse) GetInvoiceFallbacks() []*DecodeInvoiceFallbacks {
+ if x != nil {
+ return x.InvoiceFallbacks
}
- return ""
+ return nil
}
-type ListhtlcsResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Htlcs []*ListhtlcsHtlcs `protobuf:"bytes,1,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
+func (x *DecodeResponse) GetInvoiceFeatures() []byte {
+ if x != nil {
+ return x.InvoiceFeatures
+ }
+ return nil
}
-func (x *ListhtlcsResponse) Reset() {
- *x = ListhtlcsResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[166]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetInvoiceNodeId() []byte {
+ if x != nil {
+ return x.InvoiceNodeId
}
+ return nil
}
-func (x *ListhtlcsResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodeResponse) GetInvoiceRecurrenceBasetime() uint64 {
+ if x != nil && x.InvoiceRecurrenceBasetime != nil {
+ return *x.InvoiceRecurrenceBasetime
+ }
+ return 0
}
-func (*ListhtlcsResponse) ProtoMessage() {}
-
-func (x *ListhtlcsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[166]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetWarningMissingInvoicePaths() string {
+ if x != nil && x.WarningMissingInvoicePaths != nil {
+ return *x.WarningMissingInvoicePaths
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use ListhtlcsResponse.ProtoReflect.Descriptor instead.
-func (*ListhtlcsResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{166}
+func (x *DecodeResponse) GetWarningMissingInvoiceBlindedpay() string {
+ if x != nil && x.WarningMissingInvoiceBlindedpay != nil {
+ return *x.WarningMissingInvoiceBlindedpay
+ }
+ return ""
}
-func (x *ListhtlcsResponse) GetHtlcs() []*ListhtlcsHtlcs {
- if x != nil {
- return x.Htlcs
+func (x *DecodeResponse) GetWarningMissingInvoiceCreatedAt() string {
+ if x != nil && x.WarningMissingInvoiceCreatedAt != nil {
+ return *x.WarningMissingInvoiceCreatedAt
}
- return nil
+ return ""
}
-type ListhtlcsHtlcs struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- ShortChannelId string `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
- Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
- Expiry uint32 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
- Direction ListhtlcsHtlcs_ListhtlcsHtlcsDirection `protobuf:"varint,5,opt,name=direction,proto3,enum=cln.ListhtlcsHtlcs_ListhtlcsHtlcsDirection" json:"direction,omitempty"`
- PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
- State HtlcState `protobuf:"varint,7,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
+func (x *DecodeResponse) GetWarningMissingInvoicePaymentHash() string {
+ if x != nil && x.WarningMissingInvoicePaymentHash != nil {
+ return *x.WarningMissingInvoicePaymentHash
+ }
+ return ""
}
-func (x *ListhtlcsHtlcs) Reset() {
- *x = ListhtlcsHtlcs{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[167]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetWarningMissingInvoiceAmount() string {
+ if x != nil && x.WarningMissingInvoiceAmount != nil {
+ return *x.WarningMissingInvoiceAmount
}
+ return ""
}
-func (x *ListhtlcsHtlcs) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodeResponse) GetWarningMissingInvoiceRecurrenceBasetime() string {
+ if x != nil && x.WarningMissingInvoiceRecurrenceBasetime != nil {
+ return *x.WarningMissingInvoiceRecurrenceBasetime
+ }
+ return ""
}
-func (*ListhtlcsHtlcs) ProtoMessage() {}
-
-func (x *ListhtlcsHtlcs) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[167]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetWarningMissingInvoiceNodeId() string {
+ if x != nil && x.WarningMissingInvoiceNodeId != nil {
+ return *x.WarningMissingInvoiceNodeId
}
- return mi.MessageOf(x)
+ return ""
}
-// Deprecated: Use ListhtlcsHtlcs.ProtoReflect.Descriptor instead.
-func (*ListhtlcsHtlcs) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{167}
+func (x *DecodeResponse) GetWarningMissingInvoiceSignature() string {
+ if x != nil && x.WarningMissingInvoiceSignature != nil {
+ return *x.WarningMissingInvoiceSignature
+ }
+ return ""
}
-func (x *ListhtlcsHtlcs) GetShortChannelId() string {
- if x != nil {
- return x.ShortChannelId
+func (x *DecodeResponse) GetWarningInvalidInvoiceSignature() string {
+ if x != nil && x.WarningInvalidInvoiceSignature != nil {
+ return *x.WarningInvalidInvoiceSignature
}
return ""
}
-func (x *ListhtlcsHtlcs) GetId() uint64 {
+func (x *DecodeResponse) GetFallbacks() []*DecodeFallbacks {
if x != nil {
- return x.Id
+ return x.Fallbacks
}
- return 0
+ return nil
}
-func (x *ListhtlcsHtlcs) GetExpiry() uint32 {
- if x != nil {
- return x.Expiry
+func (x *DecodeResponse) GetCreatedAt() uint64 {
+ if x != nil && x.CreatedAt != nil {
+ return *x.CreatedAt
}
return 0
}
-func (x *ListhtlcsHtlcs) GetAmountMsat() *Amount {
- if x != nil {
- return x.AmountMsat
+func (x *DecodeResponse) GetExpiry() uint64 {
+ if x != nil && x.Expiry != nil {
+ return *x.Expiry
}
- return nil
+ return 0
}
-func (x *ListhtlcsHtlcs) GetDirection() ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
+func (x *DecodeResponse) GetPayee() []byte {
if x != nil {
- return x.Direction
+ return x.Payee
}
- return ListhtlcsHtlcs_OUT
+ return nil
}
-func (x *ListhtlcsHtlcs) GetPaymentHash() []byte {
+func (x *DecodeResponse) GetPaymentHash() []byte {
if x != nil {
return x.PaymentHash
}
return nil
}
-func (x *ListhtlcsHtlcs) GetState() HtlcState {
+func (x *DecodeResponse) GetDescriptionHash() []byte {
if x != nil {
- return x.State
+ return x.DescriptionHash
}
- return HtlcState_SentAddHtlc
+ return nil
}
-type OfferRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Amount string `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
- Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
- Issuer *string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"`
- Label *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
- QuantityMax *uint64 `protobuf:"varint,5,opt,name=quantity_max,json=quantityMax,proto3,oneof" json:"quantity_max,omitempty"`
- AbsoluteExpiry *uint64 `protobuf:"varint,6,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof" json:"absolute_expiry,omitempty"`
- Recurrence *string `protobuf:"bytes,7,opt,name=recurrence,proto3,oneof" json:"recurrence,omitempty"`
- RecurrenceBase *string `protobuf:"bytes,8,opt,name=recurrence_base,json=recurrenceBase,proto3,oneof" json:"recurrence_base,omitempty"`
- RecurrencePaywindow *string `protobuf:"bytes,9,opt,name=recurrence_paywindow,json=recurrencePaywindow,proto3,oneof" json:"recurrence_paywindow,omitempty"`
- RecurrenceLimit *uint64 `protobuf:"varint,10,opt,name=recurrence_limit,json=recurrenceLimit,proto3,oneof" json:"recurrence_limit,omitempty"`
- SingleUse *bool `protobuf:"varint,11,opt,name=single_use,json=singleUse,proto3,oneof" json:"single_use,omitempty"`
+func (x *DecodeResponse) GetMinFinalCltvExpiry() uint32 {
+ if x != nil && x.MinFinalCltvExpiry != nil {
+ return *x.MinFinalCltvExpiry
+ }
+ return 0
}
-func (x *OfferRequest) Reset() {
- *x = OfferRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[168]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DecodeResponse) GetPaymentSecret() []byte {
+ if x != nil {
+ return x.PaymentSecret
}
+ return nil
}
-func (x *OfferRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DecodeResponse) GetPaymentMetadata() []byte {
+ if x != nil {
+ return x.PaymentMetadata
+ }
+ return nil
}
-func (*OfferRequest) ProtoMessage() {}
-
-func (x *OfferRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[168]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DecodeResponse) GetExtra() []*DecodeExtra {
+ if x != nil {
+ return x.Extra
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use OfferRequest.ProtoReflect.Descriptor instead.
-func (*OfferRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{168}
+func (x *DecodeResponse) GetUniqueId() string {
+ if x != nil && x.UniqueId != nil {
+ return *x.UniqueId
+ }
+ return ""
}
-func (x *OfferRequest) GetAmount() string {
- if x != nil {
- return x.Amount
+func (x *DecodeResponse) GetVersion() string {
+ if x != nil && x.Version != nil {
+ return *x.Version
}
return ""
}
-func (x *OfferRequest) GetDescription() string {
- if x != nil {
- return x.Description
+func (x *DecodeResponse) GetString_() string {
+ if x != nil && x.String_ != nil {
+ return *x.String_
}
return ""
}
-func (x *OfferRequest) GetIssuer() string {
- if x != nil && x.Issuer != nil {
- return *x.Issuer
+func (x *DecodeResponse) GetRestrictions() []*DecodeRestrictions {
+ if x != nil {
+ return x.Restrictions
}
- return ""
+ return nil
}
-func (x *OfferRequest) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *DecodeResponse) GetWarningRuneInvalidUtf8() string {
+ if x != nil && x.WarningRuneInvalidUtf8 != nil {
+ return *x.WarningRuneInvalidUtf8
}
return ""
}
-func (x *OfferRequest) GetQuantityMax() uint64 {
- if x != nil && x.QuantityMax != nil {
- return *x.QuantityMax
+func (x *DecodeResponse) GetHex() []byte {
+ if x != nil {
+ return x.Hex
}
- return 0
+ return nil
}
-func (x *OfferRequest) GetAbsoluteExpiry() uint64 {
- if x != nil && x.AbsoluteExpiry != nil {
- return *x.AbsoluteExpiry
+func (x *DecodeResponse) GetDecrypted() []byte {
+ if x != nil {
+ return x.Decrypted
}
- return 0
+ return nil
}
-func (x *OfferRequest) GetRecurrence() string {
- if x != nil && x.Recurrence != nil {
- return *x.Recurrence
+func (x *DecodeResponse) GetSignature() string {
+ if x != nil && x.Signature != nil {
+ return *x.Signature
}
return ""
}
-func (x *OfferRequest) GetRecurrenceBase() string {
- if x != nil && x.RecurrenceBase != nil {
- return *x.RecurrenceBase
+func (x *DecodeResponse) GetCurrency() string {
+ if x != nil && x.Currency != nil {
+ return *x.Currency
}
return ""
}
-func (x *OfferRequest) GetRecurrencePaywindow() string {
- if x != nil && x.RecurrencePaywindow != nil {
- return *x.RecurrencePaywindow
+func (x *DecodeResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *DecodeResponse) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
}
return ""
}
-func (x *OfferRequest) GetRecurrenceLimit() uint64 {
- if x != nil && x.RecurrenceLimit != nil {
- return *x.RecurrenceLimit
+func (x *DecodeResponse) GetFeatures() []byte {
+ if x != nil {
+ return x.Features
}
- return 0
+ return nil
}
-func (x *OfferRequest) GetSingleUse() bool {
- if x != nil && x.SingleUse != nil {
- return *x.SingleUse
+func (x *DecodeResponse) GetRoutes() *DecodeRoutehintList {
+ if x != nil {
+ return x.Routes
}
- return false
+ return nil
}
-type OfferResponse struct {
+type DecodeOfferPaths struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
- Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
- SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
- Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
- Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
- Created bool `protobuf:"varint,6,opt,name=created,proto3" json:"created,omitempty"`
- Label *string `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ FirstNodeId []byte `protobuf:"bytes,1,opt,name=first_node_id,json=firstNodeId,proto3,oneof" json:"first_node_id,omitempty"`
+ Blinding []byte `protobuf:"bytes,2,opt,name=blinding,proto3" json:"blinding,omitempty"`
+ FirstScidDir *uint32 `protobuf:"varint,4,opt,name=first_scid_dir,json=firstScidDir,proto3,oneof" json:"first_scid_dir,omitempty"`
+ FirstScid *string `protobuf:"bytes,5,opt,name=first_scid,json=firstScid,proto3,oneof" json:"first_scid,omitempty"`
}
-func (x *OfferResponse) Reset() {
- *x = OfferResponse{}
+func (x *DecodeOfferPaths) Reset() {
+ *x = DecodeOfferPaths{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[169]
+ mi := &file_node_proto_msgTypes[160]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *OfferResponse) String() string {
+func (x *DecodeOfferPaths) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*OfferResponse) ProtoMessage() {}
+func (*DecodeOfferPaths) ProtoMessage() {}
-func (x *OfferResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[169]
+func (x *DecodeOfferPaths) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[160]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -16754,87 +16440,66 @@ func (x *OfferResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use OfferResponse.ProtoReflect.Descriptor instead.
-func (*OfferResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{169}
+// Deprecated: Use DecodeOfferPaths.ProtoReflect.Descriptor instead.
+func (*DecodeOfferPaths) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{160}
}
-func (x *OfferResponse) GetOfferId() []byte {
+func (x *DecodeOfferPaths) GetFirstNodeId() []byte {
if x != nil {
- return x.OfferId
+ return x.FirstNodeId
}
return nil
}
-func (x *OfferResponse) GetActive() bool {
- if x != nil {
- return x.Active
- }
- return false
-}
-
-func (x *OfferResponse) GetSingleUse() bool {
- if x != nil {
- return x.SingleUse
- }
- return false
-}
-
-func (x *OfferResponse) GetBolt12() string {
- if x != nil {
- return x.Bolt12
- }
- return ""
-}
-
-func (x *OfferResponse) GetUsed() bool {
+func (x *DecodeOfferPaths) GetBlinding() []byte {
if x != nil {
- return x.Used
+ return x.Blinding
}
- return false
+ return nil
}
-func (x *OfferResponse) GetCreated() bool {
- if x != nil {
- return x.Created
+func (x *DecodeOfferPaths) GetFirstScidDir() uint32 {
+ if x != nil && x.FirstScidDir != nil {
+ return *x.FirstScidDir
}
- return false
+ return 0
}
-func (x *OfferResponse) GetLabel() string {
- if x != nil && x.Label != nil {
- return *x.Label
+func (x *DecodeOfferPaths) GetFirstScid() string {
+ if x != nil && x.FirstScid != nil {
+ return *x.FirstScid
}
return ""
}
-type PingRequest struct {
+type DecodeOfferRecurrencePaywindow struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Len *uint32 `protobuf:"varint,2,opt,name=len,proto3,oneof" json:"len,omitempty"`
- Pongbytes *uint32 `protobuf:"varint,3,opt,name=pongbytes,proto3,oneof" json:"pongbytes,omitempty"`
+ SecondsBefore uint32 `protobuf:"varint,1,opt,name=seconds_before,json=secondsBefore,proto3" json:"seconds_before,omitempty"`
+ SecondsAfter uint32 `protobuf:"varint,2,opt,name=seconds_after,json=secondsAfter,proto3" json:"seconds_after,omitempty"`
+ ProportionalAmount *bool `protobuf:"varint,3,opt,name=proportional_amount,json=proportionalAmount,proto3,oneof" json:"proportional_amount,omitempty"`
}
-func (x *PingRequest) Reset() {
- *x = PingRequest{}
+func (x *DecodeOfferRecurrencePaywindow) Reset() {
+ *x = DecodeOfferRecurrencePaywindow{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[170]
+ mi := &file_node_proto_msgTypes[161]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PingRequest) String() string {
+func (x *DecodeOfferRecurrencePaywindow) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PingRequest) ProtoMessage() {}
+func (*DecodeOfferRecurrencePaywindow) ProtoMessage() {}
-func (x *PingRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[170]
+func (x *DecodeOfferRecurrencePaywindow) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[161]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -16845,57 +16510,58 @@ func (x *PingRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PingRequest.ProtoReflect.Descriptor instead.
-func (*PingRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{170}
+// Deprecated: Use DecodeOfferRecurrencePaywindow.ProtoReflect.Descriptor instead.
+func (*DecodeOfferRecurrencePaywindow) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{161}
}
-func (x *PingRequest) GetId() []byte {
+func (x *DecodeOfferRecurrencePaywindow) GetSecondsBefore() uint32 {
if x != nil {
- return x.Id
+ return x.SecondsBefore
}
- return nil
+ return 0
}
-func (x *PingRequest) GetLen() uint32 {
- if x != nil && x.Len != nil {
- return *x.Len
+func (x *DecodeOfferRecurrencePaywindow) GetSecondsAfter() uint32 {
+ if x != nil {
+ return x.SecondsAfter
}
return 0
}
-func (x *PingRequest) GetPongbytes() uint32 {
- if x != nil && x.Pongbytes != nil {
- return *x.Pongbytes
+func (x *DecodeOfferRecurrencePaywindow) GetProportionalAmount() bool {
+ if x != nil && x.ProportionalAmount != nil {
+ return *x.ProportionalAmount
}
- return 0
+ return false
}
-type PingResponse struct {
+type DecodeInvoicePathsPath struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Totlen uint32 `protobuf:"varint,1,opt,name=totlen,proto3" json:"totlen,omitempty"`
+ BlindedNodeId []byte `protobuf:"bytes,1,opt,name=blinded_node_id,json=blindedNodeId,proto3" json:"blinded_node_id,omitempty"`
+ EncryptedRecipientData []byte `protobuf:"bytes,2,opt,name=encrypted_recipient_data,json=encryptedRecipientData,proto3" json:"encrypted_recipient_data,omitempty"`
}
-func (x *PingResponse) Reset() {
- *x = PingResponse{}
+func (x *DecodeInvoicePathsPath) Reset() {
+ *x = DecodeInvoicePathsPath{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[171]
+ mi := &file_node_proto_msgTypes[162]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PingResponse) String() string {
+func (x *DecodeInvoicePathsPath) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PingResponse) ProtoMessage() {}
+func (*DecodeInvoicePathsPath) ProtoMessage() {}
-func (x *PingResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[171]
+func (x *DecodeInvoicePathsPath) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[162]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -16906,44 +16572,52 @@ func (x *PingResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PingResponse.ProtoReflect.Descriptor instead.
-func (*PingResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{171}
+// Deprecated: Use DecodeInvoicePathsPath.ProtoReflect.Descriptor instead.
+func (*DecodeInvoicePathsPath) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{162}
}
-func (x *PingResponse) GetTotlen() uint32 {
+func (x *DecodeInvoicePathsPath) GetBlindedNodeId() []byte {
if x != nil {
- return x.Totlen
+ return x.BlindedNodeId
}
- return 0
+ return nil
}
-type SendcustommsgRequest struct {
+func (x *DecodeInvoicePathsPath) GetEncryptedRecipientData() []byte {
+ if x != nil {
+ return x.EncryptedRecipientData
+ }
+ return nil
+}
+
+type DecodeInvoiceFallbacks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- NodeId []byte `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
- Msg []byte `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
+ Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
+ Hex []byte `protobuf:"bytes,2,opt,name=hex,proto3" json:"hex,omitempty"`
+ Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}
-func (x *SendcustommsgRequest) Reset() {
- *x = SendcustommsgRequest{}
+func (x *DecodeInvoiceFallbacks) Reset() {
+ *x = DecodeInvoiceFallbacks{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[172]
+ mi := &file_node_proto_msgTypes[163]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendcustommsgRequest) String() string {
+func (x *DecodeInvoiceFallbacks) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendcustommsgRequest) ProtoMessage() {}
+func (*DecodeInvoiceFallbacks) ProtoMessage() {}
-func (x *SendcustommsgRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[172]
+func (x *DecodeInvoiceFallbacks) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[163]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -16954,50 +16628,60 @@ func (x *SendcustommsgRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendcustommsgRequest.ProtoReflect.Descriptor instead.
-func (*SendcustommsgRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{172}
+// Deprecated: Use DecodeInvoiceFallbacks.ProtoReflect.Descriptor instead.
+func (*DecodeInvoiceFallbacks) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{163}
}
-func (x *SendcustommsgRequest) GetNodeId() []byte {
+func (x *DecodeInvoiceFallbacks) GetVersion() uint32 {
if x != nil {
- return x.NodeId
+ return x.Version
}
- return nil
+ return 0
}
-func (x *SendcustommsgRequest) GetMsg() []byte {
+func (x *DecodeInvoiceFallbacks) GetHex() []byte {
if x != nil {
- return x.Msg
+ return x.Hex
}
return nil
}
-type SendcustommsgResponse struct {
+func (x *DecodeInvoiceFallbacks) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
+ }
+ return ""
+}
+
+type DecodeFallbacks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
+ WarningInvoiceFallbacksVersionInvalid *string `protobuf:"bytes,1,opt,name=warning_invoice_fallbacks_version_invalid,json=warningInvoiceFallbacksVersionInvalid,proto3,oneof" json:"warning_invoice_fallbacks_version_invalid,omitempty"`
+ ItemType DecodeFallbacks_DecodeFallbacksType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.DecodeFallbacks_DecodeFallbacksType" json:"item_type,omitempty"`
+ Addr *string `protobuf:"bytes,3,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
+ Hex []byte `protobuf:"bytes,4,opt,name=hex,proto3" json:"hex,omitempty"`
}
-func (x *SendcustommsgResponse) Reset() {
- *x = SendcustommsgResponse{}
+func (x *DecodeFallbacks) Reset() {
+ *x = DecodeFallbacks{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[173]
+ mi := &file_node_proto_msgTypes[164]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SendcustommsgResponse) String() string {
+func (x *DecodeFallbacks) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SendcustommsgResponse) ProtoMessage() {}
+func (*DecodeFallbacks) ProtoMessage() {}
-func (x *SendcustommsgResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[173]
+func (x *DecodeFallbacks) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[164]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17008,49 +16692,65 @@ func (x *SendcustommsgResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SendcustommsgResponse.ProtoReflect.Descriptor instead.
-func (*SendcustommsgResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{173}
+// Deprecated: Use DecodeFallbacks.ProtoReflect.Descriptor instead.
+func (*DecodeFallbacks) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{164}
}
-func (x *SendcustommsgResponse) GetStatus() string {
+func (x *DecodeFallbacks) GetWarningInvoiceFallbacksVersionInvalid() string {
+ if x != nil && x.WarningInvoiceFallbacksVersionInvalid != nil {
+ return *x.WarningInvoiceFallbacksVersionInvalid
+ }
+ return ""
+}
+
+func (x *DecodeFallbacks) GetItemType() DecodeFallbacks_DecodeFallbacksType {
if x != nil {
- return x.Status
+ return x.ItemType
+ }
+ return DecodeFallbacks_P2PKH
+}
+
+func (x *DecodeFallbacks) GetAddr() string {
+ if x != nil && x.Addr != nil {
+ return *x.Addr
}
return ""
}
-type SetchannelRequest struct {
+func (x *DecodeFallbacks) GetHex() []byte {
+ if x != nil {
+ return x.Hex
+ }
+ return nil
+}
+
+type DecodeExtra struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- Feebase *Amount `protobuf:"bytes,2,opt,name=feebase,proto3,oneof" json:"feebase,omitempty"`
- Feeppm *uint32 `protobuf:"varint,3,opt,name=feeppm,proto3,oneof" json:"feeppm,omitempty"`
- Htlcmin *Amount `protobuf:"bytes,4,opt,name=htlcmin,proto3,oneof" json:"htlcmin,omitempty"`
- Htlcmax *Amount `protobuf:"bytes,5,opt,name=htlcmax,proto3,oneof" json:"htlcmax,omitempty"`
- Enforcedelay *uint32 `protobuf:"varint,6,opt,name=enforcedelay,proto3,oneof" json:"enforcedelay,omitempty"`
- Ignorefeelimits *bool `protobuf:"varint,7,opt,name=ignorefeelimits,proto3,oneof" json:"ignorefeelimits,omitempty"`
+ Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
+ Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}
-func (x *SetchannelRequest) Reset() {
- *x = SetchannelRequest{}
+func (x *DecodeExtra) Reset() {
+ *x = DecodeExtra{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[174]
+ mi := &file_node_proto_msgTypes[165]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SetchannelRequest) String() string {
+func (x *DecodeExtra) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SetchannelRequest) ProtoMessage() {}
+func (*DecodeExtra) ProtoMessage() {}
-func (x *SetchannelRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[174]
+func (x *DecodeExtra) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[165]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17061,85 +16761,51 @@ func (x *SetchannelRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SetchannelRequest.ProtoReflect.Descriptor instead.
-func (*SetchannelRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{174}
+// Deprecated: Use DecodeExtra.ProtoReflect.Descriptor instead.
+func (*DecodeExtra) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{165}
}
-func (x *SetchannelRequest) GetId() string {
+func (x *DecodeExtra) GetTag() string {
if x != nil {
- return x.Id
+ return x.Tag
}
return ""
}
-func (x *SetchannelRequest) GetFeebase() *Amount {
- if x != nil {
- return x.Feebase
- }
- return nil
-}
-
-func (x *SetchannelRequest) GetFeeppm() uint32 {
- if x != nil && x.Feeppm != nil {
- return *x.Feeppm
- }
- return 0
-}
-
-func (x *SetchannelRequest) GetHtlcmin() *Amount {
- if x != nil {
- return x.Htlcmin
- }
- return nil
-}
-
-func (x *SetchannelRequest) GetHtlcmax() *Amount {
+func (x *DecodeExtra) GetData() string {
if x != nil {
- return x.Htlcmax
- }
- return nil
-}
-
-func (x *SetchannelRequest) GetEnforcedelay() uint32 {
- if x != nil && x.Enforcedelay != nil {
- return *x.Enforcedelay
- }
- return 0
-}
-
-func (x *SetchannelRequest) GetIgnorefeelimits() bool {
- if x != nil && x.Ignorefeelimits != nil {
- return *x.Ignorefeelimits
+ return x.Data
}
- return false
+ return ""
}
-type SetchannelResponse struct {
+type DecodeRestrictions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Channels []*SetchannelChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
+ Alternatives []string `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
+ Summary string `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"`
}
-func (x *SetchannelResponse) Reset() {
- *x = SetchannelResponse{}
+func (x *DecodeRestrictions) Reset() {
+ *x = DecodeRestrictions{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[175]
+ mi := &file_node_proto_msgTypes[166]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SetchannelResponse) String() string {
+func (x *DecodeRestrictions) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SetchannelResponse) ProtoMessage() {}
+func (*DecodeRestrictions) ProtoMessage() {}
-func (x *SetchannelResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[175]
+func (x *DecodeRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[166]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17150,52 +16816,53 @@ func (x *SetchannelResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SetchannelResponse.ProtoReflect.Descriptor instead.
-func (*SetchannelResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{175}
+// Deprecated: Use DecodeRestrictions.ProtoReflect.Descriptor instead.
+func (*DecodeRestrictions) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{166}
}
-func (x *SetchannelResponse) GetChannels() []*SetchannelChannels {
+func (x *DecodeRestrictions) GetAlternatives() []string {
if x != nil {
- return x.Channels
+ return x.Alternatives
}
return nil
}
-type SetchannelChannels struct {
+func (x *DecodeRestrictions) GetSummary() string {
+ if x != nil {
+ return x.Summary
+ }
+ return ""
+}
+
+type DelpayRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
- ChannelId []byte `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
- ShortChannelId *string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
- FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
- FeeProportionalMillionths uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
- IgnoreFeeLimits *bool `protobuf:"varint,10,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
- MinimumHtlcOutMsat *Amount `protobuf:"bytes,6,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3" json:"minimum_htlc_out_msat,omitempty"`
- WarningHtlcminTooLow *string `protobuf:"bytes,7,opt,name=warning_htlcmin_too_low,json=warningHtlcminTooLow,proto3,oneof" json:"warning_htlcmin_too_low,omitempty"`
- MaximumHtlcOutMsat *Amount `protobuf:"bytes,8,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3" json:"maximum_htlc_out_msat,omitempty"`
- WarningHtlcmaxTooHigh *string `protobuf:"bytes,9,opt,name=warning_htlcmax_too_high,json=warningHtlcmaxTooHigh,proto3,oneof" json:"warning_htlcmax_too_high,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status DelpayRequest_DelpayStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.DelpayRequest_DelpayStatus" json:"status,omitempty"`
+ Partid *uint64 `protobuf:"varint,3,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Groupid *uint64 `protobuf:"varint,4,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
}
-func (x *SetchannelChannels) Reset() {
- *x = SetchannelChannels{}
+func (x *DelpayRequest) Reset() {
+ *x = DelpayRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[176]
+ mi := &file_node_proto_msgTypes[167]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SetchannelChannels) String() string {
+func (x *DelpayRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SetchannelChannels) ProtoMessage() {}
+func (*DelpayRequest) ProtoMessage() {}
-func (x *SetchannelChannels) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[176]
+func (x *DelpayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[167]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17206,106 +16873,64 @@ func (x *SetchannelChannels) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SetchannelChannels.ProtoReflect.Descriptor instead.
-func (*SetchannelChannels) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{176}
+// Deprecated: Use DelpayRequest.ProtoReflect.Descriptor instead.
+func (*DelpayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{167}
}
-func (x *SetchannelChannels) GetPeerId() []byte {
+func (x *DelpayRequest) GetPaymentHash() []byte {
if x != nil {
- return x.PeerId
+ return x.PaymentHash
}
return nil
}
-func (x *SetchannelChannels) GetChannelId() []byte {
+func (x *DelpayRequest) GetStatus() DelpayRequest_DelpayStatus {
if x != nil {
- return x.ChannelId
- }
- return nil
-}
-
-func (x *SetchannelChannels) GetShortChannelId() string {
- if x != nil && x.ShortChannelId != nil {
- return *x.ShortChannelId
- }
- return ""
-}
-
-func (x *SetchannelChannels) GetFeeBaseMsat() *Amount {
- if x != nil {
- return x.FeeBaseMsat
+ return x.Status
}
- return nil
+ return DelpayRequest_COMPLETE
}
-func (x *SetchannelChannels) GetFeeProportionalMillionths() uint32 {
- if x != nil {
- return x.FeeProportionalMillionths
+func (x *DelpayRequest) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
}
return 0
}
-func (x *SetchannelChannels) GetIgnoreFeeLimits() bool {
- if x != nil && x.IgnoreFeeLimits != nil {
- return *x.IgnoreFeeLimits
- }
- return false
-}
-
-func (x *SetchannelChannels) GetMinimumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MinimumHtlcOutMsat
- }
- return nil
-}
-
-func (x *SetchannelChannels) GetWarningHtlcminTooLow() string {
- if x != nil && x.WarningHtlcminTooLow != nil {
- return *x.WarningHtlcminTooLow
- }
- return ""
-}
-
-func (x *SetchannelChannels) GetMaximumHtlcOutMsat() *Amount {
- if x != nil {
- return x.MaximumHtlcOutMsat
- }
- return nil
-}
-
-func (x *SetchannelChannels) GetWarningHtlcmaxTooHigh() string {
- if x != nil && x.WarningHtlcmaxTooHigh != nil {
- return *x.WarningHtlcmaxTooHigh
+func (x *DelpayRequest) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
}
- return ""
+ return 0
}
-type SigninvoiceRequest struct {
+type DelpayResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
+ Payments []*DelpayPayments `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
}
-func (x *SigninvoiceRequest) Reset() {
- *x = SigninvoiceRequest{}
+func (x *DelpayResponse) Reset() {
+ *x = DelpayResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[177]
+ mi := &file_node_proto_msgTypes[168]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SigninvoiceRequest) String() string {
+func (x *DelpayResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SigninvoiceRequest) ProtoMessage() {}
+func (*DelpayResponse) ProtoMessage() {}
-func (x *SigninvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[177]
+func (x *DelpayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[168]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17316,43 +16941,59 @@ func (x *SigninvoiceRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SigninvoiceRequest.ProtoReflect.Descriptor instead.
-func (*SigninvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{177}
+// Deprecated: Use DelpayResponse.ProtoReflect.Descriptor instead.
+func (*DelpayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{168}
}
-func (x *SigninvoiceRequest) GetInvstring() string {
+func (x *DelpayResponse) GetPayments() []*DelpayPayments {
if x != nil {
- return x.Invstring
+ return x.Payments
}
- return ""
+ return nil
}
-type SigninvoiceResponse struct {
+type DelpayPayments struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
-}
-
-func (x *SigninvoiceResponse) Reset() {
- *x = SigninvoiceResponse{}
+ CreatedIndex *uint64 `protobuf:"varint,1,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status DelpayPayments_DelpayPaymentsStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.DelpayPayments_DelpayPaymentsStatus" json:"status,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,5,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Partid *uint64 `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Destination []byte `protobuf:"bytes,7,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,8,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,9,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,10,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ CompletedAt *uint64 `protobuf:"varint,11,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
+ Groupid *uint64 `protobuf:"varint,12,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ Label *string `protobuf:"bytes,14,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,15,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,16,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ Erroronion []byte `protobuf:"bytes,17,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
+}
+
+func (x *DelpayPayments) Reset() {
+ *x = DelpayPayments{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[178]
+ mi := &file_node_proto_msgTypes[169]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SigninvoiceResponse) String() string {
+func (x *DelpayPayments) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SigninvoiceResponse) ProtoMessage() {}
+func (*DelpayPayments) ProtoMessage() {}
-func (x *SigninvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[178]
+func (x *DelpayPayments) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[169]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17363,92 +17004,157 @@ func (x *SigninvoiceResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SigninvoiceResponse.ProtoReflect.Descriptor instead.
-func (*SigninvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{178}
+// Deprecated: Use DelpayPayments.ProtoReflect.Descriptor instead.
+func (*DelpayPayments) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{169}
}
-func (x *SigninvoiceResponse) GetBolt11() string {
+func (x *DelpayPayments) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *DelpayPayments) GetId() uint64 {
if x != nil {
- return x.Bolt11
+ return x.Id
}
- return ""
+ return 0
}
-type SignmessageRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *DelpayPayments) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
- Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
+func (x *DelpayPayments) GetStatus() DelpayPayments_DelpayPaymentsStatus {
+ if x != nil {
+ return x.Status
+ }
+ return DelpayPayments_PENDING
}
-func (x *SignmessageRequest) Reset() {
- *x = SignmessageRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[179]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *DelpayPayments) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
}
+ return nil
}
-func (x *SignmessageRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *DelpayPayments) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
+ }
+ return 0
}
-func (*SignmessageRequest) ProtoMessage() {}
+func (x *DelpayPayments) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
-func (x *SignmessageRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[179]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *DelpayPayments) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
}
- return mi.MessageOf(x)
+ return nil
}
-// Deprecated: Use SignmessageRequest.ProtoReflect.Descriptor instead.
-func (*SignmessageRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{179}
+func (x *DelpayPayments) GetCreatedAt() uint64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
}
-func (x *SignmessageRequest) GetMessage() string {
+func (x *DelpayPayments) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *DelpayPayments) GetCompletedAt() uint64 {
+ if x != nil && x.CompletedAt != nil {
+ return *x.CompletedAt
+ }
+ return 0
+}
+
+func (x *DelpayPayments) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
+ }
+ return 0
+}
+
+func (x *DelpayPayments) GetPaymentPreimage() []byte {
if x != nil {
- return x.Message
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+func (x *DelpayPayments) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
}
return ""
}
-type SignmessageResponse struct {
+func (x *DelpayPayments) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *DelpayPayments) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *DelpayPayments) GetErroronion() []byte {
+ if x != nil {
+ return x.Erroronion
+ }
+ return nil
+}
+
+type DelforwardRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
- Recid []byte `protobuf:"bytes,2,opt,name=recid,proto3" json:"recid,omitempty"`
- Zbase string `protobuf:"bytes,3,opt,name=zbase,proto3" json:"zbase,omitempty"`
+ InChannel string `protobuf:"bytes,1,opt,name=in_channel,json=inChannel,proto3" json:"in_channel,omitempty"`
+ InHtlcId uint64 `protobuf:"varint,2,opt,name=in_htlc_id,json=inHtlcId,proto3" json:"in_htlc_id,omitempty"`
+ Status DelforwardRequest_DelforwardStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.DelforwardRequest_DelforwardStatus" json:"status,omitempty"`
}
-func (x *SignmessageResponse) Reset() {
- *x = SignmessageResponse{}
+func (x *DelforwardRequest) Reset() {
+ *x = DelforwardRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[180]
+ mi := &file_node_proto_msgTypes[170]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *SignmessageResponse) String() string {
+func (x *DelforwardRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*SignmessageResponse) ProtoMessage() {}
+func (*DelforwardRequest) ProtoMessage() {}
-func (x *SignmessageResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[180]
+func (x *DelforwardRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[170]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17459,58 +17165,55 @@ func (x *SignmessageResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use SignmessageResponse.ProtoReflect.Descriptor instead.
-func (*SignmessageResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{180}
+// Deprecated: Use DelforwardRequest.ProtoReflect.Descriptor instead.
+func (*DelforwardRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{170}
}
-func (x *SignmessageResponse) GetSignature() []byte {
+func (x *DelforwardRequest) GetInChannel() string {
if x != nil {
- return x.Signature
+ return x.InChannel
}
- return nil
+ return ""
}
-func (x *SignmessageResponse) GetRecid() []byte {
+func (x *DelforwardRequest) GetInHtlcId() uint64 {
if x != nil {
- return x.Recid
+ return x.InHtlcId
}
- return nil
+ return 0
}
-func (x *SignmessageResponse) GetZbase() string {
+func (x *DelforwardRequest) GetStatus() DelforwardRequest_DelforwardStatus {
if x != nil {
- return x.Zbase
+ return x.Status
}
- return ""
+ return DelforwardRequest_SETTLED
}
-type WaitblockheightRequest struct {
+type DelforwardResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- Blockheight uint32 `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
- Timeout *uint32 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
}
-func (x *WaitblockheightRequest) Reset() {
- *x = WaitblockheightRequest{}
+func (x *DelforwardResponse) Reset() {
+ *x = DelforwardResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[181]
+ mi := &file_node_proto_msgTypes[171]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitblockheightRequest) String() string {
+func (x *DelforwardResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitblockheightRequest) ProtoMessage() {}
+func (*DelforwardResponse) ProtoMessage() {}
-func (x *WaitblockheightRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[181]
+func (x *DelforwardResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[171]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17521,50 +17224,36 @@ func (x *WaitblockheightRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitblockheightRequest.ProtoReflect.Descriptor instead.
-func (*WaitblockheightRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{181}
+// Deprecated: Use DelforwardResponse.ProtoReflect.Descriptor instead.
+func (*DelforwardResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{171}
}
-func (x *WaitblockheightRequest) GetBlockheight() uint32 {
- if x != nil {
- return x.Blockheight
- }
- return 0
-}
-
-func (x *WaitblockheightRequest) GetTimeout() uint32 {
- if x != nil && x.Timeout != nil {
- return *x.Timeout
- }
- return 0
-}
-
-type WaitblockheightResponse struct {
+type DisableofferRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Blockheight uint32 `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
+ OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
}
-func (x *WaitblockheightResponse) Reset() {
- *x = WaitblockheightResponse{}
+func (x *DisableofferRequest) Reset() {
+ *x = DisableofferRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[182]
+ mi := &file_node_proto_msgTypes[172]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitblockheightResponse) String() string {
+func (x *DisableofferRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitblockheightResponse) ProtoMessage() {}
+func (*DisableofferRequest) ProtoMessage() {}
-func (x *WaitblockheightResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[182]
+func (x *DisableofferRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[172]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17575,45 +17264,48 @@ func (x *WaitblockheightResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitblockheightResponse.ProtoReflect.Descriptor instead.
-func (*WaitblockheightResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{182}
+// Deprecated: Use DisableofferRequest.ProtoReflect.Descriptor instead.
+func (*DisableofferRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{172}
}
-func (x *WaitblockheightResponse) GetBlockheight() uint32 {
+func (x *DisableofferRequest) GetOfferId() []byte {
if x != nil {
- return x.Blockheight
+ return x.OfferId
}
- return 0
+ return nil
}
-type WaitRequest struct {
+type DisableofferResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Subsystem WaitRequest_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitRequest_WaitSubsystem" json:"subsystem,omitempty"`
- Indexname WaitRequest_WaitIndexname `protobuf:"varint,2,opt,name=indexname,proto3,enum=cln.WaitRequest_WaitIndexname" json:"indexname,omitempty"`
- Nextvalue uint64 `protobuf:"varint,3,opt,name=nextvalue,proto3" json:"nextvalue,omitempty"`
+ OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}
-func (x *WaitRequest) Reset() {
- *x = WaitRequest{}
+func (x *DisableofferResponse) Reset() {
+ *x = DisableofferResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[183]
+ mi := &file_node_proto_msgTypes[173]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitRequest) String() string {
+func (x *DisableofferResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitRequest) ProtoMessage() {}
+func (*DisableofferResponse) ProtoMessage() {}
-func (x *WaitRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[183]
+func (x *DisableofferResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[173]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17624,60 +17316,79 @@ func (x *WaitRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitRequest.ProtoReflect.Descriptor instead.
-func (*WaitRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{183}
+// Deprecated: Use DisableofferResponse.ProtoReflect.Descriptor instead.
+func (*DisableofferResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{173}
}
-func (x *WaitRequest) GetSubsystem() WaitRequest_WaitSubsystem {
+func (x *DisableofferResponse) GetOfferId() []byte {
if x != nil {
- return x.Subsystem
+ return x.OfferId
}
- return WaitRequest_INVOICES
+ return nil
}
-func (x *WaitRequest) GetIndexname() WaitRequest_WaitIndexname {
+func (x *DisableofferResponse) GetActive() bool {
if x != nil {
- return x.Indexname
+ return x.Active
}
- return WaitRequest_CREATED
+ return false
}
-func (x *WaitRequest) GetNextvalue() uint64 {
+func (x *DisableofferResponse) GetSingleUse() bool {
if x != nil {
- return x.Nextvalue
+ return x.SingleUse
}
- return 0
+ return false
}
-type WaitResponse struct {
+func (x *DisableofferResponse) GetBolt12() string {
+ if x != nil {
+ return x.Bolt12
+ }
+ return ""
+}
+
+func (x *DisableofferResponse) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *DisableofferResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type DisconnectRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Subsystem WaitResponse_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitResponse_WaitSubsystem" json:"subsystem,omitempty"`
- Created *uint64 `protobuf:"varint,2,opt,name=created,proto3,oneof" json:"created,omitempty"`
- Updated *uint64 `protobuf:"varint,3,opt,name=updated,proto3,oneof" json:"updated,omitempty"`
- Deleted *uint64 `protobuf:"varint,4,opt,name=deleted,proto3,oneof" json:"deleted,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Force *bool `protobuf:"varint,2,opt,name=force,proto3,oneof" json:"force,omitempty"`
}
-func (x *WaitResponse) Reset() {
- *x = WaitResponse{}
+func (x *DisconnectRequest) Reset() {
+ *x = DisconnectRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[184]
+ mi := &file_node_proto_msgTypes[174]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *WaitResponse) String() string {
+func (x *DisconnectRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WaitResponse) ProtoMessage() {}
+func (*DisconnectRequest) ProtoMessage() {}
-func (x *WaitResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[184]
+func (x *DisconnectRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[174]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17688,62 +17399,48 @@ func (x *WaitResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WaitResponse.ProtoReflect.Descriptor instead.
-func (*WaitResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{184}
+// Deprecated: Use DisconnectRequest.ProtoReflect.Descriptor instead.
+func (*DisconnectRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{174}
}
-func (x *WaitResponse) GetSubsystem() WaitResponse_WaitSubsystem {
+func (x *DisconnectRequest) GetId() []byte {
if x != nil {
- return x.Subsystem
- }
- return WaitResponse_INVOICES
-}
-
-func (x *WaitResponse) GetCreated() uint64 {
- if x != nil && x.Created != nil {
- return *x.Created
- }
- return 0
-}
-
-func (x *WaitResponse) GetUpdated() uint64 {
- if x != nil && x.Updated != nil {
- return *x.Updated
+ return x.Id
}
- return 0
+ return nil
}
-func (x *WaitResponse) GetDeleted() uint64 {
- if x != nil && x.Deleted != nil {
- return *x.Deleted
+func (x *DisconnectRequest) GetForce() bool {
+ if x != nil && x.Force != nil {
+ return *x.Force
}
- return 0
+ return false
}
-type StopRequest struct {
+type DisconnectResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
-func (x *StopRequest) Reset() {
- *x = StopRequest{}
+func (x *DisconnectResponse) Reset() {
+ *x = DisconnectResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[185]
+ mi := &file_node_proto_msgTypes[175]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *StopRequest) String() string {
+func (x *DisconnectResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*StopRequest) ProtoMessage() {}
+func (*DisconnectResponse) ProtoMessage() {}
-func (x *StopRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[185]
+func (x *DisconnectResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[175]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17754,34 +17451,36 @@ func (x *StopRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use StopRequest.ProtoReflect.Descriptor instead.
-func (*StopRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{185}
+// Deprecated: Use DisconnectResponse.ProtoReflect.Descriptor instead.
+func (*DisconnectResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{175}
}
-type StopResponse struct {
+type FeeratesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Style FeeratesRequest_FeeratesStyle `protobuf:"varint,1,opt,name=style,proto3,enum=cln.FeeratesRequest_FeeratesStyle" json:"style,omitempty"`
}
-func (x *StopResponse) Reset() {
- *x = StopResponse{}
+func (x *FeeratesRequest) Reset() {
+ *x = FeeratesRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[186]
+ mi := &file_node_proto_msgTypes[176]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *StopResponse) String() string {
+func (x *FeeratesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*StopResponse) ProtoMessage() {}
+func (*FeeratesRequest) ProtoMessage() {}
-func (x *StopResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[186]
+func (x *FeeratesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[176]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17792,38 +17491,46 @@ func (x *StopResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use StopResponse.ProtoReflect.Descriptor instead.
-func (*StopResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{186}
+// Deprecated: Use FeeratesRequest.ProtoReflect.Descriptor instead.
+func (*FeeratesRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{176}
}
-type PreapprovekeysendRequest struct {
+func (x *FeeratesRequest) GetStyle() FeeratesRequest_FeeratesStyle {
+ if x != nil {
+ return x.Style
+ }
+ return FeeratesRequest_PERKB
+}
+
+type FeeratesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Destination []byte `protobuf:"bytes,1,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
- PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
- AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ WarningMissingFeerates *string `protobuf:"bytes,1,opt,name=warning_missing_feerates,json=warningMissingFeerates,proto3,oneof" json:"warning_missing_feerates,omitempty"`
+ Perkb *FeeratesPerkb `protobuf:"bytes,2,opt,name=perkb,proto3,oneof" json:"perkb,omitempty"`
+ Perkw *FeeratesPerkw `protobuf:"bytes,3,opt,name=perkw,proto3,oneof" json:"perkw,omitempty"`
+ OnchainFeeEstimates *FeeratesOnchainFeeEstimates `protobuf:"bytes,4,opt,name=onchain_fee_estimates,json=onchainFeeEstimates,proto3,oneof" json:"onchain_fee_estimates,omitempty"`
}
-func (x *PreapprovekeysendRequest) Reset() {
- *x = PreapprovekeysendRequest{}
+func (x *FeeratesResponse) Reset() {
+ *x = FeeratesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[187]
+ mi := &file_node_proto_msgTypes[177]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PreapprovekeysendRequest) String() string {
+func (x *FeeratesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PreapprovekeysendRequest) ProtoMessage() {}
+func (*FeeratesResponse) ProtoMessage() {}
-func (x *PreapprovekeysendRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[187]
+func (x *FeeratesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[177]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17834,55 +17541,74 @@ func (x *PreapprovekeysendRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PreapprovekeysendRequest.ProtoReflect.Descriptor instead.
-func (*PreapprovekeysendRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{187}
+// Deprecated: Use FeeratesResponse.ProtoReflect.Descriptor instead.
+func (*FeeratesResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{177}
}
-func (x *PreapprovekeysendRequest) GetDestination() []byte {
+func (x *FeeratesResponse) GetWarningMissingFeerates() string {
+ if x != nil && x.WarningMissingFeerates != nil {
+ return *x.WarningMissingFeerates
+ }
+ return ""
+}
+
+func (x *FeeratesResponse) GetPerkb() *FeeratesPerkb {
if x != nil {
- return x.Destination
+ return x.Perkb
}
return nil
}
-func (x *PreapprovekeysendRequest) GetPaymentHash() []byte {
+func (x *FeeratesResponse) GetPerkw() *FeeratesPerkw {
if x != nil {
- return x.PaymentHash
+ return x.Perkw
}
return nil
}
-func (x *PreapprovekeysendRequest) GetAmountMsat() *Amount {
+func (x *FeeratesResponse) GetOnchainFeeEstimates() *FeeratesOnchainFeeEstimates {
if x != nil {
- return x.AmountMsat
+ return x.OnchainFeeEstimates
}
return nil
}
-type PreapprovekeysendResponse struct {
+type FeeratesPerkb struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ MinAcceptable uint32 `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
+ MaxAcceptable uint32 `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
+ Opening *uint32 `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
+ MutualClose *uint32 `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
+ UnilateralClose *uint32 `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
+ DelayedToUs *uint32 `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
+ HtlcResolution *uint32 `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
+ Penalty *uint32 `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
+ Estimates []*FeeratesPerkbEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
+ Floor *uint32 `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
+ UnilateralAnchorClose *uint32 `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
}
-func (x *PreapprovekeysendResponse) Reset() {
- *x = PreapprovekeysendResponse{}
+func (x *FeeratesPerkb) Reset() {
+ *x = FeeratesPerkb{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[188]
+ mi := &file_node_proto_msgTypes[178]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *PreapprovekeysendResponse) String() string {
+func (x *FeeratesPerkb) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PreapprovekeysendResponse) ProtoMessage() {}
+func (*FeeratesPerkb) ProtoMessage() {}
-func (x *PreapprovekeysendResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[188]
+func (x *FeeratesPerkb) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[178]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -17893,119 +17619,115 @@ func (x *PreapprovekeysendResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PreapprovekeysendResponse.ProtoReflect.Descriptor instead.
-func (*PreapprovekeysendResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{188}
+// Deprecated: Use FeeratesPerkb.ProtoReflect.Descriptor instead.
+func (*FeeratesPerkb) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{178}
}
-type PreapproveinvoiceRequest struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Bolt11 *string `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+func (x *FeeratesPerkb) GetMinAcceptable() uint32 {
+ if x != nil {
+ return x.MinAcceptable
+ }
+ return 0
}
-func (x *PreapproveinvoiceRequest) Reset() {
- *x = PreapproveinvoiceRequest{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[189]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *FeeratesPerkb) GetMaxAcceptable() uint32 {
+ if x != nil {
+ return x.MaxAcceptable
}
+ return 0
}
-func (x *PreapproveinvoiceRequest) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *FeeratesPerkb) GetOpening() uint32 {
+ if x != nil && x.Opening != nil {
+ return *x.Opening
+ }
+ return 0
}
-func (*PreapproveinvoiceRequest) ProtoMessage() {}
-
-func (x *PreapproveinvoiceRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[189]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *FeeratesPerkb) GetMutualClose() uint32 {
+ if x != nil && x.MutualClose != nil {
+ return *x.MutualClose
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use PreapproveinvoiceRequest.ProtoReflect.Descriptor instead.
-func (*PreapproveinvoiceRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{189}
+func (x *FeeratesPerkb) GetUnilateralClose() uint32 {
+ if x != nil && x.UnilateralClose != nil {
+ return *x.UnilateralClose
+ }
+ return 0
}
-func (x *PreapproveinvoiceRequest) GetBolt11() string {
- if x != nil && x.Bolt11 != nil {
- return *x.Bolt11
+func (x *FeeratesPerkb) GetDelayedToUs() uint32 {
+ if x != nil && x.DelayedToUs != nil {
+ return *x.DelayedToUs
}
- return ""
+ return 0
}
-type PreapproveinvoiceResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *FeeratesPerkb) GetHtlcResolution() uint32 {
+ if x != nil && x.HtlcResolution != nil {
+ return *x.HtlcResolution
+ }
+ return 0
}
-func (x *PreapproveinvoiceResponse) Reset() {
- *x = PreapproveinvoiceResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[190]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *FeeratesPerkb) GetPenalty() uint32 {
+ if x != nil && x.Penalty != nil {
+ return *x.Penalty
}
+ return 0
}
-func (x *PreapproveinvoiceResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
+func (x *FeeratesPerkb) GetEstimates() []*FeeratesPerkbEstimates {
+ if x != nil {
+ return x.Estimates
+ }
+ return nil
}
-func (*PreapproveinvoiceResponse) ProtoMessage() {}
-
-func (x *PreapproveinvoiceResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[190]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *FeeratesPerkb) GetFloor() uint32 {
+ if x != nil && x.Floor != nil {
+ return *x.Floor
}
- return mi.MessageOf(x)
+ return 0
}
-// Deprecated: Use PreapproveinvoiceResponse.ProtoReflect.Descriptor instead.
-func (*PreapproveinvoiceResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{190}
+func (x *FeeratesPerkb) GetUnilateralAnchorClose() uint32 {
+ if x != nil && x.UnilateralAnchorClose != nil {
+ return *x.UnilateralAnchorClose
+ }
+ return 0
}
-type StaticbackupRequest struct {
+type FeeratesPerkbEstimates struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
+
+ Blockcount uint32 `protobuf:"varint,1,opt,name=blockcount,proto3" json:"blockcount,omitempty"`
+ Feerate uint32 `protobuf:"varint,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
+ SmoothedFeerate uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3" json:"smoothed_feerate,omitempty"`
}
-func (x *StaticbackupRequest) Reset() {
- *x = StaticbackupRequest{}
+func (x *FeeratesPerkbEstimates) Reset() {
+ *x = FeeratesPerkbEstimates{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[191]
+ mi := &file_node_proto_msgTypes[179]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *StaticbackupRequest) String() string {
+func (x *FeeratesPerkbEstimates) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*StaticbackupRequest) ProtoMessage() {}
+func (*FeeratesPerkbEstimates) ProtoMessage() {}
-func (x *StaticbackupRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[191]
+func (x *FeeratesPerkbEstimates) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[179]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -18016,85 +17738,67 @@ func (x *StaticbackupRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use StaticbackupRequest.ProtoReflect.Descriptor instead.
-func (*StaticbackupRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{191}
-}
-
-type StaticbackupResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Scb [][]byte `protobuf:"bytes,1,rep,name=scb,proto3" json:"scb,omitempty"`
+// Deprecated: Use FeeratesPerkbEstimates.ProtoReflect.Descriptor instead.
+func (*FeeratesPerkbEstimates) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{179}
}
-func (x *StaticbackupResponse) Reset() {
- *x = StaticbackupResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[192]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *FeeratesPerkbEstimates) GetBlockcount() uint32 {
+ if x != nil {
+ return x.Blockcount
}
+ return 0
}
-func (x *StaticbackupResponse) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StaticbackupResponse) ProtoMessage() {}
-
-func (x *StaticbackupResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[192]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
+func (x *FeeratesPerkbEstimates) GetFeerate() uint32 {
+ if x != nil {
+ return x.Feerate
}
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use StaticbackupResponse.ProtoReflect.Descriptor instead.
-func (*StaticbackupResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{192}
+ return 0
}
-func (x *StaticbackupResponse) GetScb() [][]byte {
+func (x *FeeratesPerkbEstimates) GetSmoothedFeerate() uint32 {
if x != nil {
- return x.Scb
+ return x.SmoothedFeerate
}
- return nil
+ return 0
}
-type BkprlistincomeRequest struct {
+type FeeratesPerkw struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ConsolidateFees *bool `protobuf:"varint,1,opt,name=consolidate_fees,json=consolidateFees,proto3,oneof" json:"consolidate_fees,omitempty"`
- StartTime *uint32 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
- EndTime *uint32 `protobuf:"varint,3,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
+ MinAcceptable uint32 `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
+ MaxAcceptable uint32 `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
+ Opening *uint32 `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
+ MutualClose *uint32 `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
+ UnilateralClose *uint32 `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
+ DelayedToUs *uint32 `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
+ HtlcResolution *uint32 `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
+ Penalty *uint32 `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
+ Estimates []*FeeratesPerkwEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
+ Floor *uint32 `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
+ UnilateralAnchorClose *uint32 `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
}
-func (x *BkprlistincomeRequest) Reset() {
- *x = BkprlistincomeRequest{}
+func (x *FeeratesPerkw) Reset() {
+ *x = FeeratesPerkw{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[193]
+ mi := &file_node_proto_msgTypes[180]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *BkprlistincomeRequest) String() string {
+func (x *FeeratesPerkw) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*BkprlistincomeRequest) ProtoMessage() {}
+func (*FeeratesPerkw) ProtoMessage() {}
-func (x *BkprlistincomeRequest) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[193]
+func (x *FeeratesPerkw) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[180]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -18105,57 +17809,115 @@ func (x *BkprlistincomeRequest) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use BkprlistincomeRequest.ProtoReflect.Descriptor instead.
-func (*BkprlistincomeRequest) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{193}
+// Deprecated: Use FeeratesPerkw.ProtoReflect.Descriptor instead.
+func (*FeeratesPerkw) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{180}
}
-func (x *BkprlistincomeRequest) GetConsolidateFees() bool {
- if x != nil && x.ConsolidateFees != nil {
- return *x.ConsolidateFees
+func (x *FeeratesPerkw) GetMinAcceptable() uint32 {
+ if x != nil {
+ return x.MinAcceptable
}
- return false
+ return 0
}
-func (x *BkprlistincomeRequest) GetStartTime() uint32 {
- if x != nil && x.StartTime != nil {
- return *x.StartTime
+func (x *FeeratesPerkw) GetMaxAcceptable() uint32 {
+ if x != nil {
+ return x.MaxAcceptable
}
return 0
}
-func (x *BkprlistincomeRequest) GetEndTime() uint32 {
- if x != nil && x.EndTime != nil {
- return *x.EndTime
+func (x *FeeratesPerkw) GetOpening() uint32 {
+ if x != nil && x.Opening != nil {
+ return *x.Opening
}
return 0
}
-type BkprlistincomeResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- IncomeEvents []*BkprlistincomeIncomeEvents `protobuf:"bytes,1,rep,name=income_events,json=incomeEvents,proto3" json:"income_events,omitempty"`
-}
-
-func (x *BkprlistincomeResponse) Reset() {
- *x = BkprlistincomeResponse{}
+func (x *FeeratesPerkw) GetMutualClose() uint32 {
+ if x != nil && x.MutualClose != nil {
+ return *x.MutualClose
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetUnilateralClose() uint32 {
+ if x != nil && x.UnilateralClose != nil {
+ return *x.UnilateralClose
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetDelayedToUs() uint32 {
+ if x != nil && x.DelayedToUs != nil {
+ return *x.DelayedToUs
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetHtlcResolution() uint32 {
+ if x != nil && x.HtlcResolution != nil {
+ return *x.HtlcResolution
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetPenalty() uint32 {
+ if x != nil && x.Penalty != nil {
+ return *x.Penalty
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetEstimates() []*FeeratesPerkwEstimates {
+ if x != nil {
+ return x.Estimates
+ }
+ return nil
+}
+
+func (x *FeeratesPerkw) GetFloor() uint32 {
+ if x != nil && x.Floor != nil {
+ return *x.Floor
+ }
+ return 0
+}
+
+func (x *FeeratesPerkw) GetUnilateralAnchorClose() uint32 {
+ if x != nil && x.UnilateralAnchorClose != nil {
+ return *x.UnilateralAnchorClose
+ }
+ return 0
+}
+
+type FeeratesPerkwEstimates struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Blockcount uint32 `protobuf:"varint,1,opt,name=blockcount,proto3" json:"blockcount,omitempty"`
+ Feerate uint32 `protobuf:"varint,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
+ SmoothedFeerate uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3" json:"smoothed_feerate,omitempty"`
+}
+
+func (x *FeeratesPerkwEstimates) Reset() {
+ *x = FeeratesPerkwEstimates{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[194]
+ mi := &file_node_proto_msgTypes[181]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *BkprlistincomeResponse) String() string {
+func (x *FeeratesPerkwEstimates) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*BkprlistincomeResponse) ProtoMessage() {}
+func (*FeeratesPerkwEstimates) ProtoMessage() {}
-func (x *BkprlistincomeResponse) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[194]
+func (x *FeeratesPerkwEstimates) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[181]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -18166,52 +17928,62 @@ func (x *BkprlistincomeResponse) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use BkprlistincomeResponse.ProtoReflect.Descriptor instead.
-func (*BkprlistincomeResponse) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{194}
+// Deprecated: Use FeeratesPerkwEstimates.ProtoReflect.Descriptor instead.
+func (*FeeratesPerkwEstimates) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{181}
}
-func (x *BkprlistincomeResponse) GetIncomeEvents() []*BkprlistincomeIncomeEvents {
+func (x *FeeratesPerkwEstimates) GetBlockcount() uint32 {
if x != nil {
- return x.IncomeEvents
+ return x.Blockcount
}
- return nil
+ return 0
}
-type BkprlistincomeIncomeEvents struct {
+func (x *FeeratesPerkwEstimates) GetFeerate() uint32 {
+ if x != nil {
+ return x.Feerate
+ }
+ return 0
+}
+
+func (x *FeeratesPerkwEstimates) GetSmoothedFeerate() uint32 {
+ if x != nil {
+ return x.SmoothedFeerate
+ }
+ return 0
+}
+
+type FeeratesOnchainFeeEstimates struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
- Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
- CreditMsat *Amount `protobuf:"bytes,3,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
- DebitMsat *Amount `protobuf:"bytes,4,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
- Currency string `protobuf:"bytes,5,opt,name=currency,proto3" json:"currency,omitempty"`
- Timestamp uint32 `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
- Description *string `protobuf:"bytes,7,opt,name=description,proto3,oneof" json:"description,omitempty"`
- Outpoint *string `protobuf:"bytes,8,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
- Txid []byte `protobuf:"bytes,9,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
- PaymentId []byte `protobuf:"bytes,10,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
+ OpeningChannelSatoshis uint64 `protobuf:"varint,1,opt,name=opening_channel_satoshis,json=openingChannelSatoshis,proto3" json:"opening_channel_satoshis,omitempty"`
+ MutualCloseSatoshis uint64 `protobuf:"varint,2,opt,name=mutual_close_satoshis,json=mutualCloseSatoshis,proto3" json:"mutual_close_satoshis,omitempty"`
+ UnilateralCloseSatoshis uint64 `protobuf:"varint,3,opt,name=unilateral_close_satoshis,json=unilateralCloseSatoshis,proto3" json:"unilateral_close_satoshis,omitempty"`
+ HtlcTimeoutSatoshis uint64 `protobuf:"varint,4,opt,name=htlc_timeout_satoshis,json=htlcTimeoutSatoshis,proto3" json:"htlc_timeout_satoshis,omitempty"`
+ HtlcSuccessSatoshis uint64 `protobuf:"varint,5,opt,name=htlc_success_satoshis,json=htlcSuccessSatoshis,proto3" json:"htlc_success_satoshis,omitempty"`
+ UnilateralCloseNonanchorSatoshis *uint64 `protobuf:"varint,6,opt,name=unilateral_close_nonanchor_satoshis,json=unilateralCloseNonanchorSatoshis,proto3,oneof" json:"unilateral_close_nonanchor_satoshis,omitempty"`
}
-func (x *BkprlistincomeIncomeEvents) Reset() {
- *x = BkprlistincomeIncomeEvents{}
+func (x *FeeratesOnchainFeeEstimates) Reset() {
+ *x = FeeratesOnchainFeeEstimates{}
if protoimpl.UnsafeEnabled {
- mi := &file_node_proto_msgTypes[195]
+ mi := &file_node_proto_msgTypes[182]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
-func (x *BkprlistincomeIncomeEvents) String() string {
+func (x *FeeratesOnchainFeeEstimates) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*BkprlistincomeIncomeEvents) ProtoMessage() {}
+func (*FeeratesOnchainFeeEstimates) ProtoMessage() {}
-func (x *BkprlistincomeIncomeEvents) ProtoReflect() protoreflect.Message {
- mi := &file_node_proto_msgTypes[195]
+func (x *FeeratesOnchainFeeEstimates) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[182]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -18222,98 +17994,16445 @@ func (x *BkprlistincomeIncomeEvents) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use BkprlistincomeIncomeEvents.ProtoReflect.Descriptor instead.
-func (*BkprlistincomeIncomeEvents) Descriptor() ([]byte, []int) {
- return file_node_proto_rawDescGZIP(), []int{195}
+// Deprecated: Use FeeratesOnchainFeeEstimates.ProtoReflect.Descriptor instead.
+func (*FeeratesOnchainFeeEstimates) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{182}
}
-func (x *BkprlistincomeIncomeEvents) GetAccount() string {
+func (x *FeeratesOnchainFeeEstimates) GetOpeningChannelSatoshis() uint64 {
if x != nil {
- return x.Account
+ return x.OpeningChannelSatoshis
}
- return ""
+ return 0
}
-func (x *BkprlistincomeIncomeEvents) GetTag() string {
+func (x *FeeratesOnchainFeeEstimates) GetMutualCloseSatoshis() uint64 {
if x != nil {
- return x.Tag
+ return x.MutualCloseSatoshis
}
- return ""
+ return 0
}
-func (x *BkprlistincomeIncomeEvents) GetCreditMsat() *Amount {
+func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseSatoshis() uint64 {
if x != nil {
- return x.CreditMsat
+ return x.UnilateralCloseSatoshis
}
- return nil
+ return 0
}
-func (x *BkprlistincomeIncomeEvents) GetDebitMsat() *Amount {
+func (x *FeeratesOnchainFeeEstimates) GetHtlcTimeoutSatoshis() uint64 {
if x != nil {
- return x.DebitMsat
+ return x.HtlcTimeoutSatoshis
}
- return nil
+ return 0
}
-func (x *BkprlistincomeIncomeEvents) GetCurrency() string {
+func (x *FeeratesOnchainFeeEstimates) GetHtlcSuccessSatoshis() uint64 {
if x != nil {
- return x.Currency
+ return x.HtlcSuccessSatoshis
}
- return ""
+ return 0
}
-func (x *BkprlistincomeIncomeEvents) GetTimestamp() uint32 {
- if x != nil {
- return x.Timestamp
+func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseNonanchorSatoshis() uint64 {
+ if x != nil && x.UnilateralCloseNonanchorSatoshis != nil {
+ return *x.UnilateralCloseNonanchorSatoshis
}
return 0
}
-func (x *BkprlistincomeIncomeEvents) GetDescription() string {
- if x != nil && x.Description != nil {
- return *x.Description
+type FetchinvoiceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Offer string `protobuf:"bytes,1,opt,name=offer,proto3" json:"offer,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Quantity *uint64 `protobuf:"varint,3,opt,name=quantity,proto3,oneof" json:"quantity,omitempty"`
+ RecurrenceCounter *uint64 `protobuf:"varint,4,opt,name=recurrence_counter,json=recurrenceCounter,proto3,oneof" json:"recurrence_counter,omitempty"`
+ RecurrenceStart *float64 `protobuf:"fixed64,5,opt,name=recurrence_start,json=recurrenceStart,proto3,oneof" json:"recurrence_start,omitempty"`
+ RecurrenceLabel *string `protobuf:"bytes,6,opt,name=recurrence_label,json=recurrenceLabel,proto3,oneof" json:"recurrence_label,omitempty"`
+ Timeout *float64 `protobuf:"fixed64,7,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
+ PayerNote *string `protobuf:"bytes,8,opt,name=payer_note,json=payerNote,proto3,oneof" json:"payer_note,omitempty"`
+}
+
+func (x *FetchinvoiceRequest) Reset() {
+ *x = FetchinvoiceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[183]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
- return ""
}
-func (x *BkprlistincomeIncomeEvents) GetOutpoint() string {
- if x != nil && x.Outpoint != nil {
- return *x.Outpoint
+func (x *FetchinvoiceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FetchinvoiceRequest) ProtoMessage() {}
+
+func (x *FetchinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[183]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
}
- return ""
+ return mi.MessageOf(x)
}
-func (x *BkprlistincomeIncomeEvents) GetTxid() []byte {
+// Deprecated: Use FetchinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*FetchinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{183}
+}
+
+func (x *FetchinvoiceRequest) GetOffer() string {
if x != nil {
- return x.Txid
+ return x.Offer
}
- return nil
+ return ""
}
-func (x *BkprlistincomeIncomeEvents) GetPaymentId() []byte {
+func (x *FetchinvoiceRequest) GetAmountMsat() *Amount {
if x != nil {
- return x.PaymentId
+ return x.AmountMsat
}
return nil
}
-var File_node_proto protoreflect.FileDescriptor
+func (x *FetchinvoiceRequest) GetQuantity() uint64 {
+ if x != nil && x.Quantity != nil {
+ return *x.Quantity
+ }
+ return 0
+}
-var file_node_proto_rawDesc = []byte{
- 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x03, 0x63, 0x6c,
- 0x6e, 0x1a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x73, 0x2e, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa4, 0x06, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66,
- 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69,
- 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75,
- 0x6d, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e,
- 0x75, 0x6d, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6e, 0x75, 0x6d, 0x5f, 0x70,
- 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6e, 0x75, 0x6d, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, 0x6d,
+func (x *FetchinvoiceRequest) GetRecurrenceCounter() uint64 {
+ if x != nil && x.RecurrenceCounter != nil {
+ return *x.RecurrenceCounter
+ }
+ return 0
+}
+
+func (x *FetchinvoiceRequest) GetRecurrenceStart() float64 {
+ if x != nil && x.RecurrenceStart != nil {
+ return *x.RecurrenceStart
+ }
+ return 0
+}
+
+func (x *FetchinvoiceRequest) GetRecurrenceLabel() string {
+ if x != nil && x.RecurrenceLabel != nil {
+ return *x.RecurrenceLabel
+ }
+ return ""
+}
+
+func (x *FetchinvoiceRequest) GetTimeout() float64 {
+ if x != nil && x.Timeout != nil {
+ return *x.Timeout
+ }
+ return 0
+}
+
+func (x *FetchinvoiceRequest) GetPayerNote() string {
+ if x != nil && x.PayerNote != nil {
+ return *x.PayerNote
+ }
+ return ""
+}
+
+type FetchinvoiceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invoice string `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
+ Changes *FetchinvoiceChanges `protobuf:"bytes,2,opt,name=changes,proto3" json:"changes,omitempty"`
+ NextPeriod *FetchinvoiceNextPeriod `protobuf:"bytes,3,opt,name=next_period,json=nextPeriod,proto3,oneof" json:"next_period,omitempty"`
+}
+
+func (x *FetchinvoiceResponse) Reset() {
+ *x = FetchinvoiceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[184]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FetchinvoiceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FetchinvoiceResponse) ProtoMessage() {}
+
+func (x *FetchinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[184]
+ 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 FetchinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*FetchinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{184}
+}
+
+func (x *FetchinvoiceResponse) GetInvoice() string {
+ if x != nil {
+ return x.Invoice
+ }
+ return ""
+}
+
+func (x *FetchinvoiceResponse) GetChanges() *FetchinvoiceChanges {
+ if x != nil {
+ return x.Changes
+ }
+ return nil
+}
+
+func (x *FetchinvoiceResponse) GetNextPeriod() *FetchinvoiceNextPeriod {
+ if x != nil {
+ return x.NextPeriod
+ }
+ return nil
+}
+
+type FetchinvoiceChanges struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ DescriptionAppended *string `protobuf:"bytes,1,opt,name=description_appended,json=descriptionAppended,proto3,oneof" json:"description_appended,omitempty"`
+ Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ VendorRemoved *string `protobuf:"bytes,3,opt,name=vendor_removed,json=vendorRemoved,proto3,oneof" json:"vendor_removed,omitempty"`
+ Vendor *string `protobuf:"bytes,4,opt,name=vendor,proto3,oneof" json:"vendor,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+}
+
+func (x *FetchinvoiceChanges) Reset() {
+ *x = FetchinvoiceChanges{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[185]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FetchinvoiceChanges) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FetchinvoiceChanges) ProtoMessage() {}
+
+func (x *FetchinvoiceChanges) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[185]
+ 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 FetchinvoiceChanges.ProtoReflect.Descriptor instead.
+func (*FetchinvoiceChanges) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{185}
+}
+
+func (x *FetchinvoiceChanges) GetDescriptionAppended() string {
+ if x != nil && x.DescriptionAppended != nil {
+ return *x.DescriptionAppended
+ }
+ return ""
+}
+
+func (x *FetchinvoiceChanges) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *FetchinvoiceChanges) GetVendorRemoved() string {
+ if x != nil && x.VendorRemoved != nil {
+ return *x.VendorRemoved
+ }
+ return ""
+}
+
+func (x *FetchinvoiceChanges) GetVendor() string {
+ if x != nil && x.Vendor != nil {
+ return *x.Vendor
+ }
+ return ""
+}
+
+func (x *FetchinvoiceChanges) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+type FetchinvoiceNextPeriod struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Counter uint64 `protobuf:"varint,1,opt,name=counter,proto3" json:"counter,omitempty"`
+ Starttime uint64 `protobuf:"varint,2,opt,name=starttime,proto3" json:"starttime,omitempty"`
+ Endtime uint64 `protobuf:"varint,3,opt,name=endtime,proto3" json:"endtime,omitempty"`
+ PaywindowStart uint64 `protobuf:"varint,4,opt,name=paywindow_start,json=paywindowStart,proto3" json:"paywindow_start,omitempty"`
+ PaywindowEnd uint64 `protobuf:"varint,5,opt,name=paywindow_end,json=paywindowEnd,proto3" json:"paywindow_end,omitempty"`
+}
+
+func (x *FetchinvoiceNextPeriod) Reset() {
+ *x = FetchinvoiceNextPeriod{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[186]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FetchinvoiceNextPeriod) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FetchinvoiceNextPeriod) ProtoMessage() {}
+
+func (x *FetchinvoiceNextPeriod) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[186]
+ 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 FetchinvoiceNextPeriod.ProtoReflect.Descriptor instead.
+func (*FetchinvoiceNextPeriod) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{186}
+}
+
+func (x *FetchinvoiceNextPeriod) GetCounter() uint64 {
+ if x != nil {
+ return x.Counter
+ }
+ return 0
+}
+
+func (x *FetchinvoiceNextPeriod) GetStarttime() uint64 {
+ if x != nil {
+ return x.Starttime
+ }
+ return 0
+}
+
+func (x *FetchinvoiceNextPeriod) GetEndtime() uint64 {
+ if x != nil {
+ return x.Endtime
+ }
+ return 0
+}
+
+func (x *FetchinvoiceNextPeriod) GetPaywindowStart() uint64 {
+ if x != nil {
+ return x.PaywindowStart
+ }
+ return 0
+}
+
+func (x *FetchinvoiceNextPeriod) GetPaywindowEnd() uint64 {
+ if x != nil {
+ return x.PaywindowEnd
+ }
+ return 0
+}
+
+type FundchannelCancelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+}
+
+func (x *FundchannelCancelRequest) Reset() {
+ *x = FundchannelCancelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[187]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelCancelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelCancelRequest) ProtoMessage() {}
+
+func (x *FundchannelCancelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[187]
+ 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 FundchannelCancelRequest.ProtoReflect.Descriptor instead.
+func (*FundchannelCancelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{187}
+}
+
+func (x *FundchannelCancelRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+type FundchannelCancelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Cancelled string `protobuf:"bytes,1,opt,name=cancelled,proto3" json:"cancelled,omitempty"`
+}
+
+func (x *FundchannelCancelResponse) Reset() {
+ *x = FundchannelCancelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[188]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelCancelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelCancelResponse) ProtoMessage() {}
+
+func (x *FundchannelCancelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[188]
+ 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 FundchannelCancelResponse.ProtoReflect.Descriptor instead.
+func (*FundchannelCancelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{188}
+}
+
+func (x *FundchannelCancelResponse) GetCancelled() string {
+ if x != nil {
+ return x.Cancelled
+ }
+ return ""
+}
+
+type FundchannelCompleteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
+}
+
+func (x *FundchannelCompleteRequest) Reset() {
+ *x = FundchannelCompleteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[189]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelCompleteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelCompleteRequest) ProtoMessage() {}
+
+func (x *FundchannelCompleteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[189]
+ 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 FundchannelCompleteRequest.ProtoReflect.Descriptor instead.
+func (*FundchannelCompleteRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{189}
+}
+
+func (x *FundchannelCompleteRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *FundchannelCompleteRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+type FundchannelCompleteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ CommitmentsSecured bool `protobuf:"varint,2,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
+}
+
+func (x *FundchannelCompleteResponse) Reset() {
+ *x = FundchannelCompleteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[190]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelCompleteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelCompleteResponse) ProtoMessage() {}
+
+func (x *FundchannelCompleteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[190]
+ 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 FundchannelCompleteResponse.ProtoReflect.Descriptor instead.
+func (*FundchannelCompleteResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{190}
+}
+
+func (x *FundchannelCompleteResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *FundchannelCompleteResponse) GetCommitmentsSecured() bool {
+ if x != nil {
+ return x.CommitmentsSecured
+ }
+ return false
+}
+
+type FundchannelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Amount *AmountOrAll `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Announce *bool `protobuf:"varint,3,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
+ PushMsat *Amount `protobuf:"bytes,5,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
+ CloseTo *string `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ RequestAmt *Amount `protobuf:"bytes,7,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
+ CompactLease *string `protobuf:"bytes,8,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
+ Id []byte `protobuf:"bytes,9,opt,name=id,proto3" json:"id,omitempty"`
+ Minconf *uint32 `protobuf:"varint,10,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,11,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Mindepth *uint32 `protobuf:"varint,12,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+ Reserve *Amount `protobuf:"bytes,13,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+ ChannelType []uint32 `protobuf:"varint,14,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
+}
+
+func (x *FundchannelRequest) Reset() {
+ *x = FundchannelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[191]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelRequest) ProtoMessage() {}
+
+func (x *FundchannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[191]
+ 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 FundchannelRequest.ProtoReflect.Descriptor instead.
+func (*FundchannelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{191}
+}
+
+func (x *FundchannelRequest) GetAmount() *AmountOrAll {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetAnnounce() bool {
+ if x != nil && x.Announce != nil {
+ return *x.Announce
+ }
+ return false
+}
+
+func (x *FundchannelRequest) GetPushMsat() *Amount {
+ if x != nil {
+ return x.PushMsat
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetCloseTo() string {
+ if x != nil && x.CloseTo != nil {
+ return *x.CloseTo
+ }
+ return ""
+}
+
+func (x *FundchannelRequest) GetRequestAmt() *Amount {
+ if x != nil {
+ return x.RequestAmt
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetCompactLease() string {
+ if x != nil && x.CompactLease != nil {
+ return *x.CompactLease
+ }
+ return ""
+}
+
+func (x *FundchannelRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetMinconf() uint32 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
+ }
+ return 0
+}
+
+func (x *FundchannelRequest) GetUtxos() []*Outpoint {
+ if x != nil {
+ return x.Utxos
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetMindepth() uint32 {
+ if x != nil && x.Mindepth != nil {
+ return *x.Mindepth
+ }
+ return 0
+}
+
+func (x *FundchannelRequest) GetReserve() *Amount {
+ if x != nil {
+ return x.Reserve
+ }
+ return nil
+}
+
+func (x *FundchannelRequest) GetChannelType() []uint32 {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+type FundchannelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+ Outnum uint32 `protobuf:"varint,3,opt,name=outnum,proto3" json:"outnum,omitempty"`
+ ChannelId []byte `protobuf:"bytes,4,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ CloseTo []byte `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ Mindepth *uint32 `protobuf:"varint,6,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+ ChannelType *FundchannelChannelType `protobuf:"bytes,7,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+}
+
+func (x *FundchannelResponse) Reset() {
+ *x = FundchannelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[192]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelResponse) ProtoMessage() {}
+
+func (x *FundchannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[192]
+ 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 FundchannelResponse.ProtoReflect.Descriptor instead.
+func (*FundchannelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{192}
+}
+
+func (x *FundchannelResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *FundchannelResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *FundchannelResponse) GetOutnum() uint32 {
+ if x != nil {
+ return x.Outnum
+ }
+ return 0
+}
+
+func (x *FundchannelResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *FundchannelResponse) GetCloseTo() []byte {
+ if x != nil {
+ return x.CloseTo
+ }
+ return nil
+}
+
+func (x *FundchannelResponse) GetMindepth() uint32 {
+ if x != nil && x.Mindepth != nil {
+ return *x.Mindepth
+ }
+ return 0
+}
+
+func (x *FundchannelResponse) GetChannelType() *FundchannelChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+type FundchannelChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *FundchannelChannelType) Reset() {
+ *x = FundchannelChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[193]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelChannelType) ProtoMessage() {}
+
+func (x *FundchannelChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[193]
+ 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 FundchannelChannelType.ProtoReflect.Descriptor instead.
+func (*FundchannelChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{193}
+}
+
+func (x *FundchannelChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *FundchannelChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type FundchannelStartRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Amount *Amount `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,3,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Announce *bool `protobuf:"varint,4,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
+ CloseTo *string `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ PushMsat *Amount `protobuf:"bytes,6,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
+ Mindepth *uint32 `protobuf:"varint,7,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+ Reserve *Amount `protobuf:"bytes,8,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+ ChannelType []uint32 `protobuf:"varint,9,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
+}
+
+func (x *FundchannelStartRequest) Reset() {
+ *x = FundchannelStartRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[194]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelStartRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelStartRequest) ProtoMessage() {}
+
+func (x *FundchannelStartRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[194]
+ 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 FundchannelStartRequest.ProtoReflect.Descriptor instead.
+func (*FundchannelStartRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{194}
+}
+
+func (x *FundchannelStartRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *FundchannelStartRequest) GetAmount() *Amount {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+func (x *FundchannelStartRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+func (x *FundchannelStartRequest) GetAnnounce() bool {
+ if x != nil && x.Announce != nil {
+ return *x.Announce
+ }
+ return false
+}
+
+func (x *FundchannelStartRequest) GetCloseTo() string {
+ if x != nil && x.CloseTo != nil {
+ return *x.CloseTo
+ }
+ return ""
+}
+
+func (x *FundchannelStartRequest) GetPushMsat() *Amount {
+ if x != nil {
+ return x.PushMsat
+ }
+ return nil
+}
+
+func (x *FundchannelStartRequest) GetMindepth() uint32 {
+ if x != nil && x.Mindepth != nil {
+ return *x.Mindepth
+ }
+ return 0
+}
+
+func (x *FundchannelStartRequest) GetReserve() *Amount {
+ if x != nil {
+ return x.Reserve
+ }
+ return nil
+}
+
+func (x *FundchannelStartRequest) GetChannelType() []uint32 {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+type FundchannelStartResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ FundingAddress string `protobuf:"bytes,1,opt,name=funding_address,json=fundingAddress,proto3" json:"funding_address,omitempty"`
+ Scriptpubkey []byte `protobuf:"bytes,2,opt,name=scriptpubkey,proto3" json:"scriptpubkey,omitempty"`
+ ChannelType *FundchannelStartChannelType `protobuf:"bytes,3,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+ CloseTo []byte `protobuf:"bytes,4,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ WarningUsage string `protobuf:"bytes,5,opt,name=warning_usage,json=warningUsage,proto3" json:"warning_usage,omitempty"`
+ Mindepth *uint32 `protobuf:"varint,6,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+}
+
+func (x *FundchannelStartResponse) Reset() {
+ *x = FundchannelStartResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[195]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelStartResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelStartResponse) ProtoMessage() {}
+
+func (x *FundchannelStartResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[195]
+ 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 FundchannelStartResponse.ProtoReflect.Descriptor instead.
+func (*FundchannelStartResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{195}
+}
+
+func (x *FundchannelStartResponse) GetFundingAddress() string {
+ if x != nil {
+ return x.FundingAddress
+ }
+ return ""
+}
+
+func (x *FundchannelStartResponse) GetScriptpubkey() []byte {
+ if x != nil {
+ return x.Scriptpubkey
+ }
+ return nil
+}
+
+func (x *FundchannelStartResponse) GetChannelType() *FundchannelStartChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *FundchannelStartResponse) GetCloseTo() []byte {
+ if x != nil {
+ return x.CloseTo
+ }
+ return nil
+}
+
+func (x *FundchannelStartResponse) GetWarningUsage() string {
+ if x != nil {
+ return x.WarningUsage
+ }
+ return ""
+}
+
+func (x *FundchannelStartResponse) GetMindepth() uint32 {
+ if x != nil && x.Mindepth != nil {
+ return *x.Mindepth
+ }
+ return 0
+}
+
+type FundchannelStartChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *FundchannelStartChannelType) Reset() {
+ *x = FundchannelStartChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[196]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FundchannelStartChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FundchannelStartChannelType) ProtoMessage() {}
+
+func (x *FundchannelStartChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[196]
+ 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 FundchannelStartChannelType.ProtoReflect.Descriptor instead.
+func (*FundchannelStartChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{196}
+}
+
+func (x *FundchannelStartChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *FundchannelStartChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type GetlogRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Level *GetlogRequest_GetlogLevel `protobuf:"varint,1,opt,name=level,proto3,enum=cln.GetlogRequest_GetlogLevel,oneof" json:"level,omitempty"`
+}
+
+func (x *GetlogRequest) Reset() {
+ *x = GetlogRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[197]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetlogRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetlogRequest) ProtoMessage() {}
+
+func (x *GetlogRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[197]
+ 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 GetlogRequest.ProtoReflect.Descriptor instead.
+func (*GetlogRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{197}
+}
+
+func (x *GetlogRequest) GetLevel() GetlogRequest_GetlogLevel {
+ if x != nil && x.Level != nil {
+ return *x.Level
+ }
+ return GetlogRequest_BROKEN
+}
+
+type GetlogResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ CreatedAt string `protobuf:"bytes,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ BytesUsed uint32 `protobuf:"varint,2,opt,name=bytes_used,json=bytesUsed,proto3" json:"bytes_used,omitempty"`
+ BytesMax uint32 `protobuf:"varint,3,opt,name=bytes_max,json=bytesMax,proto3" json:"bytes_max,omitempty"`
+ Log []*GetlogLog `protobuf:"bytes,4,rep,name=log,proto3" json:"log,omitempty"`
+}
+
+func (x *GetlogResponse) Reset() {
+ *x = GetlogResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[198]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetlogResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetlogResponse) ProtoMessage() {}
+
+func (x *GetlogResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[198]
+ 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 GetlogResponse.ProtoReflect.Descriptor instead.
+func (*GetlogResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{198}
+}
+
+func (x *GetlogResponse) GetCreatedAt() string {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return ""
+}
+
+func (x *GetlogResponse) GetBytesUsed() uint32 {
+ if x != nil {
+ return x.BytesUsed
+ }
+ return 0
+}
+
+func (x *GetlogResponse) GetBytesMax() uint32 {
+ if x != nil {
+ return x.BytesMax
+ }
+ return 0
+}
+
+func (x *GetlogResponse) GetLog() []*GetlogLog {
+ if x != nil {
+ return x.Log
+ }
+ return nil
+}
+
+type GetlogLog struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ItemType GetlogLog_GetlogLogType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetlogLog_GetlogLogType" json:"item_type,omitempty"`
+ NumSkipped *uint32 `protobuf:"varint,2,opt,name=num_skipped,json=numSkipped,proto3,oneof" json:"num_skipped,omitempty"`
+ Time *string `protobuf:"bytes,3,opt,name=time,proto3,oneof" json:"time,omitempty"`
+ Source *string `protobuf:"bytes,4,opt,name=source,proto3,oneof" json:"source,omitempty"`
+ Log *string `protobuf:"bytes,5,opt,name=log,proto3,oneof" json:"log,omitempty"`
+ NodeId []byte `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"`
+ Data []byte `protobuf:"bytes,7,opt,name=data,proto3,oneof" json:"data,omitempty"`
+}
+
+func (x *GetlogLog) Reset() {
+ *x = GetlogLog{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[199]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetlogLog) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetlogLog) ProtoMessage() {}
+
+func (x *GetlogLog) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[199]
+ 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 GetlogLog.ProtoReflect.Descriptor instead.
+func (*GetlogLog) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{199}
+}
+
+func (x *GetlogLog) GetItemType() GetlogLog_GetlogLogType {
+ if x != nil {
+ return x.ItemType
+ }
+ return GetlogLog_SKIPPED
+}
+
+func (x *GetlogLog) GetNumSkipped() uint32 {
+ if x != nil && x.NumSkipped != nil {
+ return *x.NumSkipped
+ }
+ return 0
+}
+
+func (x *GetlogLog) GetTime() string {
+ if x != nil && x.Time != nil {
+ return *x.Time
+ }
+ return ""
+}
+
+func (x *GetlogLog) GetSource() string {
+ if x != nil && x.Source != nil {
+ return *x.Source
+ }
+ return ""
+}
+
+func (x *GetlogLog) GetLog() string {
+ if x != nil && x.Log != nil {
+ return *x.Log
+ }
+ return ""
+}
+
+func (x *GetlogLog) GetNodeId() []byte {
+ if x != nil {
+ return x.NodeId
+ }
+ return nil
+}
+
+func (x *GetlogLog) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+type FunderupdateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Policy *FunderupdateRequest_FunderupdatePolicy `protobuf:"varint,1,opt,name=policy,proto3,enum=cln.FunderupdateRequest_FunderupdatePolicy,oneof" json:"policy,omitempty"`
+ PolicyMod *Amount `protobuf:"bytes,2,opt,name=policy_mod,json=policyMod,proto3,oneof" json:"policy_mod,omitempty"`
+ LeasesOnly *bool `protobuf:"varint,3,opt,name=leases_only,json=leasesOnly,proto3,oneof" json:"leases_only,omitempty"`
+ MinTheirFundingMsat *Amount `protobuf:"bytes,4,opt,name=min_their_funding_msat,json=minTheirFundingMsat,proto3,oneof" json:"min_their_funding_msat,omitempty"`
+ MaxTheirFundingMsat *Amount `protobuf:"bytes,5,opt,name=max_their_funding_msat,json=maxTheirFundingMsat,proto3,oneof" json:"max_their_funding_msat,omitempty"`
+ PerChannelMinMsat *Amount `protobuf:"bytes,6,opt,name=per_channel_min_msat,json=perChannelMinMsat,proto3,oneof" json:"per_channel_min_msat,omitempty"`
+ PerChannelMaxMsat *Amount `protobuf:"bytes,7,opt,name=per_channel_max_msat,json=perChannelMaxMsat,proto3,oneof" json:"per_channel_max_msat,omitempty"`
+ ReserveTankMsat *Amount `protobuf:"bytes,8,opt,name=reserve_tank_msat,json=reserveTankMsat,proto3,oneof" json:"reserve_tank_msat,omitempty"`
+ FuzzPercent *uint32 `protobuf:"varint,9,opt,name=fuzz_percent,json=fuzzPercent,proto3,oneof" json:"fuzz_percent,omitempty"`
+ FundProbability *uint32 `protobuf:"varint,10,opt,name=fund_probability,json=fundProbability,proto3,oneof" json:"fund_probability,omitempty"`
+ LeaseFeeBaseMsat *Amount `protobuf:"bytes,11,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3,oneof" json:"lease_fee_base_msat,omitempty"`
+ LeaseFeeBasis *uint32 `protobuf:"varint,12,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3,oneof" json:"lease_fee_basis,omitempty"`
+ FundingWeight *uint32 `protobuf:"varint,13,opt,name=funding_weight,json=fundingWeight,proto3,oneof" json:"funding_weight,omitempty"`
+ ChannelFeeMaxBaseMsat *Amount `protobuf:"bytes,14,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3,oneof" json:"channel_fee_max_base_msat,omitempty"`
+ ChannelFeeMaxProportionalThousandths *uint32 `protobuf:"varint,15,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3,oneof" json:"channel_fee_max_proportional_thousandths,omitempty"`
+ CompactLease []byte `protobuf:"bytes,16,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
+}
+
+func (x *FunderupdateRequest) Reset() {
+ *x = FunderupdateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[200]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FunderupdateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FunderupdateRequest) ProtoMessage() {}
+
+func (x *FunderupdateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[200]
+ 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 FunderupdateRequest.ProtoReflect.Descriptor instead.
+func (*FunderupdateRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{200}
+}
+
+func (x *FunderupdateRequest) GetPolicy() FunderupdateRequest_FunderupdatePolicy {
+ if x != nil && x.Policy != nil {
+ return *x.Policy
+ }
+ return FunderupdateRequest_MATCH
+}
+
+func (x *FunderupdateRequest) GetPolicyMod() *Amount {
+ if x != nil {
+ return x.PolicyMod
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetLeasesOnly() bool {
+ if x != nil && x.LeasesOnly != nil {
+ return *x.LeasesOnly
+ }
+ return false
+}
+
+func (x *FunderupdateRequest) GetMinTheirFundingMsat() *Amount {
+ if x != nil {
+ return x.MinTheirFundingMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetMaxTheirFundingMsat() *Amount {
+ if x != nil {
+ return x.MaxTheirFundingMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetPerChannelMinMsat() *Amount {
+ if x != nil {
+ return x.PerChannelMinMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetPerChannelMaxMsat() *Amount {
+ if x != nil {
+ return x.PerChannelMaxMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetReserveTankMsat() *Amount {
+ if x != nil {
+ return x.ReserveTankMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetFuzzPercent() uint32 {
+ if x != nil && x.FuzzPercent != nil {
+ return *x.FuzzPercent
+ }
+ return 0
+}
+
+func (x *FunderupdateRequest) GetFundProbability() uint32 {
+ if x != nil && x.FundProbability != nil {
+ return *x.FundProbability
+ }
+ return 0
+}
+
+func (x *FunderupdateRequest) GetLeaseFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.LeaseFeeBaseMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetLeaseFeeBasis() uint32 {
+ if x != nil && x.LeaseFeeBasis != nil {
+ return *x.LeaseFeeBasis
+ }
+ return 0
+}
+
+func (x *FunderupdateRequest) GetFundingWeight() uint32 {
+ if x != nil && x.FundingWeight != nil {
+ return *x.FundingWeight
+ }
+ return 0
+}
+
+func (x *FunderupdateRequest) GetChannelFeeMaxBaseMsat() *Amount {
+ if x != nil {
+ return x.ChannelFeeMaxBaseMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateRequest) GetChannelFeeMaxProportionalThousandths() uint32 {
+ if x != nil && x.ChannelFeeMaxProportionalThousandths != nil {
+ return *x.ChannelFeeMaxProportionalThousandths
+ }
+ return 0
+}
+
+func (x *FunderupdateRequest) GetCompactLease() []byte {
+ if x != nil {
+ return x.CompactLease
+ }
+ return nil
+}
+
+type FunderupdateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Summary string `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
+ Policy FunderupdateResponse_FunderupdatePolicy `protobuf:"varint,2,opt,name=policy,proto3,enum=cln.FunderupdateResponse_FunderupdatePolicy" json:"policy,omitempty"`
+ PolicyMod uint32 `protobuf:"varint,3,opt,name=policy_mod,json=policyMod,proto3" json:"policy_mod,omitempty"`
+ LeasesOnly bool `protobuf:"varint,4,opt,name=leases_only,json=leasesOnly,proto3" json:"leases_only,omitempty"`
+ MinTheirFundingMsat *Amount `protobuf:"bytes,5,opt,name=min_their_funding_msat,json=minTheirFundingMsat,proto3" json:"min_their_funding_msat,omitempty"`
+ MaxTheirFundingMsat *Amount `protobuf:"bytes,6,opt,name=max_their_funding_msat,json=maxTheirFundingMsat,proto3" json:"max_their_funding_msat,omitempty"`
+ PerChannelMinMsat *Amount `protobuf:"bytes,7,opt,name=per_channel_min_msat,json=perChannelMinMsat,proto3" json:"per_channel_min_msat,omitempty"`
+ PerChannelMaxMsat *Amount `protobuf:"bytes,8,opt,name=per_channel_max_msat,json=perChannelMaxMsat,proto3" json:"per_channel_max_msat,omitempty"`
+ ReserveTankMsat *Amount `protobuf:"bytes,9,opt,name=reserve_tank_msat,json=reserveTankMsat,proto3" json:"reserve_tank_msat,omitempty"`
+ FuzzPercent uint32 `protobuf:"varint,10,opt,name=fuzz_percent,json=fuzzPercent,proto3" json:"fuzz_percent,omitempty"`
+ FundProbability uint32 `protobuf:"varint,11,opt,name=fund_probability,json=fundProbability,proto3" json:"fund_probability,omitempty"`
+ LeaseFeeBaseMsat *Amount `protobuf:"bytes,12,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3,oneof" json:"lease_fee_base_msat,omitempty"`
+ LeaseFeeBasis *uint32 `protobuf:"varint,13,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3,oneof" json:"lease_fee_basis,omitempty"`
+ FundingWeight *uint32 `protobuf:"varint,14,opt,name=funding_weight,json=fundingWeight,proto3,oneof" json:"funding_weight,omitempty"`
+ ChannelFeeMaxBaseMsat *Amount `protobuf:"bytes,15,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3,oneof" json:"channel_fee_max_base_msat,omitempty"`
+ ChannelFeeMaxProportionalThousandths *uint32 `protobuf:"varint,16,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3,oneof" json:"channel_fee_max_proportional_thousandths,omitempty"`
+ CompactLease []byte `protobuf:"bytes,17,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
+}
+
+func (x *FunderupdateResponse) Reset() {
+ *x = FunderupdateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[201]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FunderupdateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FunderupdateResponse) ProtoMessage() {}
+
+func (x *FunderupdateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[201]
+ 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 FunderupdateResponse.ProtoReflect.Descriptor instead.
+func (*FunderupdateResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{201}
+}
+
+func (x *FunderupdateResponse) GetSummary() string {
+ if x != nil {
+ return x.Summary
+ }
+ return ""
+}
+
+func (x *FunderupdateResponse) GetPolicy() FunderupdateResponse_FunderupdatePolicy {
+ if x != nil {
+ return x.Policy
+ }
+ return FunderupdateResponse_MATCH
+}
+
+func (x *FunderupdateResponse) GetPolicyMod() uint32 {
+ if x != nil {
+ return x.PolicyMod
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetLeasesOnly() bool {
+ if x != nil {
+ return x.LeasesOnly
+ }
+ return false
+}
+
+func (x *FunderupdateResponse) GetMinTheirFundingMsat() *Amount {
+ if x != nil {
+ return x.MinTheirFundingMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetMaxTheirFundingMsat() *Amount {
+ if x != nil {
+ return x.MaxTheirFundingMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetPerChannelMinMsat() *Amount {
+ if x != nil {
+ return x.PerChannelMinMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetPerChannelMaxMsat() *Amount {
+ if x != nil {
+ return x.PerChannelMaxMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetReserveTankMsat() *Amount {
+ if x != nil {
+ return x.ReserveTankMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetFuzzPercent() uint32 {
+ if x != nil {
+ return x.FuzzPercent
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetFundProbability() uint32 {
+ if x != nil {
+ return x.FundProbability
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetLeaseFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.LeaseFeeBaseMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetLeaseFeeBasis() uint32 {
+ if x != nil && x.LeaseFeeBasis != nil {
+ return *x.LeaseFeeBasis
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetFundingWeight() uint32 {
+ if x != nil && x.FundingWeight != nil {
+ return *x.FundingWeight
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetChannelFeeMaxBaseMsat() *Amount {
+ if x != nil {
+ return x.ChannelFeeMaxBaseMsat
+ }
+ return nil
+}
+
+func (x *FunderupdateResponse) GetChannelFeeMaxProportionalThousandths() uint32 {
+ if x != nil && x.ChannelFeeMaxProportionalThousandths != nil {
+ return *x.ChannelFeeMaxProportionalThousandths
+ }
+ return 0
+}
+
+func (x *FunderupdateResponse) GetCompactLease() []byte {
+ if x != nil {
+ return x.CompactLease
+ }
+ return nil
+}
+
+type GetrouteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Riskfactor uint64 `protobuf:"varint,3,opt,name=riskfactor,proto3" json:"riskfactor,omitempty"`
+ Cltv *uint32 `protobuf:"varint,4,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
+ Fromid []byte `protobuf:"bytes,5,opt,name=fromid,proto3,oneof" json:"fromid,omitempty"`
+ Fuzzpercent *uint32 `protobuf:"varint,6,opt,name=fuzzpercent,proto3,oneof" json:"fuzzpercent,omitempty"`
+ Exclude []string `protobuf:"bytes,7,rep,name=exclude,proto3" json:"exclude,omitempty"`
+ Maxhops *uint32 `protobuf:"varint,8,opt,name=maxhops,proto3,oneof" json:"maxhops,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,9,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+}
+
+func (x *GetrouteRequest) Reset() {
+ *x = GetrouteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[202]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetrouteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetrouteRequest) ProtoMessage() {}
+
+func (x *GetrouteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[202]
+ 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 GetrouteRequest.ProtoReflect.Descriptor instead.
+func (*GetrouteRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{202}
+}
+
+func (x *GetrouteRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *GetrouteRequest) GetRiskfactor() uint64 {
+ if x != nil {
+ return x.Riskfactor
+ }
+ return 0
+}
+
+func (x *GetrouteRequest) GetCltv() uint32 {
+ if x != nil && x.Cltv != nil {
+ return *x.Cltv
+ }
+ return 0
+}
+
+func (x *GetrouteRequest) GetFromid() []byte {
+ if x != nil {
+ return x.Fromid
+ }
+ return nil
+}
+
+func (x *GetrouteRequest) GetFuzzpercent() uint32 {
+ if x != nil && x.Fuzzpercent != nil {
+ return *x.Fuzzpercent
+ }
+ return 0
+}
+
+func (x *GetrouteRequest) GetExclude() []string {
+ if x != nil {
+ return x.Exclude
+ }
+ return nil
+}
+
+func (x *GetrouteRequest) GetMaxhops() uint32 {
+ if x != nil && x.Maxhops != nil {
+ return *x.Maxhops
+ }
+ return 0
+}
+
+func (x *GetrouteRequest) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+type GetrouteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Route []*GetrouteRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
+}
+
+func (x *GetrouteResponse) Reset() {
+ *x = GetrouteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[203]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetrouteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetrouteResponse) ProtoMessage() {}
+
+func (x *GetrouteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[203]
+ 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 GetrouteResponse.ProtoReflect.Descriptor instead.
+func (*GetrouteResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{203}
+}
+
+func (x *GetrouteResponse) GetRoute() []*GetrouteRoute {
+ if x != nil {
+ return x.Route
+ }
+ return nil
+}
+
+type GetrouteRoute struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
+ Direction uint32 `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ Delay uint32 `protobuf:"varint,5,opt,name=delay,proto3" json:"delay,omitempty"`
+ Style GetrouteRoute_GetrouteRouteStyle `protobuf:"varint,6,opt,name=style,proto3,enum=cln.GetrouteRoute_GetrouteRouteStyle" json:"style,omitempty"`
+}
+
+func (x *GetrouteRoute) Reset() {
+ *x = GetrouteRoute{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[204]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetrouteRoute) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetrouteRoute) ProtoMessage() {}
+
+func (x *GetrouteRoute) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[204]
+ 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 GetrouteRoute.ProtoReflect.Descriptor instead.
+func (*GetrouteRoute) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{204}
+}
+
+func (x *GetrouteRoute) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *GetrouteRoute) GetChannel() string {
+ if x != nil {
+ return x.Channel
+ }
+ return ""
+}
+
+func (x *GetrouteRoute) GetDirection() uint32 {
+ if x != nil {
+ return x.Direction
+ }
+ return 0
+}
+
+func (x *GetrouteRoute) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *GetrouteRoute) GetDelay() uint32 {
+ if x != nil {
+ return x.Delay
+ }
+ return 0
+}
+
+func (x *GetrouteRoute) GetStyle() GetrouteRoute_GetrouteRouteStyle {
+ if x != nil {
+ return x.Style
+ }
+ return GetrouteRoute_TLV
+}
+
+type ListforwardsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Status *ListforwardsRequest_ListforwardsStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cln.ListforwardsRequest_ListforwardsStatus,oneof" json:"status,omitempty"`
+ InChannel *string `protobuf:"bytes,2,opt,name=in_channel,json=inChannel,proto3,oneof" json:"in_channel,omitempty"`
+ OutChannel *string `protobuf:"bytes,3,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
+ Index *ListforwardsRequest_ListforwardsIndex `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListforwardsRequest_ListforwardsIndex,oneof" json:"index,omitempty"`
+ Start *uint64 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
+ Limit *uint32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
+}
+
+func (x *ListforwardsRequest) Reset() {
+ *x = ListforwardsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[205]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListforwardsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListforwardsRequest) ProtoMessage() {}
+
+func (x *ListforwardsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[205]
+ 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 ListforwardsRequest.ProtoReflect.Descriptor instead.
+func (*ListforwardsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{205}
+}
+
+func (x *ListforwardsRequest) GetStatus() ListforwardsRequest_ListforwardsStatus {
+ if x != nil && x.Status != nil {
+ return *x.Status
+ }
+ return ListforwardsRequest_OFFERED
+}
+
+func (x *ListforwardsRequest) GetInChannel() string {
+ if x != nil && x.InChannel != nil {
+ return *x.InChannel
+ }
+ return ""
+}
+
+func (x *ListforwardsRequest) GetOutChannel() string {
+ if x != nil && x.OutChannel != nil {
+ return *x.OutChannel
+ }
+ return ""
+}
+
+func (x *ListforwardsRequest) GetIndex() ListforwardsRequest_ListforwardsIndex {
+ if x != nil && x.Index != nil {
+ return *x.Index
+ }
+ return ListforwardsRequest_CREATED
+}
+
+func (x *ListforwardsRequest) GetStart() uint64 {
+ if x != nil && x.Start != nil {
+ return *x.Start
+ }
+ return 0
+}
+
+func (x *ListforwardsRequest) GetLimit() uint32 {
+ if x != nil && x.Limit != nil {
+ return *x.Limit
+ }
+ return 0
+}
+
+type ListforwardsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Forwards []*ListforwardsForwards `protobuf:"bytes,1,rep,name=forwards,proto3" json:"forwards,omitempty"`
+}
+
+func (x *ListforwardsResponse) Reset() {
+ *x = ListforwardsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[206]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListforwardsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListforwardsResponse) ProtoMessage() {}
+
+func (x *ListforwardsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[206]
+ 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 ListforwardsResponse.ProtoReflect.Descriptor instead.
+func (*ListforwardsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{206}
+}
+
+func (x *ListforwardsResponse) GetForwards() []*ListforwardsForwards {
+ if x != nil {
+ return x.Forwards
+ }
+ return nil
+}
+
+type ListforwardsForwards struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InChannel string `protobuf:"bytes,1,opt,name=in_channel,json=inChannel,proto3" json:"in_channel,omitempty"`
+ InMsat *Amount `protobuf:"bytes,2,opt,name=in_msat,json=inMsat,proto3" json:"in_msat,omitempty"`
+ Status ListforwardsForwards_ListforwardsForwardsStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStatus" json:"status,omitempty"`
+ ReceivedTime float64 `protobuf:"fixed64,4,opt,name=received_time,json=receivedTime,proto3" json:"received_time,omitempty"`
+ OutChannel *string `protobuf:"bytes,5,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
+ FeeMsat *Amount `protobuf:"bytes,7,opt,name=fee_msat,json=feeMsat,proto3,oneof" json:"fee_msat,omitempty"`
+ OutMsat *Amount `protobuf:"bytes,8,opt,name=out_msat,json=outMsat,proto3,oneof" json:"out_msat,omitempty"`
+ Style *ListforwardsForwards_ListforwardsForwardsStyle `protobuf:"varint,9,opt,name=style,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStyle,oneof" json:"style,omitempty"`
+ InHtlcId *uint64 `protobuf:"varint,10,opt,name=in_htlc_id,json=inHtlcId,proto3,oneof" json:"in_htlc_id,omitempty"`
+ OutHtlcId *uint64 `protobuf:"varint,11,opt,name=out_htlc_id,json=outHtlcId,proto3,oneof" json:"out_htlc_id,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ ResolvedTime *float64 `protobuf:"fixed64,14,opt,name=resolved_time,json=resolvedTime,proto3,oneof" json:"resolved_time,omitempty"`
+ Failcode *uint32 `protobuf:"varint,15,opt,name=failcode,proto3,oneof" json:"failcode,omitempty"`
+ Failreason *string `protobuf:"bytes,16,opt,name=failreason,proto3,oneof" json:"failreason,omitempty"`
+}
+
+func (x *ListforwardsForwards) Reset() {
+ *x = ListforwardsForwards{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[207]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListforwardsForwards) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListforwardsForwards) ProtoMessage() {}
+
+func (x *ListforwardsForwards) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[207]
+ 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 ListforwardsForwards.ProtoReflect.Descriptor instead.
+func (*ListforwardsForwards) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{207}
+}
+
+func (x *ListforwardsForwards) GetInChannel() string {
+ if x != nil {
+ return x.InChannel
+ }
+ return ""
+}
+
+func (x *ListforwardsForwards) GetInMsat() *Amount {
+ if x != nil {
+ return x.InMsat
+ }
+ return nil
+}
+
+func (x *ListforwardsForwards) GetStatus() ListforwardsForwards_ListforwardsForwardsStatus {
+ if x != nil {
+ return x.Status
+ }
+ return ListforwardsForwards_OFFERED
+}
+
+func (x *ListforwardsForwards) GetReceivedTime() float64 {
+ if x != nil {
+ return x.ReceivedTime
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetOutChannel() string {
+ if x != nil && x.OutChannel != nil {
+ return *x.OutChannel
+ }
+ return ""
+}
+
+func (x *ListforwardsForwards) GetFeeMsat() *Amount {
+ if x != nil {
+ return x.FeeMsat
+ }
+ return nil
+}
+
+func (x *ListforwardsForwards) GetOutMsat() *Amount {
+ if x != nil {
+ return x.OutMsat
+ }
+ return nil
+}
+
+func (x *ListforwardsForwards) GetStyle() ListforwardsForwards_ListforwardsForwardsStyle {
+ if x != nil && x.Style != nil {
+ return *x.Style
+ }
+ return ListforwardsForwards_LEGACY
+}
+
+func (x *ListforwardsForwards) GetInHtlcId() uint64 {
+ if x != nil && x.InHtlcId != nil {
+ return *x.InHtlcId
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetOutHtlcId() uint64 {
+ if x != nil && x.OutHtlcId != nil {
+ return *x.OutHtlcId
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetResolvedTime() float64 {
+ if x != nil && x.ResolvedTime != nil {
+ return *x.ResolvedTime
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetFailcode() uint32 {
+ if x != nil && x.Failcode != nil {
+ return *x.Failcode
+ }
+ return 0
+}
+
+func (x *ListforwardsForwards) GetFailreason() string {
+ if x != nil && x.Failreason != nil {
+ return *x.Failreason
+ }
+ return ""
+}
+
+type ListoffersRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
+ ActiveOnly *bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3,oneof" json:"active_only,omitempty"`
+}
+
+func (x *ListoffersRequest) Reset() {
+ *x = ListoffersRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[208]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListoffersRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListoffersRequest) ProtoMessage() {}
+
+func (x *ListoffersRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[208]
+ 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 ListoffersRequest.ProtoReflect.Descriptor instead.
+func (*ListoffersRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{208}
+}
+
+func (x *ListoffersRequest) GetOfferId() []byte {
+ if x != nil {
+ return x.OfferId
+ }
+ return nil
+}
+
+func (x *ListoffersRequest) GetActiveOnly() bool {
+ if x != nil && x.ActiveOnly != nil {
+ return *x.ActiveOnly
+ }
+ return false
+}
+
+type ListoffersResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Offers []*ListoffersOffers `protobuf:"bytes,1,rep,name=offers,proto3" json:"offers,omitempty"`
+}
+
+func (x *ListoffersResponse) Reset() {
+ *x = ListoffersResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[209]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListoffersResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListoffersResponse) ProtoMessage() {}
+
+func (x *ListoffersResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[209]
+ 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 ListoffersResponse.ProtoReflect.Descriptor instead.
+func (*ListoffersResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{209}
+}
+
+func (x *ListoffersResponse) GetOffers() []*ListoffersOffers {
+ if x != nil {
+ return x.Offers
+ }
+ return nil
+}
+
+type ListoffersOffers struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Label *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
+}
+
+func (x *ListoffersOffers) Reset() {
+ *x = ListoffersOffers{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[210]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListoffersOffers) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListoffersOffers) ProtoMessage() {}
+
+func (x *ListoffersOffers) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[210]
+ 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 ListoffersOffers.ProtoReflect.Descriptor instead.
+func (*ListoffersOffers) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{210}
+}
+
+func (x *ListoffersOffers) GetOfferId() []byte {
+ if x != nil {
+ return x.OfferId
+ }
+ return nil
+}
+
+func (x *ListoffersOffers) GetActive() bool {
+ if x != nil {
+ return x.Active
+ }
+ return false
+}
+
+func (x *ListoffersOffers) GetSingleUse() bool {
+ if x != nil {
+ return x.SingleUse
+ }
+ return false
+}
+
+func (x *ListoffersOffers) GetBolt12() string {
+ if x != nil {
+ return x.Bolt12
+ }
+ return ""
+}
+
+func (x *ListoffersOffers) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *ListoffersOffers) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type ListpaysRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bolt11 *string `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
+ Status *ListpaysRequest_ListpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListpaysRequest_ListpaysStatus,oneof" json:"status,omitempty"`
+}
+
+func (x *ListpaysRequest) Reset() {
+ *x = ListpaysRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[211]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListpaysRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListpaysRequest) ProtoMessage() {}
+
+func (x *ListpaysRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[211]
+ 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 ListpaysRequest.ProtoReflect.Descriptor instead.
+func (*ListpaysRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{211}
+}
+
+func (x *ListpaysRequest) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *ListpaysRequest) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *ListpaysRequest) GetStatus() ListpaysRequest_ListpaysStatus {
+ if x != nil && x.Status != nil {
+ return *x.Status
+ }
+ return ListpaysRequest_PENDING
+}
+
+type ListpaysResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Pays []*ListpaysPays `protobuf:"bytes,1,rep,name=pays,proto3" json:"pays,omitempty"`
+}
+
+func (x *ListpaysResponse) Reset() {
+ *x = ListpaysResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[212]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListpaysResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListpaysResponse) ProtoMessage() {}
+
+func (x *ListpaysResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[212]
+ 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 ListpaysResponse.ProtoReflect.Descriptor instead.
+func (*ListpaysResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{212}
+}
+
+func (x *ListpaysResponse) GetPays() []*ListpaysPays {
+ if x != nil {
+ return x.Pays
+ }
+ return nil
+}
+
+type ListpaysPays struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status ListpaysPays_ListpaysPaysStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.ListpaysPays_ListpaysPaysStatus" json:"status,omitempty"`
+ Destination []byte `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ CreatedAt uint64 `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Label *string `protobuf:"bytes,5,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Bolt11 *string `protobuf:"bytes,6,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,7,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,8,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,9,opt,name=amount_sent_msat,json=amountSentMsat,proto3,oneof" json:"amount_sent_msat,omitempty"`
+ Erroronion []byte `protobuf:"bytes,10,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
+ Description *string `protobuf:"bytes,11,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ CompletedAt *uint64 `protobuf:"varint,12,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
+ Preimage []byte `protobuf:"bytes,13,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
+ NumberOfParts *uint64 `protobuf:"varint,14,opt,name=number_of_parts,json=numberOfParts,proto3,oneof" json:"number_of_parts,omitempty"`
+}
+
+func (x *ListpaysPays) Reset() {
+ *x = ListpaysPays{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[213]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListpaysPays) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListpaysPays) ProtoMessage() {}
+
+func (x *ListpaysPays) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[213]
+ 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 ListpaysPays.ProtoReflect.Descriptor instead.
+func (*ListpaysPays) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{213}
+}
+
+func (x *ListpaysPays) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetStatus() ListpaysPays_ListpaysPaysStatus {
+ if x != nil {
+ return x.Status
+ }
+ return ListpaysPays_PENDING
+}
+
+func (x *ListpaysPays) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetCreatedAt() uint64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
+}
+
+func (x *ListpaysPays) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *ListpaysPays) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *ListpaysPays) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *ListpaysPays) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetErroronion() []byte {
+ if x != nil {
+ return x.Erroronion
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *ListpaysPays) GetCompletedAt() uint64 {
+ if x != nil && x.CompletedAt != nil {
+ return *x.CompletedAt
+ }
+ return 0
+}
+
+func (x *ListpaysPays) GetPreimage() []byte {
+ if x != nil {
+ return x.Preimage
+ }
+ return nil
+}
+
+func (x *ListpaysPays) GetNumberOfParts() uint64 {
+ if x != nil && x.NumberOfParts != nil {
+ return *x.NumberOfParts
+ }
+ return 0
+}
+
+type ListhtlcsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+}
+
+func (x *ListhtlcsRequest) Reset() {
+ *x = ListhtlcsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[214]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListhtlcsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListhtlcsRequest) ProtoMessage() {}
+
+func (x *ListhtlcsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[214]
+ 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 ListhtlcsRequest.ProtoReflect.Descriptor instead.
+func (*ListhtlcsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{214}
+}
+
+func (x *ListhtlcsRequest) GetId() string {
+ if x != nil && x.Id != nil {
+ return *x.Id
+ }
+ return ""
+}
+
+type ListhtlcsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Htlcs []*ListhtlcsHtlcs `protobuf:"bytes,1,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
+}
+
+func (x *ListhtlcsResponse) Reset() {
+ *x = ListhtlcsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[215]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListhtlcsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListhtlcsResponse) ProtoMessage() {}
+
+func (x *ListhtlcsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[215]
+ 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 ListhtlcsResponse.ProtoReflect.Descriptor instead.
+func (*ListhtlcsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{215}
+}
+
+func (x *ListhtlcsResponse) GetHtlcs() []*ListhtlcsHtlcs {
+ if x != nil {
+ return x.Htlcs
+ }
+ return nil
+}
+
+type ListhtlcsHtlcs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ShortChannelId string `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
+ Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
+ Expiry uint32 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ Direction ListhtlcsHtlcs_ListhtlcsHtlcsDirection `protobuf:"varint,5,opt,name=direction,proto3,enum=cln.ListhtlcsHtlcs_ListhtlcsHtlcsDirection" json:"direction,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ State HtlcState `protobuf:"varint,7,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
+}
+
+func (x *ListhtlcsHtlcs) Reset() {
+ *x = ListhtlcsHtlcs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[216]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListhtlcsHtlcs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListhtlcsHtlcs) ProtoMessage() {}
+
+func (x *ListhtlcsHtlcs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[216]
+ 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 ListhtlcsHtlcs.ProtoReflect.Descriptor instead.
+func (*ListhtlcsHtlcs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{216}
+}
+
+func (x *ListhtlcsHtlcs) GetShortChannelId() string {
+ if x != nil {
+ return x.ShortChannelId
+ }
+ return ""
+}
+
+func (x *ListhtlcsHtlcs) GetId() uint64 {
+ if x != nil {
+ return x.Id
+ }
+ return 0
+}
+
+func (x *ListhtlcsHtlcs) GetExpiry() uint32 {
+ if x != nil {
+ return x.Expiry
+ }
+ return 0
+}
+
+func (x *ListhtlcsHtlcs) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *ListhtlcsHtlcs) GetDirection() ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
+ if x != nil {
+ return x.Direction
+ }
+ return ListhtlcsHtlcs_OUT
+}
+
+func (x *ListhtlcsHtlcs) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *ListhtlcsHtlcs) GetState() HtlcState {
+ if x != nil {
+ return x.State
+ }
+ return HtlcState_SentAddHtlc
+}
+
+type MultifundchannelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Destinations []*MultifundchannelDestinations `protobuf:"bytes,1,rep,name=destinations,proto3" json:"destinations,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Minconf *int64 `protobuf:"zigzag64,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+ Minchannels *int64 `protobuf:"zigzag64,5,opt,name=minchannels,proto3,oneof" json:"minchannels,omitempty"`
+ CommitmentFeerate *Feerate `protobuf:"bytes,6,opt,name=commitment_feerate,json=commitmentFeerate,proto3,oneof" json:"commitment_feerate,omitempty"`
+}
+
+func (x *MultifundchannelRequest) Reset() {
+ *x = MultifundchannelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[217]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelRequest) ProtoMessage() {}
+
+func (x *MultifundchannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[217]
+ 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 MultifundchannelRequest.ProtoReflect.Descriptor instead.
+func (*MultifundchannelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{217}
+}
+
+func (x *MultifundchannelRequest) GetDestinations() []*MultifundchannelDestinations {
+ if x != nil {
+ return x.Destinations
+ }
+ return nil
+}
+
+func (x *MultifundchannelRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+func (x *MultifundchannelRequest) GetMinconf() int64 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
+ }
+ return 0
+}
+
+func (x *MultifundchannelRequest) GetUtxos() []*Outpoint {
+ if x != nil {
+ return x.Utxos
+ }
+ return nil
+}
+
+func (x *MultifundchannelRequest) GetMinchannels() int64 {
+ if x != nil && x.Minchannels != nil {
+ return *x.Minchannels
+ }
+ return 0
+}
+
+func (x *MultifundchannelRequest) GetCommitmentFeerate() *Feerate {
+ if x != nil {
+ return x.CommitmentFeerate
+ }
+ return nil
+}
+
+type MultifundchannelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+ ChannelIds []*MultifundchannelChannelIds `protobuf:"bytes,3,rep,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
+ Failed []*MultifundchannelFailed `protobuf:"bytes,4,rep,name=failed,proto3" json:"failed,omitempty"`
+}
+
+func (x *MultifundchannelResponse) Reset() {
+ *x = MultifundchannelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[218]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelResponse) ProtoMessage() {}
+
+func (x *MultifundchannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[218]
+ 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 MultifundchannelResponse.ProtoReflect.Descriptor instead.
+func (*MultifundchannelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{218}
+}
+
+func (x *MultifundchannelResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *MultifundchannelResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *MultifundchannelResponse) GetChannelIds() []*MultifundchannelChannelIds {
+ if x != nil {
+ return x.ChannelIds
+ }
+ return nil
+}
+
+func (x *MultifundchannelResponse) GetFailed() []*MultifundchannelFailed {
+ if x != nil {
+ return x.Failed
+ }
+ return nil
+}
+
+type MultifundchannelDestinations struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Amount *AmountOrAll `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"`
+ Announce *bool `protobuf:"varint,3,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
+ PushMsat *Amount `protobuf:"bytes,4,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
+ CloseTo *string `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ RequestAmt *Amount `protobuf:"bytes,6,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
+ CompactLease *string `protobuf:"bytes,7,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
+ Mindepth *uint32 `protobuf:"varint,8,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
+ Reserve *Amount `protobuf:"bytes,9,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+}
+
+func (x *MultifundchannelDestinations) Reset() {
+ *x = MultifundchannelDestinations{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[219]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelDestinations) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelDestinations) ProtoMessage() {}
+
+func (x *MultifundchannelDestinations) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[219]
+ 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 MultifundchannelDestinations.ProtoReflect.Descriptor instead.
+func (*MultifundchannelDestinations) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{219}
+}
+
+func (x *MultifundchannelDestinations) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+func (x *MultifundchannelDestinations) GetAmount() *AmountOrAll {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+func (x *MultifundchannelDestinations) GetAnnounce() bool {
+ if x != nil && x.Announce != nil {
+ return *x.Announce
+ }
+ return false
+}
+
+func (x *MultifundchannelDestinations) GetPushMsat() *Amount {
+ if x != nil {
+ return x.PushMsat
+ }
+ return nil
+}
+
+func (x *MultifundchannelDestinations) GetCloseTo() string {
+ if x != nil && x.CloseTo != nil {
+ return *x.CloseTo
+ }
+ return ""
+}
+
+func (x *MultifundchannelDestinations) GetRequestAmt() *Amount {
+ if x != nil {
+ return x.RequestAmt
+ }
+ return nil
+}
+
+func (x *MultifundchannelDestinations) GetCompactLease() string {
+ if x != nil && x.CompactLease != nil {
+ return *x.CompactLease
+ }
+ return ""
+}
+
+func (x *MultifundchannelDestinations) GetMindepth() uint32 {
+ if x != nil && x.Mindepth != nil {
+ return *x.Mindepth
+ }
+ return 0
+}
+
+func (x *MultifundchannelDestinations) GetReserve() *Amount {
+ if x != nil {
+ return x.Reserve
+ }
+ return nil
+}
+
+type MultifundchannelChannelIds struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
+ ChannelId []byte `protobuf:"bytes,3,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ChannelType *MultifundchannelChannelIdsChannelType `protobuf:"bytes,4,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+ CloseTo []byte `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+}
+
+func (x *MultifundchannelChannelIds) Reset() {
+ *x = MultifundchannelChannelIds{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[220]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelChannelIds) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelChannelIds) ProtoMessage() {}
+
+func (x *MultifundchannelChannelIds) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[220]
+ 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 MultifundchannelChannelIds.ProtoReflect.Descriptor instead.
+func (*MultifundchannelChannelIds) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{220}
+}
+
+func (x *MultifundchannelChannelIds) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *MultifundchannelChannelIds) GetOutnum() uint32 {
+ if x != nil {
+ return x.Outnum
+ }
+ return 0
+}
+
+func (x *MultifundchannelChannelIds) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *MultifundchannelChannelIds) GetChannelType() *MultifundchannelChannelIdsChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *MultifundchannelChannelIds) GetCloseTo() []byte {
+ if x != nil {
+ return x.CloseTo
+ }
+ return nil
+}
+
+type MultifundchannelChannelIdsChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *MultifundchannelChannelIdsChannelType) Reset() {
+ *x = MultifundchannelChannelIdsChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[221]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelChannelIdsChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelChannelIdsChannelType) ProtoMessage() {}
+
+func (x *MultifundchannelChannelIdsChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[221]
+ 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 MultifundchannelChannelIdsChannelType.ProtoReflect.Descriptor instead.
+func (*MultifundchannelChannelIdsChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{221}
+}
+
+func (x *MultifundchannelChannelIdsChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *MultifundchannelChannelIdsChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type MultifundchannelFailed struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Method MultifundchannelFailed_MultifundchannelFailedMethod `protobuf:"varint,2,opt,name=method,proto3,enum=cln.MultifundchannelFailed_MultifundchannelFailedMethod" json:"method,omitempty"`
+ Error *MultifundchannelFailedError `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"`
+}
+
+func (x *MultifundchannelFailed) Reset() {
+ *x = MultifundchannelFailed{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[222]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelFailed) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelFailed) ProtoMessage() {}
+
+func (x *MultifundchannelFailed) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[222]
+ 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 MultifundchannelFailed.ProtoReflect.Descriptor instead.
+func (*MultifundchannelFailed) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{222}
+}
+
+func (x *MultifundchannelFailed) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *MultifundchannelFailed) GetMethod() MultifundchannelFailed_MultifundchannelFailedMethod {
+ if x != nil {
+ return x.Method
+ }
+ return MultifundchannelFailed_CONNECT
+}
+
+func (x *MultifundchannelFailed) GetError() *MultifundchannelFailedError {
+ if x != nil {
+ return x.Error
+ }
+ return nil
+}
+
+type MultifundchannelFailedError struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Code int64 `protobuf:"zigzag64,1,opt,name=code,proto3" json:"code,omitempty"`
+ Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *MultifundchannelFailedError) Reset() {
+ *x = MultifundchannelFailedError{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[223]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultifundchannelFailedError) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultifundchannelFailedError) ProtoMessage() {}
+
+func (x *MultifundchannelFailedError) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[223]
+ 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 MultifundchannelFailedError.ProtoReflect.Descriptor instead.
+func (*MultifundchannelFailedError) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{223}
+}
+
+func (x *MultifundchannelFailedError) GetCode() int64 {
+ if x != nil {
+ return x.Code
+ }
+ return 0
+}
+
+func (x *MultifundchannelFailedError) GetMessage() string {
+ if x != nil {
+ return x.Message
+ }
+ return ""
+}
+
+type MultiwithdrawRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Outputs []*OutputDesc `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
+ Feerate *Feerate `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Minconf *uint32 `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
+ Utxos []*Outpoint `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
+}
+
+func (x *MultiwithdrawRequest) Reset() {
+ *x = MultiwithdrawRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[224]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultiwithdrawRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultiwithdrawRequest) ProtoMessage() {}
+
+func (x *MultiwithdrawRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[224]
+ 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 MultiwithdrawRequest.ProtoReflect.Descriptor instead.
+func (*MultiwithdrawRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{224}
+}
+
+func (x *MultiwithdrawRequest) GetOutputs() []*OutputDesc {
+ if x != nil {
+ return x.Outputs
+ }
+ return nil
+}
+
+func (x *MultiwithdrawRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+func (x *MultiwithdrawRequest) GetMinconf() uint32 {
+ if x != nil && x.Minconf != nil {
+ return *x.Minconf
+ }
+ return 0
+}
+
+func (x *MultiwithdrawRequest) GetUtxos() []*Outpoint {
+ if x != nil {
+ return x.Utxos
+ }
+ return nil
+}
+
+type MultiwithdrawResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+}
+
+func (x *MultiwithdrawResponse) Reset() {
+ *x = MultiwithdrawResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[225]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MultiwithdrawResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MultiwithdrawResponse) ProtoMessage() {}
+
+func (x *MultiwithdrawResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[225]
+ 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 MultiwithdrawResponse.ProtoReflect.Descriptor instead.
+func (*MultiwithdrawResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{225}
+}
+
+func (x *MultiwithdrawResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *MultiwithdrawResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+type OfferRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Amount string `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ Issuer *string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"`
+ Label *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ QuantityMax *uint64 `protobuf:"varint,5,opt,name=quantity_max,json=quantityMax,proto3,oneof" json:"quantity_max,omitempty"`
+ AbsoluteExpiry *uint64 `protobuf:"varint,6,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof" json:"absolute_expiry,omitempty"`
+ Recurrence *string `protobuf:"bytes,7,opt,name=recurrence,proto3,oneof" json:"recurrence,omitempty"`
+ RecurrenceBase *string `protobuf:"bytes,8,opt,name=recurrence_base,json=recurrenceBase,proto3,oneof" json:"recurrence_base,omitempty"`
+ RecurrencePaywindow *string `protobuf:"bytes,9,opt,name=recurrence_paywindow,json=recurrencePaywindow,proto3,oneof" json:"recurrence_paywindow,omitempty"`
+ RecurrenceLimit *uint32 `protobuf:"varint,10,opt,name=recurrence_limit,json=recurrenceLimit,proto3,oneof" json:"recurrence_limit,omitempty"`
+ SingleUse *bool `protobuf:"varint,11,opt,name=single_use,json=singleUse,proto3,oneof" json:"single_use,omitempty"`
+}
+
+func (x *OfferRequest) Reset() {
+ *x = OfferRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[226]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OfferRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OfferRequest) ProtoMessage() {}
+
+func (x *OfferRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[226]
+ 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 OfferRequest.ProtoReflect.Descriptor instead.
+func (*OfferRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{226}
+}
+
+func (x *OfferRequest) GetAmount() string {
+ if x != nil {
+ return x.Amount
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetIssuer() string {
+ if x != nil && x.Issuer != nil {
+ return *x.Issuer
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetQuantityMax() uint64 {
+ if x != nil && x.QuantityMax != nil {
+ return *x.QuantityMax
+ }
+ return 0
+}
+
+func (x *OfferRequest) GetAbsoluteExpiry() uint64 {
+ if x != nil && x.AbsoluteExpiry != nil {
+ return *x.AbsoluteExpiry
+ }
+ return 0
+}
+
+func (x *OfferRequest) GetRecurrence() string {
+ if x != nil && x.Recurrence != nil {
+ return *x.Recurrence
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetRecurrenceBase() string {
+ if x != nil && x.RecurrenceBase != nil {
+ return *x.RecurrenceBase
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetRecurrencePaywindow() string {
+ if x != nil && x.RecurrencePaywindow != nil {
+ return *x.RecurrencePaywindow
+ }
+ return ""
+}
+
+func (x *OfferRequest) GetRecurrenceLimit() uint32 {
+ if x != nil && x.RecurrenceLimit != nil {
+ return *x.RecurrenceLimit
+ }
+ return 0
+}
+
+func (x *OfferRequest) GetSingleUse() bool {
+ if x != nil && x.SingleUse != nil {
+ return *x.SingleUse
+ }
+ return false
+}
+
+type OfferResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ SingleUse bool `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
+ Bolt12 string `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
+ Used bool `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
+ Created bool `protobuf:"varint,6,opt,name=created,proto3" json:"created,omitempty"`
+ Label *string `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
+}
+
+func (x *OfferResponse) Reset() {
+ *x = OfferResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[227]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OfferResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OfferResponse) ProtoMessage() {}
+
+func (x *OfferResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[227]
+ 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 OfferResponse.ProtoReflect.Descriptor instead.
+func (*OfferResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{227}
+}
+
+func (x *OfferResponse) GetOfferId() []byte {
+ if x != nil {
+ return x.OfferId
+ }
+ return nil
+}
+
+func (x *OfferResponse) GetActive() bool {
+ if x != nil {
+ return x.Active
+ }
+ return false
+}
+
+func (x *OfferResponse) GetSingleUse() bool {
+ if x != nil {
+ return x.SingleUse
+ }
+ return false
+}
+
+func (x *OfferResponse) GetBolt12() string {
+ if x != nil {
+ return x.Bolt12
+ }
+ return ""
+}
+
+func (x *OfferResponse) GetUsed() bool {
+ if x != nil {
+ return x.Used
+ }
+ return false
+}
+
+func (x *OfferResponse) GetCreated() bool {
+ if x != nil {
+ return x.Created
+ }
+ return false
+}
+
+func (x *OfferResponse) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+type OpenchannelAbortRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *OpenchannelAbortRequest) Reset() {
+ *x = OpenchannelAbortRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[228]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelAbortRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelAbortRequest) ProtoMessage() {}
+
+func (x *OpenchannelAbortRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[228]
+ 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 OpenchannelAbortRequest.ProtoReflect.Descriptor instead.
+func (*OpenchannelAbortRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{228}
+}
+
+func (x *OpenchannelAbortRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+type OpenchannelAbortResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ChannelCanceled bool `protobuf:"varint,2,opt,name=channel_canceled,json=channelCanceled,proto3" json:"channel_canceled,omitempty"`
+ Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"`
+}
+
+func (x *OpenchannelAbortResponse) Reset() {
+ *x = OpenchannelAbortResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[229]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelAbortResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelAbortResponse) ProtoMessage() {}
+
+func (x *OpenchannelAbortResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[229]
+ 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 OpenchannelAbortResponse.ProtoReflect.Descriptor instead.
+func (*OpenchannelAbortResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{229}
+}
+
+func (x *OpenchannelAbortResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelAbortResponse) GetChannelCanceled() bool {
+ if x != nil {
+ return x.ChannelCanceled
+ }
+ return false
+}
+
+func (x *OpenchannelAbortResponse) GetReason() string {
+ if x != nil {
+ return x.Reason
+ }
+ return ""
+}
+
+type OpenchannelBumpRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Initialpsbt string `protobuf:"bytes,2,opt,name=initialpsbt,proto3" json:"initialpsbt,omitempty"`
+ FundingFeerate *Feerate `protobuf:"bytes,3,opt,name=funding_feerate,json=fundingFeerate,proto3,oneof" json:"funding_feerate,omitempty"`
+ Amount *Amount `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"`
+}
+
+func (x *OpenchannelBumpRequest) Reset() {
+ *x = OpenchannelBumpRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[230]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelBumpRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelBumpRequest) ProtoMessage() {}
+
+func (x *OpenchannelBumpRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[230]
+ 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 OpenchannelBumpRequest.ProtoReflect.Descriptor instead.
+func (*OpenchannelBumpRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{230}
+}
+
+func (x *OpenchannelBumpRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelBumpRequest) GetInitialpsbt() string {
+ if x != nil {
+ return x.Initialpsbt
+ }
+ return ""
+}
+
+func (x *OpenchannelBumpRequest) GetFundingFeerate() *Feerate {
+ if x != nil {
+ return x.FundingFeerate
+ }
+ return nil
+}
+
+func (x *OpenchannelBumpRequest) GetAmount() *Amount {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+type OpenchannelBumpResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ChannelType *OpenchannelBumpChannelType `protobuf:"bytes,2,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+ Psbt string `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ CommitmentsSecured bool `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
+ FundingSerial uint64 `protobuf:"varint,5,opt,name=funding_serial,json=fundingSerial,proto3" json:"funding_serial,omitempty"`
+ RequiresConfirmedInputs *bool `protobuf:"varint,6,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
+}
+
+func (x *OpenchannelBumpResponse) Reset() {
+ *x = OpenchannelBumpResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[231]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelBumpResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelBumpResponse) ProtoMessage() {}
+
+func (x *OpenchannelBumpResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[231]
+ 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 OpenchannelBumpResponse.ProtoReflect.Descriptor instead.
+func (*OpenchannelBumpResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{231}
+}
+
+func (x *OpenchannelBumpResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelBumpResponse) GetChannelType() *OpenchannelBumpChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *OpenchannelBumpResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *OpenchannelBumpResponse) GetCommitmentsSecured() bool {
+ if x != nil {
+ return x.CommitmentsSecured
+ }
+ return false
+}
+
+func (x *OpenchannelBumpResponse) GetFundingSerial() uint64 {
+ if x != nil {
+ return x.FundingSerial
+ }
+ return 0
+}
+
+func (x *OpenchannelBumpResponse) GetRequiresConfirmedInputs() bool {
+ if x != nil && x.RequiresConfirmedInputs != nil {
+ return *x.RequiresConfirmedInputs
+ }
+ return false
+}
+
+type OpenchannelBumpChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *OpenchannelBumpChannelType) Reset() {
+ *x = OpenchannelBumpChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[232]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelBumpChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelBumpChannelType) ProtoMessage() {}
+
+func (x *OpenchannelBumpChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[232]
+ 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 OpenchannelBumpChannelType.ProtoReflect.Descriptor instead.
+func (*OpenchannelBumpChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{232}
+}
+
+func (x *OpenchannelBumpChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *OpenchannelBumpChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type OpenchannelInitRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Initialpsbt string `protobuf:"bytes,2,opt,name=initialpsbt,proto3" json:"initialpsbt,omitempty"`
+ CommitmentFeerate *Feerate `protobuf:"bytes,3,opt,name=commitment_feerate,json=commitmentFeerate,proto3,oneof" json:"commitment_feerate,omitempty"`
+ FundingFeerate *Feerate `protobuf:"bytes,4,opt,name=funding_feerate,json=fundingFeerate,proto3,oneof" json:"funding_feerate,omitempty"`
+ Announce *bool `protobuf:"varint,5,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
+ CloseTo *string `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ RequestAmt *Amount `protobuf:"bytes,7,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
+ CompactLease []byte `protobuf:"bytes,8,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
+ ChannelType []uint32 `protobuf:"varint,9,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
+ Amount *Amount `protobuf:"bytes,10,opt,name=amount,proto3" json:"amount,omitempty"`
+}
+
+func (x *OpenchannelInitRequest) Reset() {
+ *x = OpenchannelInitRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[233]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelInitRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelInitRequest) ProtoMessage() {}
+
+func (x *OpenchannelInitRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[233]
+ 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 OpenchannelInitRequest.ProtoReflect.Descriptor instead.
+func (*OpenchannelInitRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{233}
+}
+
+func (x *OpenchannelInitRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetInitialpsbt() string {
+ if x != nil {
+ return x.Initialpsbt
+ }
+ return ""
+}
+
+func (x *OpenchannelInitRequest) GetCommitmentFeerate() *Feerate {
+ if x != nil {
+ return x.CommitmentFeerate
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetFundingFeerate() *Feerate {
+ if x != nil {
+ return x.FundingFeerate
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetAnnounce() bool {
+ if x != nil && x.Announce != nil {
+ return *x.Announce
+ }
+ return false
+}
+
+func (x *OpenchannelInitRequest) GetCloseTo() string {
+ if x != nil && x.CloseTo != nil {
+ return *x.CloseTo
+ }
+ return ""
+}
+
+func (x *OpenchannelInitRequest) GetRequestAmt() *Amount {
+ if x != nil {
+ return x.RequestAmt
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetCompactLease() []byte {
+ if x != nil {
+ return x.CompactLease
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetChannelType() []uint32 {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *OpenchannelInitRequest) GetAmount() *Amount {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+type OpenchannelInitResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ ChannelType *OpenchannelInitChannelType `protobuf:"bytes,3,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+ CommitmentsSecured bool `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
+ FundingSerial uint64 `protobuf:"varint,5,opt,name=funding_serial,json=fundingSerial,proto3" json:"funding_serial,omitempty"`
+ RequiresConfirmedInputs *bool `protobuf:"varint,6,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
+}
+
+func (x *OpenchannelInitResponse) Reset() {
+ *x = OpenchannelInitResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[234]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelInitResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelInitResponse) ProtoMessage() {}
+
+func (x *OpenchannelInitResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[234]
+ 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 OpenchannelInitResponse.ProtoReflect.Descriptor instead.
+func (*OpenchannelInitResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{234}
+}
+
+func (x *OpenchannelInitResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelInitResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *OpenchannelInitResponse) GetChannelType() *OpenchannelInitChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *OpenchannelInitResponse) GetCommitmentsSecured() bool {
+ if x != nil {
+ return x.CommitmentsSecured
+ }
+ return false
+}
+
+func (x *OpenchannelInitResponse) GetFundingSerial() uint64 {
+ if x != nil {
+ return x.FundingSerial
+ }
+ return 0
+}
+
+func (x *OpenchannelInitResponse) GetRequiresConfirmedInputs() bool {
+ if x != nil && x.RequiresConfirmedInputs != nil {
+ return *x.RequiresConfirmedInputs
+ }
+ return false
+}
+
+type OpenchannelInitChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *OpenchannelInitChannelType) Reset() {
+ *x = OpenchannelInitChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[235]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelInitChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelInitChannelType) ProtoMessage() {}
+
+func (x *OpenchannelInitChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[235]
+ 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 OpenchannelInitChannelType.ProtoReflect.Descriptor instead.
+func (*OpenchannelInitChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{235}
+}
+
+func (x *OpenchannelInitChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *OpenchannelInitChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type OpenchannelSignedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ SignedPsbt string `protobuf:"bytes,2,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"`
+}
+
+func (x *OpenchannelSignedRequest) Reset() {
+ *x = OpenchannelSignedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[236]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelSignedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelSignedRequest) ProtoMessage() {}
+
+func (x *OpenchannelSignedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[236]
+ 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 OpenchannelSignedRequest.ProtoReflect.Descriptor instead.
+func (*OpenchannelSignedRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{236}
+}
+
+func (x *OpenchannelSignedRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelSignedRequest) GetSignedPsbt() string {
+ if x != nil {
+ return x.SignedPsbt
+ }
+ return ""
+}
+
+type OpenchannelSignedResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Tx []byte `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
+}
+
+func (x *OpenchannelSignedResponse) Reset() {
+ *x = OpenchannelSignedResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[237]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelSignedResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelSignedResponse) ProtoMessage() {}
+
+func (x *OpenchannelSignedResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[237]
+ 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 OpenchannelSignedResponse.ProtoReflect.Descriptor instead.
+func (*OpenchannelSignedResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{237}
+}
+
+func (x *OpenchannelSignedResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelSignedResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *OpenchannelSignedResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+type OpenchannelUpdateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
+}
+
+func (x *OpenchannelUpdateRequest) Reset() {
+ *x = OpenchannelUpdateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[238]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelUpdateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelUpdateRequest) ProtoMessage() {}
+
+func (x *OpenchannelUpdateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[238]
+ 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 OpenchannelUpdateRequest.ProtoReflect.Descriptor instead.
+func (*OpenchannelUpdateRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{238}
+}
+
+func (x *OpenchannelUpdateRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelUpdateRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+type OpenchannelUpdateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ChannelType *OpenchannelUpdateChannelType `protobuf:"bytes,2,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
+ Psbt string `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ CommitmentsSecured bool `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
+ FundingOutnum uint32 `protobuf:"varint,5,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
+ CloseTo []byte `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
+ RequiresConfirmedInputs *bool `protobuf:"varint,7,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
+}
+
+func (x *OpenchannelUpdateResponse) Reset() {
+ *x = OpenchannelUpdateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[239]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelUpdateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelUpdateResponse) ProtoMessage() {}
+
+func (x *OpenchannelUpdateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[239]
+ 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 OpenchannelUpdateResponse.ProtoReflect.Descriptor instead.
+func (*OpenchannelUpdateResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{239}
+}
+
+func (x *OpenchannelUpdateResponse) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *OpenchannelUpdateResponse) GetChannelType() *OpenchannelUpdateChannelType {
+ if x != nil {
+ return x.ChannelType
+ }
+ return nil
+}
+
+func (x *OpenchannelUpdateResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *OpenchannelUpdateResponse) GetCommitmentsSecured() bool {
+ if x != nil {
+ return x.CommitmentsSecured
+ }
+ return false
+}
+
+func (x *OpenchannelUpdateResponse) GetFundingOutnum() uint32 {
+ if x != nil {
+ return x.FundingOutnum
+ }
+ return 0
+}
+
+func (x *OpenchannelUpdateResponse) GetCloseTo() []byte {
+ if x != nil {
+ return x.CloseTo
+ }
+ return nil
+}
+
+func (x *OpenchannelUpdateResponse) GetRequiresConfirmedInputs() bool {
+ if x != nil && x.RequiresConfirmedInputs != nil {
+ return *x.RequiresConfirmedInputs
+ }
+ return false
+}
+
+type OpenchannelUpdateChannelType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bits []uint32 `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
+ Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
+}
+
+func (x *OpenchannelUpdateChannelType) Reset() {
+ *x = OpenchannelUpdateChannelType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[240]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OpenchannelUpdateChannelType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OpenchannelUpdateChannelType) ProtoMessage() {}
+
+func (x *OpenchannelUpdateChannelType) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[240]
+ 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 OpenchannelUpdateChannelType.ProtoReflect.Descriptor instead.
+func (*OpenchannelUpdateChannelType) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{240}
+}
+
+func (x *OpenchannelUpdateChannelType) GetBits() []uint32 {
+ if x != nil {
+ return x.Bits
+ }
+ return nil
+}
+
+func (x *OpenchannelUpdateChannelType) GetNames() []ChannelTypeName {
+ if x != nil {
+ return x.Names
+ }
+ return nil
+}
+
+type PingRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Len *uint32 `protobuf:"varint,2,opt,name=len,proto3,oneof" json:"len,omitempty"`
+ Pongbytes *uint32 `protobuf:"varint,3,opt,name=pongbytes,proto3,oneof" json:"pongbytes,omitempty"`
+}
+
+func (x *PingRequest) Reset() {
+ *x = PingRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[241]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PingRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PingRequest) ProtoMessage() {}
+
+func (x *PingRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[241]
+ 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 PingRequest.ProtoReflect.Descriptor instead.
+func (*PingRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{241}
+}
+
+func (x *PingRequest) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *PingRequest) GetLen() uint32 {
+ if x != nil && x.Len != nil {
+ return *x.Len
+ }
+ return 0
+}
+
+func (x *PingRequest) GetPongbytes() uint32 {
+ if x != nil && x.Pongbytes != nil {
+ return *x.Pongbytes
+ }
+ return 0
+}
+
+type PingResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Totlen uint32 `protobuf:"varint,1,opt,name=totlen,proto3" json:"totlen,omitempty"`
+}
+
+func (x *PingResponse) Reset() {
+ *x = PingResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[242]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PingResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PingResponse) ProtoMessage() {}
+
+func (x *PingResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[242]
+ 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 PingResponse.ProtoReflect.Descriptor instead.
+func (*PingResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{242}
+}
+
+func (x *PingResponse) GetTotlen() uint32 {
+ if x != nil {
+ return x.Totlen
+ }
+ return 0
+}
+
+type PluginRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Subcommand PluginSubcommand `protobuf:"varint,1,opt,name=subcommand,proto3,enum=cln.PluginSubcommand" json:"subcommand,omitempty"`
+ Plugin *string `protobuf:"bytes,2,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
+ Directory *string `protobuf:"bytes,3,opt,name=directory,proto3,oneof" json:"directory,omitempty"`
+ Options []string `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"`
+}
+
+func (x *PluginRequest) Reset() {
+ *x = PluginRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[243]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PluginRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PluginRequest) ProtoMessage() {}
+
+func (x *PluginRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[243]
+ 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 PluginRequest.ProtoReflect.Descriptor instead.
+func (*PluginRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{243}
+}
+
+func (x *PluginRequest) GetSubcommand() PluginSubcommand {
+ if x != nil {
+ return x.Subcommand
+ }
+ return PluginSubcommand_START
+}
+
+func (x *PluginRequest) GetPlugin() string {
+ if x != nil && x.Plugin != nil {
+ return *x.Plugin
+ }
+ return ""
+}
+
+func (x *PluginRequest) GetDirectory() string {
+ if x != nil && x.Directory != nil {
+ return *x.Directory
+ }
+ return ""
+}
+
+func (x *PluginRequest) GetOptions() []string {
+ if x != nil {
+ return x.Options
+ }
+ return nil
+}
+
+type PluginResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Command PluginSubcommand `protobuf:"varint,1,opt,name=command,proto3,enum=cln.PluginSubcommand" json:"command,omitempty"`
+ Plugins []*PluginPlugins `protobuf:"bytes,2,rep,name=plugins,proto3" json:"plugins,omitempty"`
+ Result *string `protobuf:"bytes,3,opt,name=result,proto3,oneof" json:"result,omitempty"`
+}
+
+func (x *PluginResponse) Reset() {
+ *x = PluginResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[244]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PluginResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PluginResponse) ProtoMessage() {}
+
+func (x *PluginResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[244]
+ 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 PluginResponse.ProtoReflect.Descriptor instead.
+func (*PluginResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{244}
+}
+
+func (x *PluginResponse) GetCommand() PluginSubcommand {
+ if x != nil {
+ return x.Command
+ }
+ return PluginSubcommand_START
+}
+
+func (x *PluginResponse) GetPlugins() []*PluginPlugins {
+ if x != nil {
+ return x.Plugins
+ }
+ return nil
+}
+
+func (x *PluginResponse) GetResult() string {
+ if x != nil && x.Result != nil {
+ return *x.Result
+ }
+ return ""
+}
+
+type PluginPlugins struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
+ Dynamic bool `protobuf:"varint,3,opt,name=dynamic,proto3" json:"dynamic,omitempty"`
+}
+
+func (x *PluginPlugins) Reset() {
+ *x = PluginPlugins{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[245]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PluginPlugins) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PluginPlugins) ProtoMessage() {}
+
+func (x *PluginPlugins) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[245]
+ 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 PluginPlugins.ProtoReflect.Descriptor instead.
+func (*PluginPlugins) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{245}
+}
+
+func (x *PluginPlugins) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *PluginPlugins) GetActive() bool {
+ if x != nil {
+ return x.Active
+ }
+ return false
+}
+
+func (x *PluginPlugins) GetDynamic() bool {
+ if x != nil {
+ return x.Dynamic
+ }
+ return false
+}
+
+type RenepaystatusRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invstring *string `protobuf:"bytes,1,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
+}
+
+func (x *RenepaystatusRequest) Reset() {
+ *x = RenepaystatusRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[246]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RenepaystatusRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RenepaystatusRequest) ProtoMessage() {}
+
+func (x *RenepaystatusRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[246]
+ 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 RenepaystatusRequest.ProtoReflect.Descriptor instead.
+func (*RenepaystatusRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{246}
+}
+
+func (x *RenepaystatusRequest) GetInvstring() string {
+ if x != nil && x.Invstring != nil {
+ return *x.Invstring
+ }
+ return ""
+}
+
+type RenepaystatusResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Paystatus []*RenepaystatusPaystatus `protobuf:"bytes,1,rep,name=paystatus,proto3" json:"paystatus,omitempty"`
+}
+
+func (x *RenepaystatusResponse) Reset() {
+ *x = RenepaystatusResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[247]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RenepaystatusResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RenepaystatusResponse) ProtoMessage() {}
+
+func (x *RenepaystatusResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[247]
+ 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 RenepaystatusResponse.ProtoReflect.Descriptor instead.
+func (*RenepaystatusResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{247}
+}
+
+func (x *RenepaystatusResponse) GetPaystatus() []*RenepaystatusPaystatus {
+ if x != nil {
+ return x.Paystatus
+ }
+ return nil
+}
+
+type RenepaystatusPaystatus struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,2,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ CreatedAt float64 `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Groupid uint32 `protobuf:"varint,5,opt,name=groupid,proto3" json:"groupid,omitempty"`
+ Parts *uint32 `protobuf:"varint,6,opt,name=parts,proto3,oneof" json:"parts,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,7,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3,oneof" json:"amount_sent_msat,omitempty"`
+ Status RenepaystatusPaystatus_RenepaystatusPaystatusStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.RenepaystatusPaystatus_RenepaystatusPaystatusStatus" json:"status,omitempty"`
+ Destination []byte `protobuf:"bytes,10,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+ Notes []string `protobuf:"bytes,11,rep,name=notes,proto3" json:"notes,omitempty"`
+}
+
+func (x *RenepaystatusPaystatus) Reset() {
+ *x = RenepaystatusPaystatus{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[248]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RenepaystatusPaystatus) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RenepaystatusPaystatus) ProtoMessage() {}
+
+func (x *RenepaystatusPaystatus) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[248]
+ 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 RenepaystatusPaystatus.ProtoReflect.Descriptor instead.
+func (*RenepaystatusPaystatus) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{248}
+}
+
+func (x *RenepaystatusPaystatus) GetBolt11() string {
+ if x != nil {
+ return x.Bolt11
+ }
+ return ""
+}
+
+func (x *RenepaystatusPaystatus) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+func (x *RenepaystatusPaystatus) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *RenepaystatusPaystatus) GetCreatedAt() float64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
+}
+
+func (x *RenepaystatusPaystatus) GetGroupid() uint32 {
+ if x != nil {
+ return x.Groupid
+ }
+ return 0
+}
+
+func (x *RenepaystatusPaystatus) GetParts() uint32 {
+ if x != nil && x.Parts != nil {
+ return *x.Parts
+ }
+ return 0
+}
+
+func (x *RenepaystatusPaystatus) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *RenepaystatusPaystatus) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
+ }
+ return nil
+}
+
+func (x *RenepaystatusPaystatus) GetStatus() RenepaystatusPaystatus_RenepaystatusPaystatusStatus {
+ if x != nil {
+ return x.Status
+ }
+ return RenepaystatusPaystatus_COMPLETE
+}
+
+func (x *RenepaystatusPaystatus) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+func (x *RenepaystatusPaystatus) GetNotes() []string {
+ if x != nil {
+ return x.Notes
+ }
+ return nil
+}
+
+type RenepayRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Maxfee *Amount `protobuf:"bytes,3,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
+ Maxdelay *uint32 `protobuf:"varint,4,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
+ RetryFor *uint32 `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
+ Description *string `protobuf:"bytes,6,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ Label *string `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ DevUseShadow *bool `protobuf:"varint,8,opt,name=dev_use_shadow,json=devUseShadow,proto3,oneof" json:"dev_use_shadow,omitempty"`
+}
+
+func (x *RenepayRequest) Reset() {
+ *x = RenepayRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[249]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RenepayRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RenepayRequest) ProtoMessage() {}
+
+func (x *RenepayRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[249]
+ 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 RenepayRequest.ProtoReflect.Descriptor instead.
+func (*RenepayRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{249}
+}
+
+func (x *RenepayRequest) GetInvstring() string {
+ if x != nil {
+ return x.Invstring
+ }
+ return ""
+}
+
+func (x *RenepayRequest) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *RenepayRequest) GetMaxfee() *Amount {
+ if x != nil {
+ return x.Maxfee
+ }
+ return nil
+}
+
+func (x *RenepayRequest) GetMaxdelay() uint32 {
+ if x != nil && x.Maxdelay != nil {
+ return *x.Maxdelay
+ }
+ return 0
+}
+
+func (x *RenepayRequest) GetRetryFor() uint32 {
+ if x != nil && x.RetryFor != nil {
+ return *x.RetryFor
+ }
+ return 0
+}
+
+func (x *RenepayRequest) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *RenepayRequest) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *RenepayRequest) GetDevUseShadow() bool {
+ if x != nil && x.DevUseShadow != nil {
+ return *x.DevUseShadow
+ }
+ return false
+}
+
+type RenepayResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PaymentPreimage []byte `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ CreatedAt float64 `protobuf:"fixed64,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ Parts uint32 `protobuf:"varint,4,opt,name=parts,proto3" json:"parts,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+ AmountSentMsat *Amount `protobuf:"bytes,6,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
+ Status RenepayResponse_RenepayStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.RenepayResponse_RenepayStatus" json:"status,omitempty"`
+ Destination []byte `protobuf:"bytes,8,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
+}
+
+func (x *RenepayResponse) Reset() {
+ *x = RenepayResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[250]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RenepayResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RenepayResponse) ProtoMessage() {}
+
+func (x *RenepayResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[250]
+ 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 RenepayResponse.ProtoReflect.Descriptor instead.
+func (*RenepayResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{250}
+}
+
+func (x *RenepayResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+func (x *RenepayResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *RenepayResponse) GetCreatedAt() float64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
+}
+
+func (x *RenepayResponse) GetParts() uint32 {
+ if x != nil {
+ return x.Parts
+ }
+ return 0
+}
+
+func (x *RenepayResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *RenepayResponse) GetAmountSentMsat() *Amount {
+ if x != nil {
+ return x.AmountSentMsat
+ }
+ return nil
+}
+
+func (x *RenepayResponse) GetStatus() RenepayResponse_RenepayStatus {
+ if x != nil {
+ return x.Status
+ }
+ return RenepayResponse_COMPLETE
+}
+
+func (x *RenepayResponse) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type ReserveinputsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Exclusive *bool `protobuf:"varint,2,opt,name=exclusive,proto3,oneof" json:"exclusive,omitempty"`
+ Reserve *uint32 `protobuf:"varint,3,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+}
+
+func (x *ReserveinputsRequest) Reset() {
+ *x = ReserveinputsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[251]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ReserveinputsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ReserveinputsRequest) ProtoMessage() {}
+
+func (x *ReserveinputsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[251]
+ 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 ReserveinputsRequest.ProtoReflect.Descriptor instead.
+func (*ReserveinputsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{251}
+}
+
+func (x *ReserveinputsRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *ReserveinputsRequest) GetExclusive() bool {
+ if x != nil && x.Exclusive != nil {
+ return *x.Exclusive
+ }
+ return false
+}
+
+func (x *ReserveinputsRequest) GetReserve() uint32 {
+ if x != nil && x.Reserve != nil {
+ return *x.Reserve
+ }
+ return 0
+}
+
+type ReserveinputsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Reservations []*ReserveinputsReservations `protobuf:"bytes,1,rep,name=reservations,proto3" json:"reservations,omitempty"`
+}
+
+func (x *ReserveinputsResponse) Reset() {
+ *x = ReserveinputsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[252]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ReserveinputsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ReserveinputsResponse) ProtoMessage() {}
+
+func (x *ReserveinputsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[252]
+ 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 ReserveinputsResponse.ProtoReflect.Descriptor instead.
+func (*ReserveinputsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{252}
+}
+
+func (x *ReserveinputsResponse) GetReservations() []*ReserveinputsReservations {
+ if x != nil {
+ return x.Reservations
+ }
+ return nil
+}
+
+type ReserveinputsReservations struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
+ WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
+ Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
+ ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
+}
+
+func (x *ReserveinputsReservations) Reset() {
+ *x = ReserveinputsReservations{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[253]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ReserveinputsReservations) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ReserveinputsReservations) ProtoMessage() {}
+
+func (x *ReserveinputsReservations) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[253]
+ 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 ReserveinputsReservations.ProtoReflect.Descriptor instead.
+func (*ReserveinputsReservations) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{253}
+}
+
+func (x *ReserveinputsReservations) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *ReserveinputsReservations) GetVout() uint32 {
+ if x != nil {
+ return x.Vout
+ }
+ return 0
+}
+
+func (x *ReserveinputsReservations) GetWasReserved() bool {
+ if x != nil {
+ return x.WasReserved
+ }
+ return false
+}
+
+func (x *ReserveinputsReservations) GetReserved() bool {
+ if x != nil {
+ return x.Reserved
+ }
+ return false
+}
+
+func (x *ReserveinputsReservations) GetReservedToBlock() uint32 {
+ if x != nil {
+ return x.ReservedToBlock
+ }
+ return 0
+}
+
+type SendcustommsgRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ NodeId []byte `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
+ Msg []byte `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
+}
+
+func (x *SendcustommsgRequest) Reset() {
+ *x = SendcustommsgRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[254]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendcustommsgRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendcustommsgRequest) ProtoMessage() {}
+
+func (x *SendcustommsgRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[254]
+ 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 SendcustommsgRequest.ProtoReflect.Descriptor instead.
+func (*SendcustommsgRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{254}
+}
+
+func (x *SendcustommsgRequest) GetNodeId() []byte {
+ if x != nil {
+ return x.NodeId
+ }
+ return nil
+}
+
+func (x *SendcustommsgRequest) GetMsg() []byte {
+ if x != nil {
+ return x.Msg
+ }
+ return nil
+}
+
+type SendcustommsgResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
+}
+
+func (x *SendcustommsgResponse) Reset() {
+ *x = SendcustommsgResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[255]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendcustommsgResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendcustommsgResponse) ProtoMessage() {}
+
+func (x *SendcustommsgResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[255]
+ 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 SendcustommsgResponse.ProtoReflect.Descriptor instead.
+func (*SendcustommsgResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{255}
+}
+
+func (x *SendcustommsgResponse) GetStatus() string {
+ if x != nil {
+ return x.Status
+ }
+ return ""
+}
+
+type SendinvoiceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invreq string `protobuf:"bytes,1,opt,name=invreq,proto3" json:"invreq,omitempty"`
+ Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Timeout *uint32 `protobuf:"varint,4,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
+ Quantity *uint64 `protobuf:"varint,5,opt,name=quantity,proto3,oneof" json:"quantity,omitempty"`
+}
+
+func (x *SendinvoiceRequest) Reset() {
+ *x = SendinvoiceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[256]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendinvoiceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendinvoiceRequest) ProtoMessage() {}
+
+func (x *SendinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[256]
+ 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 SendinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*SendinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{256}
+}
+
+func (x *SendinvoiceRequest) GetInvreq() string {
+ if x != nil {
+ return x.Invreq
+ }
+ return ""
+}
+
+func (x *SendinvoiceRequest) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *SendinvoiceRequest) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *SendinvoiceRequest) GetTimeout() uint32 {
+ if x != nil && x.Timeout != nil {
+ return *x.Timeout
+ }
+ return 0
+}
+
+func (x *SendinvoiceRequest) GetQuantity() uint64 {
+ if x != nil && x.Quantity != nil {
+ return *x.Quantity
+ }
+ return 0
+}
+
+type SendinvoiceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ Status SendinvoiceResponse_SendinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.SendinvoiceResponse_SendinvoiceStatus" json:"status,omitempty"`
+ ExpiresAt uint64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
+ Bolt12 *string `protobuf:"bytes,7,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ CreatedIndex *uint64 `protobuf:"varint,8,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
+ UpdatedIndex *uint64 `protobuf:"varint,9,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
+ PayIndex *uint64 `protobuf:"varint,10,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
+ AmountReceivedMsat *Amount `protobuf:"bytes,11,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
+ PaidAt *uint64 `protobuf:"varint,12,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
+ PaymentPreimage []byte `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
+}
+
+func (x *SendinvoiceResponse) Reset() {
+ *x = SendinvoiceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[257]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendinvoiceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendinvoiceResponse) ProtoMessage() {}
+
+func (x *SendinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[257]
+ 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 SendinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*SendinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{257}
+}
+
+func (x *SendinvoiceResponse) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *SendinvoiceResponse) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *SendinvoiceResponse) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *SendinvoiceResponse) GetStatus() SendinvoiceResponse_SendinvoiceStatus {
+ if x != nil {
+ return x.Status
+ }
+ return SendinvoiceResponse_UNPAID
+}
+
+func (x *SendinvoiceResponse) GetExpiresAt() uint64 {
+ if x != nil {
+ return x.ExpiresAt
+ }
+ return 0
+}
+
+func (x *SendinvoiceResponse) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+func (x *SendinvoiceResponse) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *SendinvoiceResponse) GetCreatedIndex() uint64 {
+ if x != nil && x.CreatedIndex != nil {
+ return *x.CreatedIndex
+ }
+ return 0
+}
+
+func (x *SendinvoiceResponse) GetUpdatedIndex() uint64 {
+ if x != nil && x.UpdatedIndex != nil {
+ return *x.UpdatedIndex
+ }
+ return 0
+}
+
+func (x *SendinvoiceResponse) GetPayIndex() uint64 {
+ if x != nil && x.PayIndex != nil {
+ return *x.PayIndex
+ }
+ return 0
+}
+
+func (x *SendinvoiceResponse) GetAmountReceivedMsat() *Amount {
+ if x != nil {
+ return x.AmountReceivedMsat
+ }
+ return nil
+}
+
+func (x *SendinvoiceResponse) GetPaidAt() uint64 {
+ if x != nil && x.PaidAt != nil {
+ return *x.PaidAt
+ }
+ return 0
+}
+
+func (x *SendinvoiceResponse) GetPaymentPreimage() []byte {
+ if x != nil {
+ return x.PaymentPreimage
+ }
+ return nil
+}
+
+type SendonionmessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ FirstId []byte `protobuf:"bytes,1,opt,name=first_id,json=firstId,proto3" json:"first_id,omitempty"`
+ Blinding []byte `protobuf:"bytes,2,opt,name=blinding,proto3" json:"blinding,omitempty"`
+ Hops []*SendonionmessageHops `protobuf:"bytes,3,rep,name=hops,proto3" json:"hops,omitempty"`
+}
+
+func (x *SendonionmessageRequest) Reset() {
+ *x = SendonionmessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[258]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendonionmessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendonionmessageRequest) ProtoMessage() {}
+
+func (x *SendonionmessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[258]
+ 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 SendonionmessageRequest.ProtoReflect.Descriptor instead.
+func (*SendonionmessageRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{258}
+}
+
+func (x *SendonionmessageRequest) GetFirstId() []byte {
+ if x != nil {
+ return x.FirstId
+ }
+ return nil
+}
+
+func (x *SendonionmessageRequest) GetBlinding() []byte {
+ if x != nil {
+ return x.Blinding
+ }
+ return nil
+}
+
+func (x *SendonionmessageRequest) GetHops() []*SendonionmessageHops {
+ if x != nil {
+ return x.Hops
+ }
+ return nil
+}
+
+type SendonionmessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *SendonionmessageResponse) Reset() {
+ *x = SendonionmessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[259]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendonionmessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendonionmessageResponse) ProtoMessage() {}
+
+func (x *SendonionmessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[259]
+ 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 SendonionmessageResponse.ProtoReflect.Descriptor instead.
+func (*SendonionmessageResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{259}
+}
+
+type SendonionmessageHops struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Node []byte `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
+ Tlv uint32 `protobuf:"varint,2,opt,name=tlv,proto3" json:"tlv,omitempty"`
+}
+
+func (x *SendonionmessageHops) Reset() {
+ *x = SendonionmessageHops{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[260]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendonionmessageHops) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendonionmessageHops) ProtoMessage() {}
+
+func (x *SendonionmessageHops) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[260]
+ 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 SendonionmessageHops.ProtoReflect.Descriptor instead.
+func (*SendonionmessageHops) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{260}
+}
+
+func (x *SendonionmessageHops) GetNode() []byte {
+ if x != nil {
+ return x.Node
+ }
+ return nil
+}
+
+func (x *SendonionmessageHops) GetTlv() uint32 {
+ if x != nil {
+ return x.Tlv
+ }
+ return 0
+}
+
+type SetchannelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Feebase *Amount `protobuf:"bytes,2,opt,name=feebase,proto3,oneof" json:"feebase,omitempty"`
+ Feeppm *uint32 `protobuf:"varint,3,opt,name=feeppm,proto3,oneof" json:"feeppm,omitempty"`
+ Htlcmin *Amount `protobuf:"bytes,4,opt,name=htlcmin,proto3,oneof" json:"htlcmin,omitempty"`
+ Htlcmax *Amount `protobuf:"bytes,5,opt,name=htlcmax,proto3,oneof" json:"htlcmax,omitempty"`
+ Enforcedelay *uint32 `protobuf:"varint,6,opt,name=enforcedelay,proto3,oneof" json:"enforcedelay,omitempty"`
+ Ignorefeelimits *bool `protobuf:"varint,7,opt,name=ignorefeelimits,proto3,oneof" json:"ignorefeelimits,omitempty"`
+}
+
+func (x *SetchannelRequest) Reset() {
+ *x = SetchannelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[261]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetchannelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetchannelRequest) ProtoMessage() {}
+
+func (x *SetchannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[261]
+ 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 SetchannelRequest.ProtoReflect.Descriptor instead.
+func (*SetchannelRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{261}
+}
+
+func (x *SetchannelRequest) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+func (x *SetchannelRequest) GetFeebase() *Amount {
+ if x != nil {
+ return x.Feebase
+ }
+ return nil
+}
+
+func (x *SetchannelRequest) GetFeeppm() uint32 {
+ if x != nil && x.Feeppm != nil {
+ return *x.Feeppm
+ }
+ return 0
+}
+
+func (x *SetchannelRequest) GetHtlcmin() *Amount {
+ if x != nil {
+ return x.Htlcmin
+ }
+ return nil
+}
+
+func (x *SetchannelRequest) GetHtlcmax() *Amount {
+ if x != nil {
+ return x.Htlcmax
+ }
+ return nil
+}
+
+func (x *SetchannelRequest) GetEnforcedelay() uint32 {
+ if x != nil && x.Enforcedelay != nil {
+ return *x.Enforcedelay
+ }
+ return 0
+}
+
+func (x *SetchannelRequest) GetIgnorefeelimits() bool {
+ if x != nil && x.Ignorefeelimits != nil {
+ return *x.Ignorefeelimits
+ }
+ return false
+}
+
+type SetchannelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Channels []*SetchannelChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
+}
+
+func (x *SetchannelResponse) Reset() {
+ *x = SetchannelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[262]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetchannelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetchannelResponse) ProtoMessage() {}
+
+func (x *SetchannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[262]
+ 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 SetchannelResponse.ProtoReflect.Descriptor instead.
+func (*SetchannelResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{262}
+}
+
+func (x *SetchannelResponse) GetChannels() []*SetchannelChannels {
+ if x != nil {
+ return x.Channels
+ }
+ return nil
+}
+
+type SetchannelChannels struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
+ ChannelId []byte `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ShortChannelId *string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
+ FeeBaseMsat *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
+ FeeProportionalMillionths uint32 `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
+ MinimumHtlcOutMsat *Amount `protobuf:"bytes,6,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3" json:"minimum_htlc_out_msat,omitempty"`
+ WarningHtlcminTooLow *string `protobuf:"bytes,7,opt,name=warning_htlcmin_too_low,json=warningHtlcminTooLow,proto3,oneof" json:"warning_htlcmin_too_low,omitempty"`
+ MaximumHtlcOutMsat *Amount `protobuf:"bytes,8,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3" json:"maximum_htlc_out_msat,omitempty"`
+ WarningHtlcmaxTooHigh *string `protobuf:"bytes,9,opt,name=warning_htlcmax_too_high,json=warningHtlcmaxTooHigh,proto3,oneof" json:"warning_htlcmax_too_high,omitempty"`
+ IgnoreFeeLimits *bool `protobuf:"varint,10,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
+}
+
+func (x *SetchannelChannels) Reset() {
+ *x = SetchannelChannels{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[263]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetchannelChannels) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetchannelChannels) ProtoMessage() {}
+
+func (x *SetchannelChannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[263]
+ 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 SetchannelChannels.ProtoReflect.Descriptor instead.
+func (*SetchannelChannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{263}
+}
+
+func (x *SetchannelChannels) GetPeerId() []byte {
+ if x != nil {
+ return x.PeerId
+ }
+ return nil
+}
+
+func (x *SetchannelChannels) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *SetchannelChannels) GetShortChannelId() string {
+ if x != nil && x.ShortChannelId != nil {
+ return *x.ShortChannelId
+ }
+ return ""
+}
+
+func (x *SetchannelChannels) GetFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.FeeBaseMsat
+ }
+ return nil
+}
+
+func (x *SetchannelChannels) GetFeeProportionalMillionths() uint32 {
+ if x != nil {
+ return x.FeeProportionalMillionths
+ }
+ return 0
+}
+
+func (x *SetchannelChannels) GetMinimumHtlcOutMsat() *Amount {
+ if x != nil {
+ return x.MinimumHtlcOutMsat
+ }
+ return nil
+}
+
+func (x *SetchannelChannels) GetWarningHtlcminTooLow() string {
+ if x != nil && x.WarningHtlcminTooLow != nil {
+ return *x.WarningHtlcminTooLow
+ }
+ return ""
+}
+
+func (x *SetchannelChannels) GetMaximumHtlcOutMsat() *Amount {
+ if x != nil {
+ return x.MaximumHtlcOutMsat
+ }
+ return nil
+}
+
+func (x *SetchannelChannels) GetWarningHtlcmaxTooHigh() string {
+ if x != nil && x.WarningHtlcmaxTooHigh != nil {
+ return *x.WarningHtlcmaxTooHigh
+ }
+ return ""
+}
+
+func (x *SetchannelChannels) GetIgnoreFeeLimits() bool {
+ if x != nil && x.IgnoreFeeLimits != nil {
+ return *x.IgnoreFeeLimits
+ }
+ return false
+}
+
+type SetconfigRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Config string `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
+ Val *string `protobuf:"bytes,2,opt,name=val,proto3,oneof" json:"val,omitempty"`
+}
+
+func (x *SetconfigRequest) Reset() {
+ *x = SetconfigRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[264]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetconfigRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetconfigRequest) ProtoMessage() {}
+
+func (x *SetconfigRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[264]
+ 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 SetconfigRequest.ProtoReflect.Descriptor instead.
+func (*SetconfigRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{264}
+}
+
+func (x *SetconfigRequest) GetConfig() string {
+ if x != nil {
+ return x.Config
+ }
+ return ""
+}
+
+func (x *SetconfigRequest) GetVal() string {
+ if x != nil && x.Val != nil {
+ return *x.Val
+ }
+ return ""
+}
+
+type SetconfigResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Config *SetconfigConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
+}
+
+func (x *SetconfigResponse) Reset() {
+ *x = SetconfigResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[265]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetconfigResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetconfigResponse) ProtoMessage() {}
+
+func (x *SetconfigResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[265]
+ 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 SetconfigResponse.ProtoReflect.Descriptor instead.
+func (*SetconfigResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{265}
+}
+
+func (x *SetconfigResponse) GetConfig() *SetconfigConfig {
+ if x != nil {
+ return x.Config
+ }
+ return nil
+}
+
+type SetconfigConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Config string `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+ Plugin *string `protobuf:"bytes,3,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
+ Dynamic bool `protobuf:"varint,4,opt,name=dynamic,proto3" json:"dynamic,omitempty"`
+ Set *bool `protobuf:"varint,5,opt,name=set,proto3,oneof" json:"set,omitempty"`
+ ValueStr *string `protobuf:"bytes,6,opt,name=value_str,json=valueStr,proto3,oneof" json:"value_str,omitempty"`
+ ValueMsat *Amount `protobuf:"bytes,7,opt,name=value_msat,json=valueMsat,proto3,oneof" json:"value_msat,omitempty"`
+ ValueInt *int64 `protobuf:"zigzag64,8,opt,name=value_int,json=valueInt,proto3,oneof" json:"value_int,omitempty"`
+ ValueBool *bool `protobuf:"varint,9,opt,name=value_bool,json=valueBool,proto3,oneof" json:"value_bool,omitempty"`
+}
+
+func (x *SetconfigConfig) Reset() {
+ *x = SetconfigConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[266]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetconfigConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetconfigConfig) ProtoMessage() {}
+
+func (x *SetconfigConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[266]
+ 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 SetconfigConfig.ProtoReflect.Descriptor instead.
+func (*SetconfigConfig) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{266}
+}
+
+func (x *SetconfigConfig) GetConfig() string {
+ if x != nil {
+ return x.Config
+ }
+ return ""
+}
+
+func (x *SetconfigConfig) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *SetconfigConfig) GetPlugin() string {
+ if x != nil && x.Plugin != nil {
+ return *x.Plugin
+ }
+ return ""
+}
+
+func (x *SetconfigConfig) GetDynamic() bool {
+ if x != nil {
+ return x.Dynamic
+ }
+ return false
+}
+
+func (x *SetconfigConfig) GetSet() bool {
+ if x != nil && x.Set != nil {
+ return *x.Set
+ }
+ return false
+}
+
+func (x *SetconfigConfig) GetValueStr() string {
+ if x != nil && x.ValueStr != nil {
+ return *x.ValueStr
+ }
+ return ""
+}
+
+func (x *SetconfigConfig) GetValueMsat() *Amount {
+ if x != nil {
+ return x.ValueMsat
+ }
+ return nil
+}
+
+func (x *SetconfigConfig) GetValueInt() int64 {
+ if x != nil && x.ValueInt != nil {
+ return *x.ValueInt
+ }
+ return 0
+}
+
+func (x *SetconfigConfig) GetValueBool() bool {
+ if x != nil && x.ValueBool != nil {
+ return *x.ValueBool
+ }
+ return false
+}
+
+type SetpsbtversionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
+}
+
+func (x *SetpsbtversionRequest) Reset() {
+ *x = SetpsbtversionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[267]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetpsbtversionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetpsbtversionRequest) ProtoMessage() {}
+
+func (x *SetpsbtversionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[267]
+ 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 SetpsbtversionRequest.ProtoReflect.Descriptor instead.
+func (*SetpsbtversionRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{267}
+}
+
+func (x *SetpsbtversionRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *SetpsbtversionRequest) GetVersion() uint32 {
+ if x != nil {
+ return x.Version
+ }
+ return 0
+}
+
+type SetpsbtversionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+}
+
+func (x *SetpsbtversionResponse) Reset() {
+ *x = SetpsbtversionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[268]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetpsbtversionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetpsbtversionResponse) ProtoMessage() {}
+
+func (x *SetpsbtversionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[268]
+ 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 SetpsbtversionResponse.ProtoReflect.Descriptor instead.
+func (*SetpsbtversionResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{268}
+}
+
+func (x *SetpsbtversionResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+type SigninvoiceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
+}
+
+func (x *SigninvoiceRequest) Reset() {
+ *x = SigninvoiceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[269]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SigninvoiceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SigninvoiceRequest) ProtoMessage() {}
+
+func (x *SigninvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[269]
+ 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 SigninvoiceRequest.ProtoReflect.Descriptor instead.
+func (*SigninvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{269}
+}
+
+func (x *SigninvoiceRequest) GetInvstring() string {
+ if x != nil {
+ return x.Invstring
+ }
+ return ""
+}
+
+type SigninvoiceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+}
+
+func (x *SigninvoiceResponse) Reset() {
+ *x = SigninvoiceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[270]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SigninvoiceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SigninvoiceResponse) ProtoMessage() {}
+
+func (x *SigninvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[270]
+ 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 SigninvoiceResponse.ProtoReflect.Descriptor instead.
+func (*SigninvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{270}
+}
+
+func (x *SigninvoiceResponse) GetBolt11() string {
+ if x != nil {
+ return x.Bolt11
+ }
+ return ""
+}
+
+type SignmessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *SignmessageRequest) Reset() {
+ *x = SignmessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[271]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SignmessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SignmessageRequest) ProtoMessage() {}
+
+func (x *SignmessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[271]
+ 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 SignmessageRequest.ProtoReflect.Descriptor instead.
+func (*SignmessageRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{271}
+}
+
+func (x *SignmessageRequest) GetMessage() string {
+ if x != nil {
+ return x.Message
+ }
+ return ""
+}
+
+type SignmessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
+ Recid []byte `protobuf:"bytes,2,opt,name=recid,proto3" json:"recid,omitempty"`
+ Zbase string `protobuf:"bytes,3,opt,name=zbase,proto3" json:"zbase,omitempty"`
+}
+
+func (x *SignmessageResponse) Reset() {
+ *x = SignmessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[272]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SignmessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SignmessageResponse) ProtoMessage() {}
+
+func (x *SignmessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[272]
+ 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 SignmessageResponse.ProtoReflect.Descriptor instead.
+func (*SignmessageResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{272}
+}
+
+func (x *SignmessageResponse) GetSignature() []byte {
+ if x != nil {
+ return x.Signature
+ }
+ return nil
+}
+
+func (x *SignmessageResponse) GetRecid() []byte {
+ if x != nil {
+ return x.Recid
+ }
+ return nil
+}
+
+func (x *SignmessageResponse) GetZbase() string {
+ if x != nil {
+ return x.Zbase
+ }
+ return ""
+}
+
+type SpliceInitRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ RelativeAmount int64 `protobuf:"zigzag64,2,opt,name=relative_amount,json=relativeAmount,proto3" json:"relative_amount,omitempty"`
+ Initialpsbt *string `protobuf:"bytes,3,opt,name=initialpsbt,proto3,oneof" json:"initialpsbt,omitempty"`
+ FeeratePerKw *uint32 `protobuf:"varint,4,opt,name=feerate_per_kw,json=feeratePerKw,proto3,oneof" json:"feerate_per_kw,omitempty"`
+ ForceFeerate *bool `protobuf:"varint,5,opt,name=force_feerate,json=forceFeerate,proto3,oneof" json:"force_feerate,omitempty"`
+}
+
+func (x *SpliceInitRequest) Reset() {
+ *x = SpliceInitRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[273]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceInitRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceInitRequest) ProtoMessage() {}
+
+func (x *SpliceInitRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[273]
+ 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 SpliceInitRequest.ProtoReflect.Descriptor instead.
+func (*SpliceInitRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{273}
+}
+
+func (x *SpliceInitRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *SpliceInitRequest) GetRelativeAmount() int64 {
+ if x != nil {
+ return x.RelativeAmount
+ }
+ return 0
+}
+
+func (x *SpliceInitRequest) GetInitialpsbt() string {
+ if x != nil && x.Initialpsbt != nil {
+ return *x.Initialpsbt
+ }
+ return ""
+}
+
+func (x *SpliceInitRequest) GetFeeratePerKw() uint32 {
+ if x != nil && x.FeeratePerKw != nil {
+ return *x.FeeratePerKw
+ }
+ return 0
+}
+
+func (x *SpliceInitRequest) GetForceFeerate() bool {
+ if x != nil && x.ForceFeerate != nil {
+ return *x.ForceFeerate
+ }
+ return false
+}
+
+type SpliceInitResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+}
+
+func (x *SpliceInitResponse) Reset() {
+ *x = SpliceInitResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[274]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceInitResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceInitResponse) ProtoMessage() {}
+
+func (x *SpliceInitResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[274]
+ 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 SpliceInitResponse.ProtoReflect.Descriptor instead.
+func (*SpliceInitResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{274}
+}
+
+func (x *SpliceInitResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+type SpliceSignedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ SignFirst *bool `protobuf:"varint,3,opt,name=sign_first,json=signFirst,proto3,oneof" json:"sign_first,omitempty"`
+}
+
+func (x *SpliceSignedRequest) Reset() {
+ *x = SpliceSignedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[275]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceSignedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceSignedRequest) ProtoMessage() {}
+
+func (x *SpliceSignedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[275]
+ 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 SpliceSignedRequest.ProtoReflect.Descriptor instead.
+func (*SpliceSignedRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{275}
+}
+
+func (x *SpliceSignedRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *SpliceSignedRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *SpliceSignedRequest) GetSignFirst() bool {
+ if x != nil && x.SignFirst != nil {
+ return *x.SignFirst
+ }
+ return false
+}
+
+type SpliceSignedResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Tx []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
+}
+
+func (x *SpliceSignedResponse) Reset() {
+ *x = SpliceSignedResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[276]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceSignedResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceSignedResponse) ProtoMessage() {}
+
+func (x *SpliceSignedResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[276]
+ 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 SpliceSignedResponse.ProtoReflect.Descriptor instead.
+func (*SpliceSignedResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{276}
+}
+
+func (x *SpliceSignedResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *SpliceSignedResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+type SpliceUpdateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
+}
+
+func (x *SpliceUpdateRequest) Reset() {
+ *x = SpliceUpdateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[277]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceUpdateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceUpdateRequest) ProtoMessage() {}
+
+func (x *SpliceUpdateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[277]
+ 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 SpliceUpdateRequest.ProtoReflect.Descriptor instead.
+func (*SpliceUpdateRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{277}
+}
+
+func (x *SpliceUpdateRequest) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+func (x *SpliceUpdateRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+type SpliceUpdateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ CommitmentsSecured bool `protobuf:"varint,2,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
+}
+
+func (x *SpliceUpdateResponse) Reset() {
+ *x = SpliceUpdateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[278]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpliceUpdateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpliceUpdateResponse) ProtoMessage() {}
+
+func (x *SpliceUpdateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[278]
+ 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 SpliceUpdateResponse.ProtoReflect.Descriptor instead.
+func (*SpliceUpdateResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{278}
+}
+
+func (x *SpliceUpdateResponse) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *SpliceUpdateResponse) GetCommitmentsSecured() bool {
+ if x != nil {
+ return x.CommitmentsSecured
+ }
+ return false
+}
+
+type UnreserveinputsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
+ Reserve *uint32 `protobuf:"varint,2,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
+}
+
+func (x *UnreserveinputsRequest) Reset() {
+ *x = UnreserveinputsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[279]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnreserveinputsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnreserveinputsRequest) ProtoMessage() {}
+
+func (x *UnreserveinputsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[279]
+ 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 UnreserveinputsRequest.ProtoReflect.Descriptor instead.
+func (*UnreserveinputsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{279}
+}
+
+func (x *UnreserveinputsRequest) GetPsbt() string {
+ if x != nil {
+ return x.Psbt
+ }
+ return ""
+}
+
+func (x *UnreserveinputsRequest) GetReserve() uint32 {
+ if x != nil && x.Reserve != nil {
+ return *x.Reserve
+ }
+ return 0
+}
+
+type UnreserveinputsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Reservations []*UnreserveinputsReservations `protobuf:"bytes,1,rep,name=reservations,proto3" json:"reservations,omitempty"`
+}
+
+func (x *UnreserveinputsResponse) Reset() {
+ *x = UnreserveinputsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[280]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnreserveinputsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnreserveinputsResponse) ProtoMessage() {}
+
+func (x *UnreserveinputsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[280]
+ 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 UnreserveinputsResponse.ProtoReflect.Descriptor instead.
+func (*UnreserveinputsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{280}
+}
+
+func (x *UnreserveinputsResponse) GetReservations() []*UnreserveinputsReservations {
+ if x != nil {
+ return x.Reservations
+ }
+ return nil
+}
+
+type UnreserveinputsReservations struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Vout uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
+ WasReserved bool `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
+ Reserved bool `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
+ ReservedToBlock *uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3,oneof" json:"reserved_to_block,omitempty"`
+}
+
+func (x *UnreserveinputsReservations) Reset() {
+ *x = UnreserveinputsReservations{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[281]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnreserveinputsReservations) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnreserveinputsReservations) ProtoMessage() {}
+
+func (x *UnreserveinputsReservations) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[281]
+ 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 UnreserveinputsReservations.ProtoReflect.Descriptor instead.
+func (*UnreserveinputsReservations) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{281}
+}
+
+func (x *UnreserveinputsReservations) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *UnreserveinputsReservations) GetVout() uint32 {
+ if x != nil {
+ return x.Vout
+ }
+ return 0
+}
+
+func (x *UnreserveinputsReservations) GetWasReserved() bool {
+ if x != nil {
+ return x.WasReserved
+ }
+ return false
+}
+
+func (x *UnreserveinputsReservations) GetReserved() bool {
+ if x != nil {
+ return x.Reserved
+ }
+ return false
+}
+
+func (x *UnreserveinputsReservations) GetReservedToBlock() uint32 {
+ if x != nil && x.ReservedToBlock != nil {
+ return *x.ReservedToBlock
+ }
+ return 0
+}
+
+type UpgradewalletRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Feerate *Feerate `protobuf:"bytes,1,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
+ Reservedok *bool `protobuf:"varint,2,opt,name=reservedok,proto3,oneof" json:"reservedok,omitempty"`
+}
+
+func (x *UpgradewalletRequest) Reset() {
+ *x = UpgradewalletRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[282]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpgradewalletRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpgradewalletRequest) ProtoMessage() {}
+
+func (x *UpgradewalletRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[282]
+ 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 UpgradewalletRequest.ProtoReflect.Descriptor instead.
+func (*UpgradewalletRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{282}
+}
+
+func (x *UpgradewalletRequest) GetFeerate() *Feerate {
+ if x != nil {
+ return x.Feerate
+ }
+ return nil
+}
+
+func (x *UpgradewalletRequest) GetReservedok() bool {
+ if x != nil && x.Reservedok != nil {
+ return *x.Reservedok
+ }
+ return false
+}
+
+type UpgradewalletResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ UpgradedOuts *uint64 `protobuf:"varint,1,opt,name=upgraded_outs,json=upgradedOuts,proto3,oneof" json:"upgraded_outs,omitempty"`
+ Psbt *string `protobuf:"bytes,2,opt,name=psbt,proto3,oneof" json:"psbt,omitempty"`
+ Tx []byte `protobuf:"bytes,3,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
+ Txid []byte `protobuf:"bytes,4,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
+}
+
+func (x *UpgradewalletResponse) Reset() {
+ *x = UpgradewalletResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[283]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpgradewalletResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpgradewalletResponse) ProtoMessage() {}
+
+func (x *UpgradewalletResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[283]
+ 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 UpgradewalletResponse.ProtoReflect.Descriptor instead.
+func (*UpgradewalletResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{283}
+}
+
+func (x *UpgradewalletResponse) GetUpgradedOuts() uint64 {
+ if x != nil && x.UpgradedOuts != nil {
+ return *x.UpgradedOuts
+ }
+ return 0
+}
+
+func (x *UpgradewalletResponse) GetPsbt() string {
+ if x != nil && x.Psbt != nil {
+ return *x.Psbt
+ }
+ return ""
+}
+
+func (x *UpgradewalletResponse) GetTx() []byte {
+ if x != nil {
+ return x.Tx
+ }
+ return nil
+}
+
+func (x *UpgradewalletResponse) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+type WaitblockheightRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Blockheight uint32 `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
+ Timeout *uint32 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
+}
+
+func (x *WaitblockheightRequest) Reset() {
+ *x = WaitblockheightRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[284]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WaitblockheightRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitblockheightRequest) ProtoMessage() {}
+
+func (x *WaitblockheightRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[284]
+ 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 WaitblockheightRequest.ProtoReflect.Descriptor instead.
+func (*WaitblockheightRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{284}
+}
+
+func (x *WaitblockheightRequest) GetBlockheight() uint32 {
+ if x != nil {
+ return x.Blockheight
+ }
+ return 0
+}
+
+func (x *WaitblockheightRequest) GetTimeout() uint32 {
+ if x != nil && x.Timeout != nil {
+ return *x.Timeout
+ }
+ return 0
+}
+
+type WaitblockheightResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Blockheight uint32 `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
+}
+
+func (x *WaitblockheightResponse) Reset() {
+ *x = WaitblockheightResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[285]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WaitblockheightResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitblockheightResponse) ProtoMessage() {}
+
+func (x *WaitblockheightResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[285]
+ 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 WaitblockheightResponse.ProtoReflect.Descriptor instead.
+func (*WaitblockheightResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{285}
+}
+
+func (x *WaitblockheightResponse) GetBlockheight() uint32 {
+ if x != nil {
+ return x.Blockheight
+ }
+ return 0
+}
+
+type WaitRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Subsystem WaitRequest_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitRequest_WaitSubsystem" json:"subsystem,omitempty"`
+ Indexname WaitRequest_WaitIndexname `protobuf:"varint,2,opt,name=indexname,proto3,enum=cln.WaitRequest_WaitIndexname" json:"indexname,omitempty"`
+ Nextvalue uint64 `protobuf:"varint,3,opt,name=nextvalue,proto3" json:"nextvalue,omitempty"`
+}
+
+func (x *WaitRequest) Reset() {
+ *x = WaitRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[286]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WaitRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitRequest) ProtoMessage() {}
+
+func (x *WaitRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[286]
+ 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 WaitRequest.ProtoReflect.Descriptor instead.
+func (*WaitRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{286}
+}
+
+func (x *WaitRequest) GetSubsystem() WaitRequest_WaitSubsystem {
+ if x != nil {
+ return x.Subsystem
+ }
+ return WaitRequest_INVOICES
+}
+
+func (x *WaitRequest) GetIndexname() WaitRequest_WaitIndexname {
+ if x != nil {
+ return x.Indexname
+ }
+ return WaitRequest_CREATED
+}
+
+func (x *WaitRequest) GetNextvalue() uint64 {
+ if x != nil {
+ return x.Nextvalue
+ }
+ return 0
+}
+
+type WaitResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Subsystem WaitResponse_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitResponse_WaitSubsystem" json:"subsystem,omitempty"`
+ Created *uint64 `protobuf:"varint,2,opt,name=created,proto3,oneof" json:"created,omitempty"`
+ Updated *uint64 `protobuf:"varint,3,opt,name=updated,proto3,oneof" json:"updated,omitempty"`
+ Deleted *uint64 `protobuf:"varint,4,opt,name=deleted,proto3,oneof" json:"deleted,omitempty"`
+ Details *WaitDetails `protobuf:"bytes,5,opt,name=details,proto3,oneof" json:"details,omitempty"`
+}
+
+func (x *WaitResponse) Reset() {
+ *x = WaitResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[287]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WaitResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitResponse) ProtoMessage() {}
+
+func (x *WaitResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[287]
+ 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 WaitResponse.ProtoReflect.Descriptor instead.
+func (*WaitResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{287}
+}
+
+func (x *WaitResponse) GetSubsystem() WaitResponse_WaitSubsystem {
+ if x != nil {
+ return x.Subsystem
+ }
+ return WaitResponse_INVOICES
+}
+
+func (x *WaitResponse) GetCreated() uint64 {
+ if x != nil && x.Created != nil {
+ return *x.Created
+ }
+ return 0
+}
+
+func (x *WaitResponse) GetUpdated() uint64 {
+ if x != nil && x.Updated != nil {
+ return *x.Updated
+ }
+ return 0
+}
+
+func (x *WaitResponse) GetDeleted() uint64 {
+ if x != nil && x.Deleted != nil {
+ return *x.Deleted
+ }
+ return 0
+}
+
+func (x *WaitResponse) GetDetails() *WaitDetails {
+ if x != nil {
+ return x.Details
+ }
+ return nil
+}
+
+type WaitDetails struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Status *WaitDetails_WaitDetailsStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cln.WaitDetails_WaitDetailsStatus,oneof" json:"status,omitempty"`
+ Label *string `protobuf:"bytes,2,opt,name=label,proto3,oneof" json:"label,omitempty"`
+ Description *string `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ Bolt11 *string `protobuf:"bytes,4,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
+ Bolt12 *string `protobuf:"bytes,5,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
+ Partid *uint64 `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
+ Groupid *uint64 `protobuf:"varint,7,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,8,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
+ InChannel *string `protobuf:"bytes,9,opt,name=in_channel,json=inChannel,proto3,oneof" json:"in_channel,omitempty"`
+ InHtlcId *uint64 `protobuf:"varint,10,opt,name=in_htlc_id,json=inHtlcId,proto3,oneof" json:"in_htlc_id,omitempty"`
+ InMsat *Amount `protobuf:"bytes,11,opt,name=in_msat,json=inMsat,proto3,oneof" json:"in_msat,omitempty"`
+ OutChannel *string `protobuf:"bytes,12,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
+}
+
+func (x *WaitDetails) Reset() {
+ *x = WaitDetails{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[288]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WaitDetails) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WaitDetails) ProtoMessage() {}
+
+func (x *WaitDetails) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[288]
+ 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 WaitDetails.ProtoReflect.Descriptor instead.
+func (*WaitDetails) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{288}
+}
+
+func (x *WaitDetails) GetStatus() WaitDetails_WaitDetailsStatus {
+ if x != nil && x.Status != nil {
+ return *x.Status
+ }
+ return WaitDetails_UNPAID
+}
+
+func (x *WaitDetails) GetLabel() string {
+ if x != nil && x.Label != nil {
+ return *x.Label
+ }
+ return ""
+}
+
+func (x *WaitDetails) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *WaitDetails) GetBolt11() string {
+ if x != nil && x.Bolt11 != nil {
+ return *x.Bolt11
+ }
+ return ""
+}
+
+func (x *WaitDetails) GetBolt12() string {
+ if x != nil && x.Bolt12 != nil {
+ return *x.Bolt12
+ }
+ return ""
+}
+
+func (x *WaitDetails) GetPartid() uint64 {
+ if x != nil && x.Partid != nil {
+ return *x.Partid
+ }
+ return 0
+}
+
+func (x *WaitDetails) GetGroupid() uint64 {
+ if x != nil && x.Groupid != nil {
+ return *x.Groupid
+ }
+ return 0
+}
+
+func (x *WaitDetails) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *WaitDetails) GetInChannel() string {
+ if x != nil && x.InChannel != nil {
+ return *x.InChannel
+ }
+ return ""
+}
+
+func (x *WaitDetails) GetInHtlcId() uint64 {
+ if x != nil && x.InHtlcId != nil {
+ return *x.InHtlcId
+ }
+ return 0
+}
+
+func (x *WaitDetails) GetInMsat() *Amount {
+ if x != nil {
+ return x.InMsat
+ }
+ return nil
+}
+
+func (x *WaitDetails) GetOutChannel() string {
+ if x != nil && x.OutChannel != nil {
+ return *x.OutChannel
+ }
+ return ""
+}
+
+type ListconfigsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Config *string `protobuf:"bytes,1,opt,name=config,proto3,oneof" json:"config,omitempty"`
+}
+
+func (x *ListconfigsRequest) Reset() {
+ *x = ListconfigsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[289]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsRequest) ProtoMessage() {}
+
+func (x *ListconfigsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[289]
+ 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 ListconfigsRequest.ProtoReflect.Descriptor instead.
+func (*ListconfigsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{289}
+}
+
+func (x *ListconfigsRequest) GetConfig() string {
+ if x != nil && x.Config != nil {
+ return *x.Config
+ }
+ return ""
+}
+
+type ListconfigsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Configs *ListconfigsConfigs `protobuf:"bytes,1,opt,name=configs,proto3,oneof" json:"configs,omitempty"`
+ Plugins []*ListconfigsPlugins `protobuf:"bytes,3,rep,name=plugins,proto3" json:"plugins,omitempty"`
+ ImportantPlugins []*ListconfigsImportantplugins `protobuf:"bytes,4,rep,name=important_plugins,json=importantPlugins,proto3" json:"important_plugins,omitempty"`
+ Conf *string `protobuf:"bytes,5,opt,name=conf,proto3,oneof" json:"conf,omitempty"`
+ LightningDir *string `protobuf:"bytes,6,opt,name=lightning_dir,json=lightningDir,proto3,oneof" json:"lightning_dir,omitempty"`
+ Network *string `protobuf:"bytes,7,opt,name=network,proto3,oneof" json:"network,omitempty"`
+ AllowDeprecatedApis *bool `protobuf:"varint,8,opt,name=allow_deprecated_apis,json=allowDeprecatedApis,proto3,oneof" json:"allow_deprecated_apis,omitempty"`
+ RpcFile *string `protobuf:"bytes,9,opt,name=rpc_file,json=rpcFile,proto3,oneof" json:"rpc_file,omitempty"`
+ DisablePlugin []string `protobuf:"bytes,10,rep,name=disable_plugin,json=disablePlugin,proto3" json:"disable_plugin,omitempty"`
+ BookkeeperDir *string `protobuf:"bytes,11,opt,name=bookkeeper_dir,json=bookkeeperDir,proto3,oneof" json:"bookkeeper_dir,omitempty"`
+ BookkeeperDb *string `protobuf:"bytes,12,opt,name=bookkeeper_db,json=bookkeeperDb,proto3,oneof" json:"bookkeeper_db,omitempty"`
+ AlwaysUseProxy *bool `protobuf:"varint,13,opt,name=always_use_proxy,json=alwaysUseProxy,proto3,oneof" json:"always_use_proxy,omitempty"`
+ Daemon *bool `protobuf:"varint,14,opt,name=daemon,proto3,oneof" json:"daemon,omitempty"`
+ Wallet *string `protobuf:"bytes,15,opt,name=wallet,proto3,oneof" json:"wallet,omitempty"`
+ LargeChannels *bool `protobuf:"varint,16,opt,name=large_channels,json=largeChannels,proto3,oneof" json:"large_channels,omitempty"`
+ ExperimentalDualFund *bool `protobuf:"varint,17,opt,name=experimental_dual_fund,json=experimentalDualFund,proto3,oneof" json:"experimental_dual_fund,omitempty"`
+ ExperimentalSplicing *bool `protobuf:"varint,18,opt,name=experimental_splicing,json=experimentalSplicing,proto3,oneof" json:"experimental_splicing,omitempty"`
+ ExperimentalOnionMessages *bool `protobuf:"varint,19,opt,name=experimental_onion_messages,json=experimentalOnionMessages,proto3,oneof" json:"experimental_onion_messages,omitempty"`
+ ExperimentalOffers *bool `protobuf:"varint,20,opt,name=experimental_offers,json=experimentalOffers,proto3,oneof" json:"experimental_offers,omitempty"`
+ ExperimentalShutdownWrongFunding *bool `protobuf:"varint,21,opt,name=experimental_shutdown_wrong_funding,json=experimentalShutdownWrongFunding,proto3,oneof" json:"experimental_shutdown_wrong_funding,omitempty"`
+ ExperimentalPeerStorage *bool `protobuf:"varint,22,opt,name=experimental_peer_storage,json=experimentalPeerStorage,proto3,oneof" json:"experimental_peer_storage,omitempty"`
+ ExperimentalQuiesce *bool `protobuf:"varint,23,opt,name=experimental_quiesce,json=experimentalQuiesce,proto3,oneof" json:"experimental_quiesce,omitempty"`
+ ExperimentalUpgradeProtocol *bool `protobuf:"varint,24,opt,name=experimental_upgrade_protocol,json=experimentalUpgradeProtocol,proto3,oneof" json:"experimental_upgrade_protocol,omitempty"`
+ InvoicesOnchainFallback *bool `protobuf:"varint,25,opt,name=invoices_onchain_fallback,json=invoicesOnchainFallback,proto3,oneof" json:"invoices_onchain_fallback,omitempty"`
+ DatabaseUpgrade *bool `protobuf:"varint,26,opt,name=database_upgrade,json=databaseUpgrade,proto3,oneof" json:"database_upgrade,omitempty"`
+ Rgb []byte `protobuf:"bytes,27,opt,name=rgb,proto3,oneof" json:"rgb,omitempty"`
+ Alias *string `protobuf:"bytes,28,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ PidFile *string `protobuf:"bytes,29,opt,name=pid_file,json=pidFile,proto3,oneof" json:"pid_file,omitempty"`
+ IgnoreFeeLimits *bool `protobuf:"varint,30,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
+ WatchtimeBlocks *uint32 `protobuf:"varint,31,opt,name=watchtime_blocks,json=watchtimeBlocks,proto3,oneof" json:"watchtime_blocks,omitempty"`
+ MaxLocktimeBlocks *uint32 `protobuf:"varint,32,opt,name=max_locktime_blocks,json=maxLocktimeBlocks,proto3,oneof" json:"max_locktime_blocks,omitempty"`
+ FundingConfirms *uint32 `protobuf:"varint,33,opt,name=funding_confirms,json=fundingConfirms,proto3,oneof" json:"funding_confirms,omitempty"`
+ CltvDelta *uint32 `protobuf:"varint,34,opt,name=cltv_delta,json=cltvDelta,proto3,oneof" json:"cltv_delta,omitempty"`
+ CltvFinal *uint32 `protobuf:"varint,35,opt,name=cltv_final,json=cltvFinal,proto3,oneof" json:"cltv_final,omitempty"`
+ CommitTime *uint32 `protobuf:"varint,36,opt,name=commit_time,json=commitTime,proto3,oneof" json:"commit_time,omitempty"`
+ FeeBase *uint32 `protobuf:"varint,37,opt,name=fee_base,json=feeBase,proto3,oneof" json:"fee_base,omitempty"`
+ Rescan *int64 `protobuf:"zigzag64,38,opt,name=rescan,proto3,oneof" json:"rescan,omitempty"`
+ FeePerSatoshi *uint32 `protobuf:"varint,39,opt,name=fee_per_satoshi,json=feePerSatoshi,proto3,oneof" json:"fee_per_satoshi,omitempty"`
+ MaxConcurrentHtlcs *uint32 `protobuf:"varint,40,opt,name=max_concurrent_htlcs,json=maxConcurrentHtlcs,proto3,oneof" json:"max_concurrent_htlcs,omitempty"`
+ HtlcMinimumMsat *Amount `protobuf:"bytes,41,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
+ HtlcMaximumMsat *Amount `protobuf:"bytes,42,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
+ MaxDustHtlcExposureMsat *Amount `protobuf:"bytes,43,opt,name=max_dust_htlc_exposure_msat,json=maxDustHtlcExposureMsat,proto3,oneof" json:"max_dust_htlc_exposure_msat,omitempty"`
+ MinCapacitySat *uint64 `protobuf:"varint,44,opt,name=min_capacity_sat,json=minCapacitySat,proto3,oneof" json:"min_capacity_sat,omitempty"`
+ Addr *string `protobuf:"bytes,45,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
+ AnnounceAddr *string `protobuf:"bytes,46,opt,name=announce_addr,json=announceAddr,proto3,oneof" json:"announce_addr,omitempty"`
+ BindAddr *string `protobuf:"bytes,47,opt,name=bind_addr,json=bindAddr,proto3,oneof" json:"bind_addr,omitempty"`
+ Offline *bool `protobuf:"varint,48,opt,name=offline,proto3,oneof" json:"offline,omitempty"`
+ Autolisten *bool `protobuf:"varint,49,opt,name=autolisten,proto3,oneof" json:"autolisten,omitempty"`
+ Proxy *string `protobuf:"bytes,50,opt,name=proxy,proto3,oneof" json:"proxy,omitempty"`
+ DisableDns *bool `protobuf:"varint,51,opt,name=disable_dns,json=disableDns,proto3,oneof" json:"disable_dns,omitempty"`
+ AnnounceAddrDiscovered *string `protobuf:"bytes,52,opt,name=announce_addr_discovered,json=announceAddrDiscovered,proto3,oneof" json:"announce_addr_discovered,omitempty"`
+ AnnounceAddrDiscoveredPort *int64 `protobuf:"zigzag64,53,opt,name=announce_addr_discovered_port,json=announceAddrDiscoveredPort,proto3,oneof" json:"announce_addr_discovered_port,omitempty"`
+ EncryptedHsm *bool `protobuf:"varint,54,opt,name=encrypted_hsm,json=encryptedHsm,proto3,oneof" json:"encrypted_hsm,omitempty"`
+ RpcFileMode *string `protobuf:"bytes,55,opt,name=rpc_file_mode,json=rpcFileMode,proto3,oneof" json:"rpc_file_mode,omitempty"`
+ LogLevel *string `protobuf:"bytes,56,opt,name=log_level,json=logLevel,proto3,oneof" json:"log_level,omitempty"`
+ LogPrefix *string `protobuf:"bytes,57,opt,name=log_prefix,json=logPrefix,proto3,oneof" json:"log_prefix,omitempty"`
+ LogFile *string `protobuf:"bytes,58,opt,name=log_file,json=logFile,proto3,oneof" json:"log_file,omitempty"`
+ LogTimestamps *bool `protobuf:"varint,59,opt,name=log_timestamps,json=logTimestamps,proto3,oneof" json:"log_timestamps,omitempty"`
+ ForceFeerates *string `protobuf:"bytes,60,opt,name=force_feerates,json=forceFeerates,proto3,oneof" json:"force_feerates,omitempty"`
+ Subdaemon *string `protobuf:"bytes,61,opt,name=subdaemon,proto3,oneof" json:"subdaemon,omitempty"`
+ FetchinvoiceNoconnect *bool `protobuf:"varint,62,opt,name=fetchinvoice_noconnect,json=fetchinvoiceNoconnect,proto3,oneof" json:"fetchinvoice_noconnect,omitempty"`
+ AcceptHtlcTlvTypes *string `protobuf:"bytes,63,opt,name=accept_htlc_tlv_types,json=acceptHtlcTlvTypes,proto3,oneof" json:"accept_htlc_tlv_types,omitempty"`
+ TorServicePassword *string `protobuf:"bytes,64,opt,name=tor_service_password,json=torServicePassword,proto3,oneof" json:"tor_service_password,omitempty"`
+ DevAllowdustreserve *bool `protobuf:"varint,65,opt,name=dev_allowdustreserve,json=devAllowdustreserve,proto3,oneof" json:"dev_allowdustreserve,omitempty"`
+ AnnounceAddrDns *bool `protobuf:"varint,66,opt,name=announce_addr_dns,json=announceAddrDns,proto3,oneof" json:"announce_addr_dns,omitempty"`
+ RequireConfirmedInputs *bool `protobuf:"varint,67,opt,name=require_confirmed_inputs,json=requireConfirmedInputs,proto3,oneof" json:"require_confirmed_inputs,omitempty"`
+ Developer *bool `protobuf:"varint,68,opt,name=developer,proto3,oneof" json:"developer,omitempty"`
+ CommitFee *uint64 `protobuf:"varint,69,opt,name=commit_fee,json=commitFee,proto3,oneof" json:"commit_fee,omitempty"`
+ MinEmergencyMsat *Amount `protobuf:"bytes,70,opt,name=min_emergency_msat,json=minEmergencyMsat,proto3,oneof" json:"min_emergency_msat,omitempty"`
+ CommitFeerateOffset *uint32 `protobuf:"varint,71,opt,name=commit_feerate_offset,json=commitFeerateOffset,proto3,oneof" json:"commit_feerate_offset,omitempty"`
+}
+
+func (x *ListconfigsResponse) Reset() {
+ *x = ListconfigsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[290]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsResponse) ProtoMessage() {}
+
+func (x *ListconfigsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[290]
+ 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 ListconfigsResponse.ProtoReflect.Descriptor instead.
+func (*ListconfigsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{290}
+}
+
+func (x *ListconfigsResponse) GetConfigs() *ListconfigsConfigs {
+ if x != nil {
+ return x.Configs
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetPlugins() []*ListconfigsPlugins {
+ if x != nil {
+ return x.Plugins
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetImportantPlugins() []*ListconfigsImportantplugins {
+ if x != nil {
+ return x.ImportantPlugins
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetConf() string {
+ if x != nil && x.Conf != nil {
+ return *x.Conf
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLightningDir() string {
+ if x != nil && x.LightningDir != nil {
+ return *x.LightningDir
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetNetwork() string {
+ if x != nil && x.Network != nil {
+ return *x.Network
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetAllowDeprecatedApis() bool {
+ if x != nil && x.AllowDeprecatedApis != nil {
+ return *x.AllowDeprecatedApis
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetRpcFile() string {
+ if x != nil && x.RpcFile != nil {
+ return *x.RpcFile
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetDisablePlugin() []string {
+ if x != nil {
+ return x.DisablePlugin
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetBookkeeperDir() string {
+ if x != nil && x.BookkeeperDir != nil {
+ return *x.BookkeeperDir
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetBookkeeperDb() string {
+ if x != nil && x.BookkeeperDb != nil {
+ return *x.BookkeeperDb
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetAlwaysUseProxy() bool {
+ if x != nil && x.AlwaysUseProxy != nil {
+ return *x.AlwaysUseProxy
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetDaemon() bool {
+ if x != nil && x.Daemon != nil {
+ return *x.Daemon
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetWallet() string {
+ if x != nil && x.Wallet != nil {
+ return *x.Wallet
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLargeChannels() bool {
+ if x != nil && x.LargeChannels != nil {
+ return *x.LargeChannels
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalDualFund() bool {
+ if x != nil && x.ExperimentalDualFund != nil {
+ return *x.ExperimentalDualFund
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalSplicing() bool {
+ if x != nil && x.ExperimentalSplicing != nil {
+ return *x.ExperimentalSplicing
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalOnionMessages() bool {
+ if x != nil && x.ExperimentalOnionMessages != nil {
+ return *x.ExperimentalOnionMessages
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalOffers() bool {
+ if x != nil && x.ExperimentalOffers != nil {
+ return *x.ExperimentalOffers
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalShutdownWrongFunding() bool {
+ if x != nil && x.ExperimentalShutdownWrongFunding != nil {
+ return *x.ExperimentalShutdownWrongFunding
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalPeerStorage() bool {
+ if x != nil && x.ExperimentalPeerStorage != nil {
+ return *x.ExperimentalPeerStorage
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalQuiesce() bool {
+ if x != nil && x.ExperimentalQuiesce != nil {
+ return *x.ExperimentalQuiesce
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetExperimentalUpgradeProtocol() bool {
+ if x != nil && x.ExperimentalUpgradeProtocol != nil {
+ return *x.ExperimentalUpgradeProtocol
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetInvoicesOnchainFallback() bool {
+ if x != nil && x.InvoicesOnchainFallback != nil {
+ return *x.InvoicesOnchainFallback
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetDatabaseUpgrade() bool {
+ if x != nil && x.DatabaseUpgrade != nil {
+ return *x.DatabaseUpgrade
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetRgb() []byte {
+ if x != nil {
+ return x.Rgb
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetAlias() string {
+ if x != nil && x.Alias != nil {
+ return *x.Alias
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetPidFile() string {
+ if x != nil && x.PidFile != nil {
+ return *x.PidFile
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetIgnoreFeeLimits() bool {
+ if x != nil && x.IgnoreFeeLimits != nil {
+ return *x.IgnoreFeeLimits
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetWatchtimeBlocks() uint32 {
+ if x != nil && x.WatchtimeBlocks != nil {
+ return *x.WatchtimeBlocks
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetMaxLocktimeBlocks() uint32 {
+ if x != nil && x.MaxLocktimeBlocks != nil {
+ return *x.MaxLocktimeBlocks
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetFundingConfirms() uint32 {
+ if x != nil && x.FundingConfirms != nil {
+ return *x.FundingConfirms
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetCltvDelta() uint32 {
+ if x != nil && x.CltvDelta != nil {
+ return *x.CltvDelta
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetCltvFinal() uint32 {
+ if x != nil && x.CltvFinal != nil {
+ return *x.CltvFinal
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetCommitTime() uint32 {
+ if x != nil && x.CommitTime != nil {
+ return *x.CommitTime
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetFeeBase() uint32 {
+ if x != nil && x.FeeBase != nil {
+ return *x.FeeBase
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetRescan() int64 {
+ if x != nil && x.Rescan != nil {
+ return *x.Rescan
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetFeePerSatoshi() uint32 {
+ if x != nil && x.FeePerSatoshi != nil {
+ return *x.FeePerSatoshi
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetMaxConcurrentHtlcs() uint32 {
+ if x != nil && x.MaxConcurrentHtlcs != nil {
+ return *x.MaxConcurrentHtlcs
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetHtlcMinimumMsat() *Amount {
+ if x != nil {
+ return x.HtlcMinimumMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetHtlcMaximumMsat() *Amount {
+ if x != nil {
+ return x.HtlcMaximumMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetMaxDustHtlcExposureMsat() *Amount {
+ if x != nil {
+ return x.MaxDustHtlcExposureMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetMinCapacitySat() uint64 {
+ if x != nil && x.MinCapacitySat != nil {
+ return *x.MinCapacitySat
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetAddr() string {
+ if x != nil && x.Addr != nil {
+ return *x.Addr
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetAnnounceAddr() string {
+ if x != nil && x.AnnounceAddr != nil {
+ return *x.AnnounceAddr
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetBindAddr() string {
+ if x != nil && x.BindAddr != nil {
+ return *x.BindAddr
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetOffline() bool {
+ if x != nil && x.Offline != nil {
+ return *x.Offline
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetAutolisten() bool {
+ if x != nil && x.Autolisten != nil {
+ return *x.Autolisten
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetProxy() string {
+ if x != nil && x.Proxy != nil {
+ return *x.Proxy
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetDisableDns() bool {
+ if x != nil && x.DisableDns != nil {
+ return *x.DisableDns
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetAnnounceAddrDiscovered() string {
+ if x != nil && x.AnnounceAddrDiscovered != nil {
+ return *x.AnnounceAddrDiscovered
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetAnnounceAddrDiscoveredPort() int64 {
+ if x != nil && x.AnnounceAddrDiscoveredPort != nil {
+ return *x.AnnounceAddrDiscoveredPort
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetEncryptedHsm() bool {
+ if x != nil && x.EncryptedHsm != nil {
+ return *x.EncryptedHsm
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetRpcFileMode() string {
+ if x != nil && x.RpcFileMode != nil {
+ return *x.RpcFileMode
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLogLevel() string {
+ if x != nil && x.LogLevel != nil {
+ return *x.LogLevel
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLogPrefix() string {
+ if x != nil && x.LogPrefix != nil {
+ return *x.LogPrefix
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLogFile() string {
+ if x != nil && x.LogFile != nil {
+ return *x.LogFile
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetLogTimestamps() bool {
+ if x != nil && x.LogTimestamps != nil {
+ return *x.LogTimestamps
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetForceFeerates() string {
+ if x != nil && x.ForceFeerates != nil {
+ return *x.ForceFeerates
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetSubdaemon() string {
+ if x != nil && x.Subdaemon != nil {
+ return *x.Subdaemon
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetFetchinvoiceNoconnect() bool {
+ if x != nil && x.FetchinvoiceNoconnect != nil {
+ return *x.FetchinvoiceNoconnect
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetAcceptHtlcTlvTypes() string {
+ if x != nil && x.AcceptHtlcTlvTypes != nil {
+ return *x.AcceptHtlcTlvTypes
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetTorServicePassword() string {
+ if x != nil && x.TorServicePassword != nil {
+ return *x.TorServicePassword
+ }
+ return ""
+}
+
+func (x *ListconfigsResponse) GetDevAllowdustreserve() bool {
+ if x != nil && x.DevAllowdustreserve != nil {
+ return *x.DevAllowdustreserve
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetAnnounceAddrDns() bool {
+ if x != nil && x.AnnounceAddrDns != nil {
+ return *x.AnnounceAddrDns
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetRequireConfirmedInputs() bool {
+ if x != nil && x.RequireConfirmedInputs != nil {
+ return *x.RequireConfirmedInputs
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetDeveloper() bool {
+ if x != nil && x.Developer != nil {
+ return *x.Developer
+ }
+ return false
+}
+
+func (x *ListconfigsResponse) GetCommitFee() uint64 {
+ if x != nil && x.CommitFee != nil {
+ return *x.CommitFee
+ }
+ return 0
+}
+
+func (x *ListconfigsResponse) GetMinEmergencyMsat() *Amount {
+ if x != nil {
+ return x.MinEmergencyMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsResponse) GetCommitFeerateOffset() uint32 {
+ if x != nil && x.CommitFeerateOffset != nil {
+ return *x.CommitFeerateOffset
+ }
+ return 0
+}
+
+type ListconfigsConfigs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Conf *ListconfigsConfigsConf `protobuf:"bytes,1,opt,name=conf,proto3,oneof" json:"conf,omitempty"`
+ Developer *ListconfigsConfigsDeveloper `protobuf:"bytes,2,opt,name=developer,proto3,oneof" json:"developer,omitempty"`
+ ClearPlugins *ListconfigsConfigsClearplugins `protobuf:"bytes,3,opt,name=clear_plugins,json=clearPlugins,proto3,oneof" json:"clear_plugins,omitempty"`
+ DisableMpp *ListconfigsConfigsDisablempp `protobuf:"bytes,4,opt,name=disable_mpp,json=disableMpp,proto3,oneof" json:"disable_mpp,omitempty"`
+ Mainnet *ListconfigsConfigsMainnet `protobuf:"bytes,5,opt,name=mainnet,proto3,oneof" json:"mainnet,omitempty"`
+ Regtest *ListconfigsConfigsRegtest `protobuf:"bytes,6,opt,name=regtest,proto3,oneof" json:"regtest,omitempty"`
+ Signet *ListconfigsConfigsSignet `protobuf:"bytes,7,opt,name=signet,proto3,oneof" json:"signet,omitempty"`
+ Testnet *ListconfigsConfigsTestnet `protobuf:"bytes,8,opt,name=testnet,proto3,oneof" json:"testnet,omitempty"`
+ ImportantPlugin *ListconfigsConfigsImportantplugin `protobuf:"bytes,9,opt,name=important_plugin,json=importantPlugin,proto3,oneof" json:"important_plugin,omitempty"`
+ Plugin *ListconfigsConfigsPlugin `protobuf:"bytes,10,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
+ PluginDir *ListconfigsConfigsPlugindir `protobuf:"bytes,11,opt,name=plugin_dir,json=pluginDir,proto3,oneof" json:"plugin_dir,omitempty"`
+ LightningDir *ListconfigsConfigsLightningdir `protobuf:"bytes,12,opt,name=lightning_dir,json=lightningDir,proto3,oneof" json:"lightning_dir,omitempty"`
+ Network *ListconfigsConfigsNetwork `protobuf:"bytes,13,opt,name=network,proto3,oneof" json:"network,omitempty"`
+ AllowDeprecatedApis *ListconfigsConfigsAllowdeprecatedapis `protobuf:"bytes,14,opt,name=allow_deprecated_apis,json=allowDeprecatedApis,proto3,oneof" json:"allow_deprecated_apis,omitempty"`
+ RpcFile *ListconfigsConfigsRpcfile `protobuf:"bytes,15,opt,name=rpc_file,json=rpcFile,proto3,oneof" json:"rpc_file,omitempty"`
+ DisablePlugin *ListconfigsConfigsDisableplugin `protobuf:"bytes,16,opt,name=disable_plugin,json=disablePlugin,proto3,oneof" json:"disable_plugin,omitempty"`
+ AlwaysUseProxy *ListconfigsConfigsAlwaysuseproxy `protobuf:"bytes,17,opt,name=always_use_proxy,json=alwaysUseProxy,proto3,oneof" json:"always_use_proxy,omitempty"`
+ Daemon *ListconfigsConfigsDaemon `protobuf:"bytes,18,opt,name=daemon,proto3,oneof" json:"daemon,omitempty"`
+ Wallet *ListconfigsConfigsWallet `protobuf:"bytes,19,opt,name=wallet,proto3,oneof" json:"wallet,omitempty"`
+ LargeChannels *ListconfigsConfigsLargechannels `protobuf:"bytes,20,opt,name=large_channels,json=largeChannels,proto3,oneof" json:"large_channels,omitempty"`
+ ExperimentalDualFund *ListconfigsConfigsExperimentaldualfund `protobuf:"bytes,21,opt,name=experimental_dual_fund,json=experimentalDualFund,proto3,oneof" json:"experimental_dual_fund,omitempty"`
+ ExperimentalSplicing *ListconfigsConfigsExperimentalsplicing `protobuf:"bytes,22,opt,name=experimental_splicing,json=experimentalSplicing,proto3,oneof" json:"experimental_splicing,omitempty"`
+ ExperimentalOnionMessages *ListconfigsConfigsExperimentalonionmessages `protobuf:"bytes,23,opt,name=experimental_onion_messages,json=experimentalOnionMessages,proto3,oneof" json:"experimental_onion_messages,omitempty"`
+ ExperimentalOffers *ListconfigsConfigsExperimentaloffers `protobuf:"bytes,24,opt,name=experimental_offers,json=experimentalOffers,proto3,oneof" json:"experimental_offers,omitempty"`
+ ExperimentalShutdownWrongFunding *ListconfigsConfigsExperimentalshutdownwrongfunding `protobuf:"bytes,25,opt,name=experimental_shutdown_wrong_funding,json=experimentalShutdownWrongFunding,proto3,oneof" json:"experimental_shutdown_wrong_funding,omitempty"`
+ ExperimentalPeerStorage *ListconfigsConfigsExperimentalpeerstorage `protobuf:"bytes,26,opt,name=experimental_peer_storage,json=experimentalPeerStorage,proto3,oneof" json:"experimental_peer_storage,omitempty"`
+ ExperimentalAnchors *ListconfigsConfigsExperimentalanchors `protobuf:"bytes,27,opt,name=experimental_anchors,json=experimentalAnchors,proto3,oneof" json:"experimental_anchors,omitempty"`
+ DatabaseUpgrade *ListconfigsConfigsDatabaseupgrade `protobuf:"bytes,28,opt,name=database_upgrade,json=databaseUpgrade,proto3,oneof" json:"database_upgrade,omitempty"`
+ Rgb *ListconfigsConfigsRgb `protobuf:"bytes,29,opt,name=rgb,proto3,oneof" json:"rgb,omitempty"`
+ Alias *ListconfigsConfigsAlias `protobuf:"bytes,30,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
+ PidFile *ListconfigsConfigsPidfile `protobuf:"bytes,31,opt,name=pid_file,json=pidFile,proto3,oneof" json:"pid_file,omitempty"`
+ IgnoreFeeLimits *ListconfigsConfigsIgnorefeelimits `protobuf:"bytes,32,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
+ WatchtimeBlocks *ListconfigsConfigsWatchtimeblocks `protobuf:"bytes,33,opt,name=watchtime_blocks,json=watchtimeBlocks,proto3,oneof" json:"watchtime_blocks,omitempty"`
+ MaxLocktimeBlocks *ListconfigsConfigsMaxlocktimeblocks `protobuf:"bytes,34,opt,name=max_locktime_blocks,json=maxLocktimeBlocks,proto3,oneof" json:"max_locktime_blocks,omitempty"`
+ FundingConfirms *ListconfigsConfigsFundingconfirms `protobuf:"bytes,35,opt,name=funding_confirms,json=fundingConfirms,proto3,oneof" json:"funding_confirms,omitempty"`
+ CltvDelta *ListconfigsConfigsCltvdelta `protobuf:"bytes,36,opt,name=cltv_delta,json=cltvDelta,proto3,oneof" json:"cltv_delta,omitempty"`
+ CltvFinal *ListconfigsConfigsCltvfinal `protobuf:"bytes,37,opt,name=cltv_final,json=cltvFinal,proto3,oneof" json:"cltv_final,omitempty"`
+ CommitTime *ListconfigsConfigsCommittime `protobuf:"bytes,38,opt,name=commit_time,json=commitTime,proto3,oneof" json:"commit_time,omitempty"`
+ FeeBase *ListconfigsConfigsFeebase `protobuf:"bytes,39,opt,name=fee_base,json=feeBase,proto3,oneof" json:"fee_base,omitempty"`
+ Rescan *ListconfigsConfigsRescan `protobuf:"bytes,40,opt,name=rescan,proto3,oneof" json:"rescan,omitempty"`
+ FeePerSatoshi *ListconfigsConfigsFeepersatoshi `protobuf:"bytes,41,opt,name=fee_per_satoshi,json=feePerSatoshi,proto3,oneof" json:"fee_per_satoshi,omitempty"`
+ MaxConcurrentHtlcs *ListconfigsConfigsMaxconcurrenthtlcs `protobuf:"bytes,42,opt,name=max_concurrent_htlcs,json=maxConcurrentHtlcs,proto3,oneof" json:"max_concurrent_htlcs,omitempty"`
+ HtlcMinimumMsat *ListconfigsConfigsHtlcminimummsat `protobuf:"bytes,43,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
+ HtlcMaximumMsat *ListconfigsConfigsHtlcmaximummsat `protobuf:"bytes,44,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
+ MaxDustHtlcExposureMsat *ListconfigsConfigsMaxdusthtlcexposuremsat `protobuf:"bytes,45,opt,name=max_dust_htlc_exposure_msat,json=maxDustHtlcExposureMsat,proto3,oneof" json:"max_dust_htlc_exposure_msat,omitempty"`
+ MinCapacitySat *ListconfigsConfigsMincapacitysat `protobuf:"bytes,46,opt,name=min_capacity_sat,json=minCapacitySat,proto3,oneof" json:"min_capacity_sat,omitempty"`
+ Addr *ListconfigsConfigsAddr `protobuf:"bytes,47,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
+ AnnounceAddr *ListconfigsConfigsAnnounceaddr `protobuf:"bytes,48,opt,name=announce_addr,json=announceAddr,proto3,oneof" json:"announce_addr,omitempty"`
+ BindAddr *ListconfigsConfigsBindaddr `protobuf:"bytes,49,opt,name=bind_addr,json=bindAddr,proto3,oneof" json:"bind_addr,omitempty"`
+ Offline *ListconfigsConfigsOffline `protobuf:"bytes,50,opt,name=offline,proto3,oneof" json:"offline,omitempty"`
+ Autolisten *ListconfigsConfigsAutolisten `protobuf:"bytes,51,opt,name=autolisten,proto3,oneof" json:"autolisten,omitempty"`
+ Proxy *ListconfigsConfigsProxy `protobuf:"bytes,52,opt,name=proxy,proto3,oneof" json:"proxy,omitempty"`
+ DisableDns *ListconfigsConfigsDisabledns `protobuf:"bytes,53,opt,name=disable_dns,json=disableDns,proto3,oneof" json:"disable_dns,omitempty"`
+ AnnounceAddrDiscovered *ListconfigsConfigsAnnounceaddrdiscovered `protobuf:"bytes,54,opt,name=announce_addr_discovered,json=announceAddrDiscovered,proto3,oneof" json:"announce_addr_discovered,omitempty"`
+ AnnounceAddrDiscoveredPort *ListconfigsConfigsAnnounceaddrdiscoveredport `protobuf:"bytes,55,opt,name=announce_addr_discovered_port,json=announceAddrDiscoveredPort,proto3,oneof" json:"announce_addr_discovered_port,omitempty"`
+ EncryptedHsm *ListconfigsConfigsEncryptedhsm `protobuf:"bytes,56,opt,name=encrypted_hsm,json=encryptedHsm,proto3,oneof" json:"encrypted_hsm,omitempty"`
+ RpcFileMode *ListconfigsConfigsRpcfilemode `protobuf:"bytes,57,opt,name=rpc_file_mode,json=rpcFileMode,proto3,oneof" json:"rpc_file_mode,omitempty"`
+ LogLevel *ListconfigsConfigsLoglevel `protobuf:"bytes,58,opt,name=log_level,json=logLevel,proto3,oneof" json:"log_level,omitempty"`
+ LogPrefix *ListconfigsConfigsLogprefix `protobuf:"bytes,59,opt,name=log_prefix,json=logPrefix,proto3,oneof" json:"log_prefix,omitempty"`
+ LogFile *ListconfigsConfigsLogfile `protobuf:"bytes,60,opt,name=log_file,json=logFile,proto3,oneof" json:"log_file,omitempty"`
+ LogTimestamps *ListconfigsConfigsLogtimestamps `protobuf:"bytes,61,opt,name=log_timestamps,json=logTimestamps,proto3,oneof" json:"log_timestamps,omitempty"`
+ ForceFeerates *ListconfigsConfigsForcefeerates `protobuf:"bytes,62,opt,name=force_feerates,json=forceFeerates,proto3,oneof" json:"force_feerates,omitempty"`
+ Subdaemon *ListconfigsConfigsSubdaemon `protobuf:"bytes,63,opt,name=subdaemon,proto3,oneof" json:"subdaemon,omitempty"`
+ FetchinvoiceNoconnect *ListconfigsConfigsFetchinvoicenoconnect `protobuf:"bytes,64,opt,name=fetchinvoice_noconnect,json=fetchinvoiceNoconnect,proto3,oneof" json:"fetchinvoice_noconnect,omitempty"`
+ AcceptHtlcTlvTypes *ListconfigsConfigsAccepthtlctlvtypes `protobuf:"bytes,65,opt,name=accept_htlc_tlv_types,json=acceptHtlcTlvTypes,proto3,oneof" json:"accept_htlc_tlv_types,omitempty"`
+ TorServicePassword *ListconfigsConfigsTorservicepassword `protobuf:"bytes,66,opt,name=tor_service_password,json=torServicePassword,proto3,oneof" json:"tor_service_password,omitempty"`
+ AnnounceAddrDns *ListconfigsConfigsAnnounceaddrdns `protobuf:"bytes,67,opt,name=announce_addr_dns,json=announceAddrDns,proto3,oneof" json:"announce_addr_dns,omitempty"`
+ RequireConfirmedInputs *ListconfigsConfigsRequireconfirmedinputs `protobuf:"bytes,68,opt,name=require_confirmed_inputs,json=requireConfirmedInputs,proto3,oneof" json:"require_confirmed_inputs,omitempty"`
+ CommitFee *ListconfigsConfigsCommitfee `protobuf:"bytes,69,opt,name=commit_fee,json=commitFee,proto3,oneof" json:"commit_fee,omitempty"`
+ CommitFeerateOffset *ListconfigsConfigsCommitfeerateoffset `protobuf:"bytes,70,opt,name=commit_feerate_offset,json=commitFeerateOffset,proto3,oneof" json:"commit_feerate_offset,omitempty"`
+}
+
+func (x *ListconfigsConfigs) Reset() {
+ *x = ListconfigsConfigs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[291]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigs) ProtoMessage() {}
+
+func (x *ListconfigsConfigs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[291]
+ 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 ListconfigsConfigs.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{291}
+}
+
+func (x *ListconfigsConfigs) GetConf() *ListconfigsConfigsConf {
+ if x != nil {
+ return x.Conf
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDeveloper() *ListconfigsConfigsDeveloper {
+ if x != nil {
+ return x.Developer
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetClearPlugins() *ListconfigsConfigsClearplugins {
+ if x != nil {
+ return x.ClearPlugins
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDisableMpp() *ListconfigsConfigsDisablempp {
+ if x != nil {
+ return x.DisableMpp
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetMainnet() *ListconfigsConfigsMainnet {
+ if x != nil {
+ return x.Mainnet
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRegtest() *ListconfigsConfigsRegtest {
+ if x != nil {
+ return x.Regtest
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetSignet() *ListconfigsConfigsSignet {
+ if x != nil {
+ return x.Signet
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetTestnet() *ListconfigsConfigsTestnet {
+ if x != nil {
+ return x.Testnet
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetImportantPlugin() *ListconfigsConfigsImportantplugin {
+ if x != nil {
+ return x.ImportantPlugin
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetPlugin() *ListconfigsConfigsPlugin {
+ if x != nil {
+ return x.Plugin
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetPluginDir() *ListconfigsConfigsPlugindir {
+ if x != nil {
+ return x.PluginDir
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLightningDir() *ListconfigsConfigsLightningdir {
+ if x != nil {
+ return x.LightningDir
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetNetwork() *ListconfigsConfigsNetwork {
+ if x != nil {
+ return x.Network
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAllowDeprecatedApis() *ListconfigsConfigsAllowdeprecatedapis {
+ if x != nil {
+ return x.AllowDeprecatedApis
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRpcFile() *ListconfigsConfigsRpcfile {
+ if x != nil {
+ return x.RpcFile
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDisablePlugin() *ListconfigsConfigsDisableplugin {
+ if x != nil {
+ return x.DisablePlugin
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAlwaysUseProxy() *ListconfigsConfigsAlwaysuseproxy {
+ if x != nil {
+ return x.AlwaysUseProxy
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDaemon() *ListconfigsConfigsDaemon {
+ if x != nil {
+ return x.Daemon
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetWallet() *ListconfigsConfigsWallet {
+ if x != nil {
+ return x.Wallet
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLargeChannels() *ListconfigsConfigsLargechannels {
+ if x != nil {
+ return x.LargeChannels
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalDualFund() *ListconfigsConfigsExperimentaldualfund {
+ if x != nil {
+ return x.ExperimentalDualFund
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalSplicing() *ListconfigsConfigsExperimentalsplicing {
+ if x != nil {
+ return x.ExperimentalSplicing
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalOnionMessages() *ListconfigsConfigsExperimentalonionmessages {
+ if x != nil {
+ return x.ExperimentalOnionMessages
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalOffers() *ListconfigsConfigsExperimentaloffers {
+ if x != nil {
+ return x.ExperimentalOffers
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalShutdownWrongFunding() *ListconfigsConfigsExperimentalshutdownwrongfunding {
+ if x != nil {
+ return x.ExperimentalShutdownWrongFunding
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalPeerStorage() *ListconfigsConfigsExperimentalpeerstorage {
+ if x != nil {
+ return x.ExperimentalPeerStorage
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetExperimentalAnchors() *ListconfigsConfigsExperimentalanchors {
+ if x != nil {
+ return x.ExperimentalAnchors
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDatabaseUpgrade() *ListconfigsConfigsDatabaseupgrade {
+ if x != nil {
+ return x.DatabaseUpgrade
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRgb() *ListconfigsConfigsRgb {
+ if x != nil {
+ return x.Rgb
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAlias() *ListconfigsConfigsAlias {
+ if x != nil {
+ return x.Alias
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetPidFile() *ListconfigsConfigsPidfile {
+ if x != nil {
+ return x.PidFile
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetIgnoreFeeLimits() *ListconfigsConfigsIgnorefeelimits {
+ if x != nil {
+ return x.IgnoreFeeLimits
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetWatchtimeBlocks() *ListconfigsConfigsWatchtimeblocks {
+ if x != nil {
+ return x.WatchtimeBlocks
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetMaxLocktimeBlocks() *ListconfigsConfigsMaxlocktimeblocks {
+ if x != nil {
+ return x.MaxLocktimeBlocks
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetFundingConfirms() *ListconfigsConfigsFundingconfirms {
+ if x != nil {
+ return x.FundingConfirms
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetCltvDelta() *ListconfigsConfigsCltvdelta {
+ if x != nil {
+ return x.CltvDelta
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetCltvFinal() *ListconfigsConfigsCltvfinal {
+ if x != nil {
+ return x.CltvFinal
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetCommitTime() *ListconfigsConfigsCommittime {
+ if x != nil {
+ return x.CommitTime
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetFeeBase() *ListconfigsConfigsFeebase {
+ if x != nil {
+ return x.FeeBase
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRescan() *ListconfigsConfigsRescan {
+ if x != nil {
+ return x.Rescan
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetFeePerSatoshi() *ListconfigsConfigsFeepersatoshi {
+ if x != nil {
+ return x.FeePerSatoshi
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetMaxConcurrentHtlcs() *ListconfigsConfigsMaxconcurrenthtlcs {
+ if x != nil {
+ return x.MaxConcurrentHtlcs
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetHtlcMinimumMsat() *ListconfigsConfigsHtlcminimummsat {
+ if x != nil {
+ return x.HtlcMinimumMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetHtlcMaximumMsat() *ListconfigsConfigsHtlcmaximummsat {
+ if x != nil {
+ return x.HtlcMaximumMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetMaxDustHtlcExposureMsat() *ListconfigsConfigsMaxdusthtlcexposuremsat {
+ if x != nil {
+ return x.MaxDustHtlcExposureMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetMinCapacitySat() *ListconfigsConfigsMincapacitysat {
+ if x != nil {
+ return x.MinCapacitySat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAddr() *ListconfigsConfigsAddr {
+ if x != nil {
+ return x.Addr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAnnounceAddr() *ListconfigsConfigsAnnounceaddr {
+ if x != nil {
+ return x.AnnounceAddr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetBindAddr() *ListconfigsConfigsBindaddr {
+ if x != nil {
+ return x.BindAddr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetOffline() *ListconfigsConfigsOffline {
+ if x != nil {
+ return x.Offline
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAutolisten() *ListconfigsConfigsAutolisten {
+ if x != nil {
+ return x.Autolisten
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetProxy() *ListconfigsConfigsProxy {
+ if x != nil {
+ return x.Proxy
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetDisableDns() *ListconfigsConfigsDisabledns {
+ if x != nil {
+ return x.DisableDns
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAnnounceAddrDiscovered() *ListconfigsConfigsAnnounceaddrdiscovered {
+ if x != nil {
+ return x.AnnounceAddrDiscovered
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAnnounceAddrDiscoveredPort() *ListconfigsConfigsAnnounceaddrdiscoveredport {
+ if x != nil {
+ return x.AnnounceAddrDiscoveredPort
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetEncryptedHsm() *ListconfigsConfigsEncryptedhsm {
+ if x != nil {
+ return x.EncryptedHsm
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRpcFileMode() *ListconfigsConfigsRpcfilemode {
+ if x != nil {
+ return x.RpcFileMode
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLogLevel() *ListconfigsConfigsLoglevel {
+ if x != nil {
+ return x.LogLevel
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLogPrefix() *ListconfigsConfigsLogprefix {
+ if x != nil {
+ return x.LogPrefix
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLogFile() *ListconfigsConfigsLogfile {
+ if x != nil {
+ return x.LogFile
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetLogTimestamps() *ListconfigsConfigsLogtimestamps {
+ if x != nil {
+ return x.LogTimestamps
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetForceFeerates() *ListconfigsConfigsForcefeerates {
+ if x != nil {
+ return x.ForceFeerates
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetSubdaemon() *ListconfigsConfigsSubdaemon {
+ if x != nil {
+ return x.Subdaemon
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetFetchinvoiceNoconnect() *ListconfigsConfigsFetchinvoicenoconnect {
+ if x != nil {
+ return x.FetchinvoiceNoconnect
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAcceptHtlcTlvTypes() *ListconfigsConfigsAccepthtlctlvtypes {
+ if x != nil {
+ return x.AcceptHtlcTlvTypes
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetTorServicePassword() *ListconfigsConfigsTorservicepassword {
+ if x != nil {
+ return x.TorServicePassword
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetAnnounceAddrDns() *ListconfigsConfigsAnnounceaddrdns {
+ if x != nil {
+ return x.AnnounceAddrDns
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetRequireConfirmedInputs() *ListconfigsConfigsRequireconfirmedinputs {
+ if x != nil {
+ return x.RequireConfirmedInputs
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetCommitFee() *ListconfigsConfigsCommitfee {
+ if x != nil {
+ return x.CommitFee
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigs) GetCommitFeerateOffset() *ListconfigsConfigsCommitfeerateoffset {
+ if x != nil {
+ return x.CommitFeerateOffset
+ }
+ return nil
+}
+
+type ListconfigsConfigsConf struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source ListconfigsConfigsConf_ListconfigsConfigsConfSource `protobuf:"varint,2,opt,name=source,proto3,enum=cln.ListconfigsConfigsConf_ListconfigsConfigsConfSource" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsConf) Reset() {
+ *x = ListconfigsConfigsConf{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[292]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsConf) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsConf) ProtoMessage() {}
+
+func (x *ListconfigsConfigsConf) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[292]
+ 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 ListconfigsConfigsConf.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsConf) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{292}
+}
+
+func (x *ListconfigsConfigsConf) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsConf) GetSource() ListconfigsConfigsConf_ListconfigsConfigsConfSource {
+ if x != nil {
+ return x.Source
+ }
+ return ListconfigsConfigsConf_CMDLINE
+}
+
+type ListconfigsConfigsDeveloper struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsDeveloper) Reset() {
+ *x = ListconfigsConfigsDeveloper{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[293]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDeveloper) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDeveloper) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDeveloper) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[293]
+ 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 ListconfigsConfigsDeveloper.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDeveloper) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{293}
+}
+
+func (x *ListconfigsConfigsDeveloper) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsDeveloper) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsClearplugins struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsClearplugins) Reset() {
+ *x = ListconfigsConfigsClearplugins{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[294]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsClearplugins) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsClearplugins) ProtoMessage() {}
+
+func (x *ListconfigsConfigsClearplugins) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[294]
+ 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 ListconfigsConfigsClearplugins.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsClearplugins) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{294}
+}
+
+func (x *ListconfigsConfigsClearplugins) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsClearplugins) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsDisablempp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+ Plugin *string `protobuf:"bytes,3,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
+}
+
+func (x *ListconfigsConfigsDisablempp) Reset() {
+ *x = ListconfigsConfigsDisablempp{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[295]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDisablempp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDisablempp) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDisablempp) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[295]
+ 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 ListconfigsConfigsDisablempp.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDisablempp) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{295}
+}
+
+func (x *ListconfigsConfigsDisablempp) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsDisablempp) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsDisablempp) GetPlugin() string {
+ if x != nil && x.Plugin != nil {
+ return *x.Plugin
+ }
+ return ""
+}
+
+type ListconfigsConfigsMainnet struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsMainnet) Reset() {
+ *x = ListconfigsConfigsMainnet{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[296]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsMainnet) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsMainnet) ProtoMessage() {}
+
+func (x *ListconfigsConfigsMainnet) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[296]
+ 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 ListconfigsConfigsMainnet.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsMainnet) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{296}
+}
+
+func (x *ListconfigsConfigsMainnet) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsMainnet) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRegtest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRegtest) Reset() {
+ *x = ListconfigsConfigsRegtest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[297]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRegtest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRegtest) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRegtest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[297]
+ 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 ListconfigsConfigsRegtest.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRegtest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{297}
+}
+
+func (x *ListconfigsConfigsRegtest) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsRegtest) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsSignet struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsSignet) Reset() {
+ *x = ListconfigsConfigsSignet{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[298]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsSignet) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsSignet) ProtoMessage() {}
+
+func (x *ListconfigsConfigsSignet) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[298]
+ 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 ListconfigsConfigsSignet.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsSignet) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{298}
+}
+
+func (x *ListconfigsConfigsSignet) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsSignet) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsTestnet struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsTestnet) Reset() {
+ *x = ListconfigsConfigsTestnet{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[299]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsTestnet) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsTestnet) ProtoMessage() {}
+
+func (x *ListconfigsConfigsTestnet) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[299]
+ 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 ListconfigsConfigsTestnet.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsTestnet) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{299}
+}
+
+func (x *ListconfigsConfigsTestnet) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsTestnet) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsImportantplugin struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsImportantplugin) Reset() {
+ *x = ListconfigsConfigsImportantplugin{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[300]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsImportantplugin) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsImportantplugin) ProtoMessage() {}
+
+func (x *ListconfigsConfigsImportantplugin) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[300]
+ 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 ListconfigsConfigsImportantplugin.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsImportantplugin) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{300}
+}
+
+func (x *ListconfigsConfigsImportantplugin) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsImportantplugin) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsPlugin struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsPlugin) Reset() {
+ *x = ListconfigsConfigsPlugin{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[301]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsPlugin) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsPlugin) ProtoMessage() {}
+
+func (x *ListconfigsConfigsPlugin) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[301]
+ 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 ListconfigsConfigsPlugin.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsPlugin) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{301}
+}
+
+func (x *ListconfigsConfigsPlugin) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsPlugin) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsPlugindir struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsPlugindir) Reset() {
+ *x = ListconfigsConfigsPlugindir{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[302]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsPlugindir) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsPlugindir) ProtoMessage() {}
+
+func (x *ListconfigsConfigsPlugindir) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[302]
+ 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 ListconfigsConfigsPlugindir.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsPlugindir) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{302}
+}
+
+func (x *ListconfigsConfigsPlugindir) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsPlugindir) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsLightningdir struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsLightningdir) Reset() {
+ *x = ListconfigsConfigsLightningdir{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[303]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLightningdir) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLightningdir) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLightningdir) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[303]
+ 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 ListconfigsConfigsLightningdir.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLightningdir) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{303}
+}
+
+func (x *ListconfigsConfigsLightningdir) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsLightningdir) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsNetwork struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsNetwork) Reset() {
+ *x = ListconfigsConfigsNetwork{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[304]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsNetwork) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsNetwork) ProtoMessage() {}
+
+func (x *ListconfigsConfigsNetwork) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[304]
+ 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 ListconfigsConfigsNetwork.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsNetwork) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{304}
+}
+
+func (x *ListconfigsConfigsNetwork) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsNetwork) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAllowdeprecatedapis struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAllowdeprecatedapis) Reset() {
+ *x = ListconfigsConfigsAllowdeprecatedapis{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[305]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAllowdeprecatedapis) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAllowdeprecatedapis) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAllowdeprecatedapis) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[305]
+ 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 ListconfigsConfigsAllowdeprecatedapis.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAllowdeprecatedapis) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{305}
+}
+
+func (x *ListconfigsConfigsAllowdeprecatedapis) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsAllowdeprecatedapis) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRpcfile struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRpcfile) Reset() {
+ *x = ListconfigsConfigsRpcfile{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[306]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRpcfile) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRpcfile) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRpcfile) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[306]
+ 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 ListconfigsConfigsRpcfile.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRpcfile) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{306}
+}
+
+func (x *ListconfigsConfigsRpcfile) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsRpcfile) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsDisableplugin struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsDisableplugin) Reset() {
+ *x = ListconfigsConfigsDisableplugin{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[307]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDisableplugin) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDisableplugin) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDisableplugin) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[307]
+ 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 ListconfigsConfigsDisableplugin.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDisableplugin) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{307}
+}
+
+func (x *ListconfigsConfigsDisableplugin) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsDisableplugin) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsAlwaysuseproxy struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAlwaysuseproxy) Reset() {
+ *x = ListconfigsConfigsAlwaysuseproxy{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[308]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAlwaysuseproxy) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAlwaysuseproxy) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAlwaysuseproxy) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[308]
+ 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 ListconfigsConfigsAlwaysuseproxy.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAlwaysuseproxy) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{308}
+}
+
+func (x *ListconfigsConfigsAlwaysuseproxy) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsAlwaysuseproxy) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsDaemon struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsDaemon) Reset() {
+ *x = ListconfigsConfigsDaemon{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[309]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDaemon) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDaemon) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDaemon) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[309]
+ 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 ListconfigsConfigsDaemon.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDaemon) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{309}
+}
+
+func (x *ListconfigsConfigsDaemon) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsDaemon) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsWallet struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsWallet) Reset() {
+ *x = ListconfigsConfigsWallet{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[310]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsWallet) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsWallet) ProtoMessage() {}
+
+func (x *ListconfigsConfigsWallet) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[310]
+ 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 ListconfigsConfigsWallet.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsWallet) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{310}
+}
+
+func (x *ListconfigsConfigsWallet) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsWallet) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsLargechannels struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsLargechannels) Reset() {
+ *x = ListconfigsConfigsLargechannels{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[311]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLargechannels) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLargechannels) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLargechannels) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[311]
+ 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 ListconfigsConfigsLargechannels.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLargechannels) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{311}
+}
+
+func (x *ListconfigsConfigsLargechannels) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsLargechannels) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentaldualfund struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentaldualfund) Reset() {
+ *x = ListconfigsConfigsExperimentaldualfund{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[312]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentaldualfund) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentaldualfund) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentaldualfund) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[312]
+ 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 ListconfigsConfigsExperimentaldualfund.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentaldualfund) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{312}
+}
+
+func (x *ListconfigsConfigsExperimentaldualfund) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentaldualfund) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentalsplicing struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentalsplicing) Reset() {
+ *x = ListconfigsConfigsExperimentalsplicing{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[313]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentalsplicing) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentalsplicing) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentalsplicing) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[313]
+ 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 ListconfigsConfigsExperimentalsplicing.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentalsplicing) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{313}
+}
+
+func (x *ListconfigsConfigsExperimentalsplicing) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentalsplicing) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentalonionmessages struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentalonionmessages) Reset() {
+ *x = ListconfigsConfigsExperimentalonionmessages{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[314]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentalonionmessages) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentalonionmessages) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentalonionmessages) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[314]
+ 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 ListconfigsConfigsExperimentalonionmessages.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentalonionmessages) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{314}
+}
+
+func (x *ListconfigsConfigsExperimentalonionmessages) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentalonionmessages) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentaloffers struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentaloffers) Reset() {
+ *x = ListconfigsConfigsExperimentaloffers{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[315]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentaloffers) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentaloffers) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentaloffers) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[315]
+ 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 ListconfigsConfigsExperimentaloffers.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentaloffers) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{315}
+}
+
+func (x *ListconfigsConfigsExperimentaloffers) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentaloffers) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentalshutdownwrongfunding struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) Reset() {
+ *x = ListconfigsConfigsExperimentalshutdownwrongfunding{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[316]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentalshutdownwrongfunding) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[316]
+ 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 ListconfigsConfigsExperimentalshutdownwrongfunding.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentalshutdownwrongfunding) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{316}
+}
+
+func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentalpeerstorage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentalpeerstorage) Reset() {
+ *x = ListconfigsConfigsExperimentalpeerstorage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[317]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentalpeerstorage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentalpeerstorage) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentalpeerstorage) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[317]
+ 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 ListconfigsConfigsExperimentalpeerstorage.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentalpeerstorage) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{317}
+}
+
+func (x *ListconfigsConfigsExperimentalpeerstorage) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentalpeerstorage) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsExperimentalanchors struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsExperimentalanchors) Reset() {
+ *x = ListconfigsConfigsExperimentalanchors{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[318]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsExperimentalanchors) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsExperimentalanchors) ProtoMessage() {}
+
+func (x *ListconfigsConfigsExperimentalanchors) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[318]
+ 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 ListconfigsConfigsExperimentalanchors.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsExperimentalanchors) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{318}
+}
+
+func (x *ListconfigsConfigsExperimentalanchors) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsExperimentalanchors) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsDatabaseupgrade struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsDatabaseupgrade) Reset() {
+ *x = ListconfigsConfigsDatabaseupgrade{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[319]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDatabaseupgrade) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDatabaseupgrade) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDatabaseupgrade) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[319]
+ 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 ListconfigsConfigsDatabaseupgrade.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDatabaseupgrade) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{319}
+}
+
+func (x *ListconfigsConfigsDatabaseupgrade) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsDatabaseupgrade) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRgb struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr []byte `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRgb) Reset() {
+ *x = ListconfigsConfigsRgb{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[320]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRgb) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRgb) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRgb) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[320]
+ 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 ListconfigsConfigsRgb.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRgb) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{320}
+}
+
+func (x *ListconfigsConfigsRgb) GetValueStr() []byte {
+ if x != nil {
+ return x.ValueStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsRgb) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAlias struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAlias) Reset() {
+ *x = ListconfigsConfigsAlias{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[321]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAlias) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAlias) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAlias) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[321]
+ 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 ListconfigsConfigsAlias.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAlias) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{321}
+}
+
+func (x *ListconfigsConfigsAlias) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsAlias) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsPidfile struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsPidfile) Reset() {
+ *x = ListconfigsConfigsPidfile{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[322]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsPidfile) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsPidfile) ProtoMessage() {}
+
+func (x *ListconfigsConfigsPidfile) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[322]
+ 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 ListconfigsConfigsPidfile.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsPidfile) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{322}
+}
+
+func (x *ListconfigsConfigsPidfile) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsPidfile) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsIgnorefeelimits struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsIgnorefeelimits) Reset() {
+ *x = ListconfigsConfigsIgnorefeelimits{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[323]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsIgnorefeelimits) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsIgnorefeelimits) ProtoMessage() {}
+
+func (x *ListconfigsConfigsIgnorefeelimits) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[323]
+ 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 ListconfigsConfigsIgnorefeelimits.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsIgnorefeelimits) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{323}
+}
+
+func (x *ListconfigsConfigsIgnorefeelimits) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsIgnorefeelimits) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsWatchtimeblocks struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsWatchtimeblocks) Reset() {
+ *x = ListconfigsConfigsWatchtimeblocks{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[324]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsWatchtimeblocks) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsWatchtimeblocks) ProtoMessage() {}
+
+func (x *ListconfigsConfigsWatchtimeblocks) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[324]
+ 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 ListconfigsConfigsWatchtimeblocks.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsWatchtimeblocks) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{324}
+}
+
+func (x *ListconfigsConfigsWatchtimeblocks) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsWatchtimeblocks) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsMaxlocktimeblocks struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsMaxlocktimeblocks) Reset() {
+ *x = ListconfigsConfigsMaxlocktimeblocks{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[325]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsMaxlocktimeblocks) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsMaxlocktimeblocks) ProtoMessage() {}
+
+func (x *ListconfigsConfigsMaxlocktimeblocks) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[325]
+ 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 ListconfigsConfigsMaxlocktimeblocks.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsMaxlocktimeblocks) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{325}
+}
+
+func (x *ListconfigsConfigsMaxlocktimeblocks) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsMaxlocktimeblocks) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsFundingconfirms struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsFundingconfirms) Reset() {
+ *x = ListconfigsConfigsFundingconfirms{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[326]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsFundingconfirms) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsFundingconfirms) ProtoMessage() {}
+
+func (x *ListconfigsConfigsFundingconfirms) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[326]
+ 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 ListconfigsConfigsFundingconfirms.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsFundingconfirms) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{326}
+}
+
+func (x *ListconfigsConfigsFundingconfirms) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsFundingconfirms) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsCltvdelta struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsCltvdelta) Reset() {
+ *x = ListconfigsConfigsCltvdelta{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[327]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsCltvdelta) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsCltvdelta) ProtoMessage() {}
+
+func (x *ListconfigsConfigsCltvdelta) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[327]
+ 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 ListconfigsConfigsCltvdelta.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsCltvdelta) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{327}
+}
+
+func (x *ListconfigsConfigsCltvdelta) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsCltvdelta) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsCltvfinal struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsCltvfinal) Reset() {
+ *x = ListconfigsConfigsCltvfinal{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[328]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsCltvfinal) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsCltvfinal) ProtoMessage() {}
+
+func (x *ListconfigsConfigsCltvfinal) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[328]
+ 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 ListconfigsConfigsCltvfinal.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsCltvfinal) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{328}
+}
+
+func (x *ListconfigsConfigsCltvfinal) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsCltvfinal) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsCommittime struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsCommittime) Reset() {
+ *x = ListconfigsConfigsCommittime{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[329]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsCommittime) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsCommittime) ProtoMessage() {}
+
+func (x *ListconfigsConfigsCommittime) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[329]
+ 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 ListconfigsConfigsCommittime.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsCommittime) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{329}
+}
+
+func (x *ListconfigsConfigsCommittime) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsCommittime) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsFeebase struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsFeebase) Reset() {
+ *x = ListconfigsConfigsFeebase{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[330]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsFeebase) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsFeebase) ProtoMessage() {}
+
+func (x *ListconfigsConfigsFeebase) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[330]
+ 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 ListconfigsConfigsFeebase.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsFeebase) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{330}
+}
+
+func (x *ListconfigsConfigsFeebase) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsFeebase) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRescan struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt int64 `protobuf:"zigzag64,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRescan) Reset() {
+ *x = ListconfigsConfigsRescan{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[331]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRescan) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRescan) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRescan) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[331]
+ 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 ListconfigsConfigsRescan.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRescan) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{331}
+}
+
+func (x *ListconfigsConfigsRescan) GetValueInt() int64 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsRescan) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsFeepersatoshi struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsFeepersatoshi) Reset() {
+ *x = ListconfigsConfigsFeepersatoshi{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[332]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsFeepersatoshi) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsFeepersatoshi) ProtoMessage() {}
+
+func (x *ListconfigsConfigsFeepersatoshi) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[332]
+ 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 ListconfigsConfigsFeepersatoshi.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsFeepersatoshi) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{332}
+}
+
+func (x *ListconfigsConfigsFeepersatoshi) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsFeepersatoshi) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsMaxconcurrenthtlcs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsMaxconcurrenthtlcs) Reset() {
+ *x = ListconfigsConfigsMaxconcurrenthtlcs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[333]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsMaxconcurrenthtlcs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsMaxconcurrenthtlcs) ProtoMessage() {}
+
+func (x *ListconfigsConfigsMaxconcurrenthtlcs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[333]
+ 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 ListconfigsConfigsMaxconcurrenthtlcs.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsMaxconcurrenthtlcs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{333}
+}
+
+func (x *ListconfigsConfigsMaxconcurrenthtlcs) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsMaxconcurrenthtlcs) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsHtlcminimummsat struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsHtlcminimummsat) Reset() {
+ *x = ListconfigsConfigsHtlcminimummsat{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[334]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsHtlcminimummsat) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsHtlcminimummsat) ProtoMessage() {}
+
+func (x *ListconfigsConfigsHtlcminimummsat) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[334]
+ 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 ListconfigsConfigsHtlcminimummsat.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsHtlcminimummsat) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{334}
+}
+
+func (x *ListconfigsConfigsHtlcminimummsat) GetValueMsat() *Amount {
+ if x != nil {
+ return x.ValueMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsHtlcminimummsat) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsHtlcmaximummsat struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsHtlcmaximummsat) Reset() {
+ *x = ListconfigsConfigsHtlcmaximummsat{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[335]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsHtlcmaximummsat) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsHtlcmaximummsat) ProtoMessage() {}
+
+func (x *ListconfigsConfigsHtlcmaximummsat) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[335]
+ 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 ListconfigsConfigsHtlcmaximummsat.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsHtlcmaximummsat) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{335}
+}
+
+func (x *ListconfigsConfigsHtlcmaximummsat) GetValueMsat() *Amount {
+ if x != nil {
+ return x.ValueMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsHtlcmaximummsat) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsMaxdusthtlcexposuremsat struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) Reset() {
+ *x = ListconfigsConfigsMaxdusthtlcexposuremsat{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[336]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsMaxdusthtlcexposuremsat) ProtoMessage() {}
+
+func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[336]
+ 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 ListconfigsConfigsMaxdusthtlcexposuremsat.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsMaxdusthtlcexposuremsat) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{336}
+}
+
+func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) GetValueMsat() *Amount {
+ if x != nil {
+ return x.ValueMsat
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsMincapacitysat struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint64 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+ Dynamic *bool `protobuf:"varint,3,opt,name=dynamic,proto3,oneof" json:"dynamic,omitempty"`
+}
+
+func (x *ListconfigsConfigsMincapacitysat) Reset() {
+ *x = ListconfigsConfigsMincapacitysat{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[337]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsMincapacitysat) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsMincapacitysat) ProtoMessage() {}
+
+func (x *ListconfigsConfigsMincapacitysat) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[337]
+ 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 ListconfigsConfigsMincapacitysat.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsMincapacitysat) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{337}
+}
+
+func (x *ListconfigsConfigsMincapacitysat) GetValueInt() uint64 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsMincapacitysat) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsMincapacitysat) GetDynamic() bool {
+ if x != nil && x.Dynamic != nil {
+ return *x.Dynamic
+ }
+ return false
+}
+
+type ListconfigsConfigsAddr struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsAddr) Reset() {
+ *x = ListconfigsConfigsAddr{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[338]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAddr) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAddr) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAddr) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[338]
+ 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 ListconfigsConfigsAddr.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAddr) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{338}
+}
+
+func (x *ListconfigsConfigsAddr) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsAddr) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsAnnounceaddr struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsAnnounceaddr) Reset() {
+ *x = ListconfigsConfigsAnnounceaddr{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[339]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAnnounceaddr) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAnnounceaddr) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAnnounceaddr) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[339]
+ 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 ListconfigsConfigsAnnounceaddr.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAnnounceaddr) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{339}
+}
+
+func (x *ListconfigsConfigsAnnounceaddr) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsAnnounceaddr) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsBindaddr struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsBindaddr) Reset() {
+ *x = ListconfigsConfigsBindaddr{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[340]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsBindaddr) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsBindaddr) ProtoMessage() {}
+
+func (x *ListconfigsConfigsBindaddr) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[340]
+ 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 ListconfigsConfigsBindaddr.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsBindaddr) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{340}
+}
+
+func (x *ListconfigsConfigsBindaddr) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsBindaddr) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsOffline struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsOffline) Reset() {
+ *x = ListconfigsConfigsOffline{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[341]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsOffline) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsOffline) ProtoMessage() {}
+
+func (x *ListconfigsConfigsOffline) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[341]
+ 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 ListconfigsConfigsOffline.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsOffline) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{341}
+}
+
+func (x *ListconfigsConfigsOffline) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsOffline) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAutolisten struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAutolisten) Reset() {
+ *x = ListconfigsConfigsAutolisten{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[342]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAutolisten) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAutolisten) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAutolisten) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[342]
+ 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 ListconfigsConfigsAutolisten.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAutolisten) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{342}
+}
+
+func (x *ListconfigsConfigsAutolisten) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsAutolisten) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsProxy struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsProxy) Reset() {
+ *x = ListconfigsConfigsProxy{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[343]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsProxy) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsProxy) ProtoMessage() {}
+
+func (x *ListconfigsConfigsProxy) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[343]
+ 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 ListconfigsConfigsProxy.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsProxy) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{343}
+}
+
+func (x *ListconfigsConfigsProxy) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsProxy) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsDisabledns struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsDisabledns) Reset() {
+ *x = ListconfigsConfigsDisabledns{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[344]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsDisabledns) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsDisabledns) ProtoMessage() {}
+
+func (x *ListconfigsConfigsDisabledns) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[344]
+ 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 ListconfigsConfigsDisabledns.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsDisabledns) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{344}
+}
+
+func (x *ListconfigsConfigsDisabledns) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsDisabledns) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAnnounceaddrdiscovered struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr `protobuf:"varint,1,opt,name=value_str,json=valueStr,proto3,enum=cln.ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscovered) Reset() {
+ *x = ListconfigsConfigsAnnounceaddrdiscovered{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[345]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscovered) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAnnounceaddrdiscovered) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscovered) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[345]
+ 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 ListconfigsConfigsAnnounceaddrdiscovered.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAnnounceaddrdiscovered) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{345}
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscovered) GetValueStr() ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ListconfigsConfigsAnnounceaddrdiscovered_TRUE
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscovered) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAnnounceaddrdiscoveredport struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) Reset() {
+ *x = ListconfigsConfigsAnnounceaddrdiscoveredport{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[346]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAnnounceaddrdiscoveredport) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[346]
+ 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 ListconfigsConfigsAnnounceaddrdiscoveredport.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAnnounceaddrdiscoveredport) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{346}
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsEncryptedhsm struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsEncryptedhsm) Reset() {
+ *x = ListconfigsConfigsEncryptedhsm{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[347]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsEncryptedhsm) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsEncryptedhsm) ProtoMessage() {}
+
+func (x *ListconfigsConfigsEncryptedhsm) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[347]
+ 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 ListconfigsConfigsEncryptedhsm.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsEncryptedhsm) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{347}
+}
+
+func (x *ListconfigsConfigsEncryptedhsm) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsEncryptedhsm) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRpcfilemode struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRpcfilemode) Reset() {
+ *x = ListconfigsConfigsRpcfilemode{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[348]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRpcfilemode) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRpcfilemode) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRpcfilemode) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[348]
+ 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 ListconfigsConfigsRpcfilemode.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRpcfilemode) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{348}
+}
+
+func (x *ListconfigsConfigsRpcfilemode) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsRpcfilemode) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsLoglevel struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsLoglevel) Reset() {
+ *x = ListconfigsConfigsLoglevel{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[349]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLoglevel) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLoglevel) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLoglevel) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[349]
+ 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 ListconfigsConfigsLoglevel.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLoglevel) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{349}
+}
+
+func (x *ListconfigsConfigsLoglevel) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsLoglevel) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsLogprefix struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsLogprefix) Reset() {
+ *x = ListconfigsConfigsLogprefix{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[350]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLogprefix) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLogprefix) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLogprefix) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[350]
+ 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 ListconfigsConfigsLogprefix.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLogprefix) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{350}
+}
+
+func (x *ListconfigsConfigsLogprefix) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsLogprefix) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsLogfile struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsLogfile) Reset() {
+ *x = ListconfigsConfigsLogfile{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[351]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLogfile) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLogfile) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLogfile) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[351]
+ 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 ListconfigsConfigsLogfile.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLogfile) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{351}
+}
+
+func (x *ListconfigsConfigsLogfile) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsLogfile) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsLogtimestamps struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsLogtimestamps) Reset() {
+ *x = ListconfigsConfigsLogtimestamps{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[352]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsLogtimestamps) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsLogtimestamps) ProtoMessage() {}
+
+func (x *ListconfigsConfigsLogtimestamps) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[352]
+ 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 ListconfigsConfigsLogtimestamps.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsLogtimestamps) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{352}
+}
+
+func (x *ListconfigsConfigsLogtimestamps) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsLogtimestamps) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsForcefeerates struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsForcefeerates) Reset() {
+ *x = ListconfigsConfigsForcefeerates{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[353]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsForcefeerates) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsForcefeerates) ProtoMessage() {}
+
+func (x *ListconfigsConfigsForcefeerates) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[353]
+ 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 ListconfigsConfigsForcefeerates.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsForcefeerates) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{353}
+}
+
+func (x *ListconfigsConfigsForcefeerates) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsForcefeerates) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsSubdaemon struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
+ Sources []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
+}
+
+func (x *ListconfigsConfigsSubdaemon) Reset() {
+ *x = ListconfigsConfigsSubdaemon{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[354]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsSubdaemon) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsSubdaemon) ProtoMessage() {}
+
+func (x *ListconfigsConfigsSubdaemon) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[354]
+ 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 ListconfigsConfigsSubdaemon.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsSubdaemon) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{354}
+}
+
+func (x *ListconfigsConfigsSubdaemon) GetValuesStr() []string {
+ if x != nil {
+ return x.ValuesStr
+ }
+ return nil
+}
+
+func (x *ListconfigsConfigsSubdaemon) GetSources() []string {
+ if x != nil {
+ return x.Sources
+ }
+ return nil
+}
+
+type ListconfigsConfigsFetchinvoicenoconnect struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Set bool `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsFetchinvoicenoconnect) Reset() {
+ *x = ListconfigsConfigsFetchinvoicenoconnect{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[355]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsFetchinvoicenoconnect) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsFetchinvoicenoconnect) ProtoMessage() {}
+
+func (x *ListconfigsConfigsFetchinvoicenoconnect) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[355]
+ 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 ListconfigsConfigsFetchinvoicenoconnect.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsFetchinvoicenoconnect) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{355}
+}
+
+func (x *ListconfigsConfigsFetchinvoicenoconnect) GetSet() bool {
+ if x != nil {
+ return x.Set
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsFetchinvoicenoconnect) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAccepthtlctlvtypes struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAccepthtlctlvtypes) Reset() {
+ *x = ListconfigsConfigsAccepthtlctlvtypes{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[356]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAccepthtlctlvtypes) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAccepthtlctlvtypes) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAccepthtlctlvtypes) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[356]
+ 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 ListconfigsConfigsAccepthtlctlvtypes.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAccepthtlctlvtypes) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{356}
+}
+
+func (x *ListconfigsConfigsAccepthtlctlvtypes) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsAccepthtlctlvtypes) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsTorservicepassword struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsTorservicepassword) Reset() {
+ *x = ListconfigsConfigsTorservicepassword{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[357]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsTorservicepassword) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsTorservicepassword) ProtoMessage() {}
+
+func (x *ListconfigsConfigsTorservicepassword) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[357]
+ 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 ListconfigsConfigsTorservicepassword.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsTorservicepassword) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{357}
+}
+
+func (x *ListconfigsConfigsTorservicepassword) GetValueStr() string {
+ if x != nil {
+ return x.ValueStr
+ }
+ return ""
+}
+
+func (x *ListconfigsConfigsTorservicepassword) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsAnnounceaddrdns struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdns) Reset() {
+ *x = ListconfigsConfigsAnnounceaddrdns{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[358]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdns) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsAnnounceaddrdns) ProtoMessage() {}
+
+func (x *ListconfigsConfigsAnnounceaddrdns) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[358]
+ 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 ListconfigsConfigsAnnounceaddrdns.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsAnnounceaddrdns) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{358}
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdns) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsAnnounceaddrdns) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsRequireconfirmedinputs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueBool bool `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsRequireconfirmedinputs) Reset() {
+ *x = ListconfigsConfigsRequireconfirmedinputs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[359]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsRequireconfirmedinputs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsRequireconfirmedinputs) ProtoMessage() {}
+
+func (x *ListconfigsConfigsRequireconfirmedinputs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[359]
+ 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 ListconfigsConfigsRequireconfirmedinputs.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsRequireconfirmedinputs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{359}
+}
+
+func (x *ListconfigsConfigsRequireconfirmedinputs) GetValueBool() bool {
+ if x != nil {
+ return x.ValueBool
+ }
+ return false
+}
+
+func (x *ListconfigsConfigsRequireconfirmedinputs) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsCommitfee struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint64 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsCommitfee) Reset() {
+ *x = ListconfigsConfigsCommitfee{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[360]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsCommitfee) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsCommitfee) ProtoMessage() {}
+
+func (x *ListconfigsConfigsCommitfee) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[360]
+ 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 ListconfigsConfigsCommitfee.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsCommitfee) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{360}
+}
+
+func (x *ListconfigsConfigsCommitfee) GetValueInt() uint64 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsCommitfee) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsConfigsCommitfeerateoffset struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
+ Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
+}
+
+func (x *ListconfigsConfigsCommitfeerateoffset) Reset() {
+ *x = ListconfigsConfigsCommitfeerateoffset{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[361]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsConfigsCommitfeerateoffset) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsConfigsCommitfeerateoffset) ProtoMessage() {}
+
+func (x *ListconfigsConfigsCommitfeerateoffset) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[361]
+ 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 ListconfigsConfigsCommitfeerateoffset.ProtoReflect.Descriptor instead.
+func (*ListconfigsConfigsCommitfeerateoffset) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{361}
+}
+
+func (x *ListconfigsConfigsCommitfeerateoffset) GetValueInt() uint32 {
+ if x != nil {
+ return x.ValueInt
+ }
+ return 0
+}
+
+func (x *ListconfigsConfigsCommitfeerateoffset) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+type ListconfigsPlugins struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ Options *ListconfigsPluginsOptions `protobuf:"bytes,3,opt,name=options,proto3,oneof" json:"options,omitempty"`
+}
+
+func (x *ListconfigsPlugins) Reset() {
+ *x = ListconfigsPlugins{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[362]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsPlugins) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsPlugins) ProtoMessage() {}
+
+func (x *ListconfigsPlugins) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[362]
+ 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 ListconfigsPlugins.ProtoReflect.Descriptor instead.
+func (*ListconfigsPlugins) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{362}
+}
+
+func (x *ListconfigsPlugins) GetPath() string {
+ if x != nil {
+ return x.Path
+ }
+ return ""
+}
+
+func (x *ListconfigsPlugins) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ListconfigsPlugins) GetOptions() *ListconfigsPluginsOptions {
+ if x != nil {
+ return x.Options
+ }
+ return nil
+}
+
+type ListconfigsPluginsOptions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ListconfigsPluginsOptions) Reset() {
+ *x = ListconfigsPluginsOptions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[363]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsPluginsOptions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsPluginsOptions) ProtoMessage() {}
+
+func (x *ListconfigsPluginsOptions) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[363]
+ 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 ListconfigsPluginsOptions.ProtoReflect.Descriptor instead.
+func (*ListconfigsPluginsOptions) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{363}
+}
+
+type ListconfigsImportantplugins struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ Options *ListconfigsImportantpluginsOptions `protobuf:"bytes,3,opt,name=options,proto3,oneof" json:"options,omitempty"`
+}
+
+func (x *ListconfigsImportantplugins) Reset() {
+ *x = ListconfigsImportantplugins{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[364]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsImportantplugins) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsImportantplugins) ProtoMessage() {}
+
+func (x *ListconfigsImportantplugins) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[364]
+ 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 ListconfigsImportantplugins.ProtoReflect.Descriptor instead.
+func (*ListconfigsImportantplugins) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{364}
+}
+
+func (x *ListconfigsImportantplugins) GetPath() string {
+ if x != nil {
+ return x.Path
+ }
+ return ""
+}
+
+func (x *ListconfigsImportantplugins) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ListconfigsImportantplugins) GetOptions() *ListconfigsImportantpluginsOptions {
+ if x != nil {
+ return x.Options
+ }
+ return nil
+}
+
+type ListconfigsImportantpluginsOptions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ListconfigsImportantpluginsOptions) Reset() {
+ *x = ListconfigsImportantpluginsOptions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[365]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListconfigsImportantpluginsOptions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListconfigsImportantpluginsOptions) ProtoMessage() {}
+
+func (x *ListconfigsImportantpluginsOptions) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[365]
+ 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 ListconfigsImportantpluginsOptions.ProtoReflect.Descriptor instead.
+func (*ListconfigsImportantpluginsOptions) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{365}
+}
+
+type StopRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StopRequest) Reset() {
+ *x = StopRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[366]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StopRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StopRequest) ProtoMessage() {}
+
+func (x *StopRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[366]
+ 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 StopRequest.ProtoReflect.Descriptor instead.
+func (*StopRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{366}
+}
+
+type StopResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Result *StopResponse_StopResult `protobuf:"varint,1,opt,name=result,proto3,enum=cln.StopResponse_StopResult,oneof" json:"result,omitempty"`
+}
+
+func (x *StopResponse) Reset() {
+ *x = StopResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[367]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StopResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StopResponse) ProtoMessage() {}
+
+func (x *StopResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[367]
+ 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 StopResponse.ProtoReflect.Descriptor instead.
+func (*StopResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{367}
+}
+
+func (x *StopResponse) GetResult() StopResponse_StopResult {
+ if x != nil && x.Result != nil {
+ return *x.Result
+ }
+ return StopResponse_SHUTDOWN_COMPLETE
+}
+
+type HelpRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Command *string `protobuf:"bytes,1,opt,name=command,proto3,oneof" json:"command,omitempty"`
+}
+
+func (x *HelpRequest) Reset() {
+ *x = HelpRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[368]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HelpRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HelpRequest) ProtoMessage() {}
+
+func (x *HelpRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[368]
+ 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 HelpRequest.ProtoReflect.Descriptor instead.
+func (*HelpRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{368}
+}
+
+func (x *HelpRequest) GetCommand() string {
+ if x != nil && x.Command != nil {
+ return *x.Command
+ }
+ return ""
+}
+
+type HelpResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Help []*HelpHelp `protobuf:"bytes,1,rep,name=help,proto3" json:"help,omitempty"`
+ FormatHint *HelpResponse_HelpFormathint `protobuf:"varint,2,opt,name=format_hint,json=formatHint,proto3,enum=cln.HelpResponse_HelpFormathint,oneof" json:"format_hint,omitempty"`
+}
+
+func (x *HelpResponse) Reset() {
+ *x = HelpResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[369]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HelpResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HelpResponse) ProtoMessage() {}
+
+func (x *HelpResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[369]
+ 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 HelpResponse.ProtoReflect.Descriptor instead.
+func (*HelpResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{369}
+}
+
+func (x *HelpResponse) GetHelp() []*HelpHelp {
+ if x != nil {
+ return x.Help
+ }
+ return nil
+}
+
+func (x *HelpResponse) GetFormatHint() HelpResponse_HelpFormathint {
+ if x != nil && x.FormatHint != nil {
+ return *x.FormatHint
+ }
+ return HelpResponse_SIMPLE
+}
+
+type HelpHelp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Command string `protobuf:"bytes,1,opt,name=command,proto3" json:"command,omitempty"`
+ Category string `protobuf:"bytes,2,opt,name=category,proto3" json:"category,omitempty"`
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ Verbose string `protobuf:"bytes,4,opt,name=verbose,proto3" json:"verbose,omitempty"`
+}
+
+func (x *HelpHelp) Reset() {
+ *x = HelpHelp{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[370]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HelpHelp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HelpHelp) ProtoMessage() {}
+
+func (x *HelpHelp) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[370]
+ 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 HelpHelp.ProtoReflect.Descriptor instead.
+func (*HelpHelp) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{370}
+}
+
+func (x *HelpHelp) GetCommand() string {
+ if x != nil {
+ return x.Command
+ }
+ return ""
+}
+
+func (x *HelpHelp) GetCategory() string {
+ if x != nil {
+ return x.Category
+ }
+ return ""
+}
+
+func (x *HelpHelp) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *HelpHelp) GetVerbose() string {
+ if x != nil {
+ return x.Verbose
+ }
+ return ""
+}
+
+type PreapprovekeysendRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Destination []byte `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+ PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
+ AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
+}
+
+func (x *PreapprovekeysendRequest) Reset() {
+ *x = PreapprovekeysendRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[371]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreapprovekeysendRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreapprovekeysendRequest) ProtoMessage() {}
+
+func (x *PreapprovekeysendRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[371]
+ 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 PreapprovekeysendRequest.ProtoReflect.Descriptor instead.
+func (*PreapprovekeysendRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{371}
+}
+
+func (x *PreapprovekeysendRequest) GetDestination() []byte {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+func (x *PreapprovekeysendRequest) GetPaymentHash() []byte {
+ if x != nil {
+ return x.PaymentHash
+ }
+ return nil
+}
+
+func (x *PreapprovekeysendRequest) GetAmountMsat() *Amount {
+ if x != nil {
+ return x.AmountMsat
+ }
+ return nil
+}
+
+type PreapprovekeysendResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *PreapprovekeysendResponse) Reset() {
+ *x = PreapprovekeysendResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[372]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreapprovekeysendResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreapprovekeysendResponse) ProtoMessage() {}
+
+func (x *PreapprovekeysendResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[372]
+ 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 PreapprovekeysendResponse.ProtoReflect.Descriptor instead.
+func (*PreapprovekeysendResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{372}
+}
+
+type PreapproveinvoiceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
+}
+
+func (x *PreapproveinvoiceRequest) Reset() {
+ *x = PreapproveinvoiceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[373]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreapproveinvoiceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreapproveinvoiceRequest) ProtoMessage() {}
+
+func (x *PreapproveinvoiceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[373]
+ 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 PreapproveinvoiceRequest.ProtoReflect.Descriptor instead.
+func (*PreapproveinvoiceRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{373}
+}
+
+func (x *PreapproveinvoiceRequest) GetBolt11() string {
+ if x != nil {
+ return x.Bolt11
+ }
+ return ""
+}
+
+type PreapproveinvoiceResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *PreapproveinvoiceResponse) Reset() {
+ *x = PreapproveinvoiceResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[374]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreapproveinvoiceResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreapproveinvoiceResponse) ProtoMessage() {}
+
+func (x *PreapproveinvoiceResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[374]
+ 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 PreapproveinvoiceResponse.ProtoReflect.Descriptor instead.
+func (*PreapproveinvoiceResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{374}
+}
+
+type StaticbackupRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StaticbackupRequest) Reset() {
+ *x = StaticbackupRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[375]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StaticbackupRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StaticbackupRequest) ProtoMessage() {}
+
+func (x *StaticbackupRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[375]
+ 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 StaticbackupRequest.ProtoReflect.Descriptor instead.
+func (*StaticbackupRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{375}
+}
+
+type StaticbackupResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Scb [][]byte `protobuf:"bytes,1,rep,name=scb,proto3" json:"scb,omitempty"`
+}
+
+func (x *StaticbackupResponse) Reset() {
+ *x = StaticbackupResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[376]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StaticbackupResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StaticbackupResponse) ProtoMessage() {}
+
+func (x *StaticbackupResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[376]
+ 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 StaticbackupResponse.ProtoReflect.Descriptor instead.
+func (*StaticbackupResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{376}
+}
+
+func (x *StaticbackupResponse) GetScb() [][]byte {
+ if x != nil {
+ return x.Scb
+ }
+ return nil
+}
+
+type BkprchannelsapyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StartTime *uint64 `protobuf:"varint,1,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
+ EndTime *uint64 `protobuf:"varint,2,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
+}
+
+func (x *BkprchannelsapyRequest) Reset() {
+ *x = BkprchannelsapyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[377]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprchannelsapyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprchannelsapyRequest) ProtoMessage() {}
+
+func (x *BkprchannelsapyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[377]
+ 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 BkprchannelsapyRequest.ProtoReflect.Descriptor instead.
+func (*BkprchannelsapyRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{377}
+}
+
+func (x *BkprchannelsapyRequest) GetStartTime() uint64 {
+ if x != nil && x.StartTime != nil {
+ return *x.StartTime
+ }
+ return 0
+}
+
+func (x *BkprchannelsapyRequest) GetEndTime() uint64 {
+ if x != nil && x.EndTime != nil {
+ return *x.EndTime
+ }
+ return 0
+}
+
+type BkprchannelsapyResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelsApy []*BkprchannelsapyChannelsApy `protobuf:"bytes,1,rep,name=channels_apy,json=channelsApy,proto3" json:"channels_apy,omitempty"`
+}
+
+func (x *BkprchannelsapyResponse) Reset() {
+ *x = BkprchannelsapyResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[378]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprchannelsapyResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprchannelsapyResponse) ProtoMessage() {}
+
+func (x *BkprchannelsapyResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[378]
+ 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 BkprchannelsapyResponse.ProtoReflect.Descriptor instead.
+func (*BkprchannelsapyResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{378}
+}
+
+func (x *BkprchannelsapyResponse) GetChannelsApy() []*BkprchannelsapyChannelsApy {
+ if x != nil {
+ return x.ChannelsApy
+ }
+ return nil
+}
+
+type BkprchannelsapyChannelsApy struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+ RoutedOutMsat *Amount `protobuf:"bytes,2,opt,name=routed_out_msat,json=routedOutMsat,proto3" json:"routed_out_msat,omitempty"`
+ RoutedInMsat *Amount `protobuf:"bytes,3,opt,name=routed_in_msat,json=routedInMsat,proto3" json:"routed_in_msat,omitempty"`
+ LeaseFeePaidMsat *Amount `protobuf:"bytes,4,opt,name=lease_fee_paid_msat,json=leaseFeePaidMsat,proto3" json:"lease_fee_paid_msat,omitempty"`
+ LeaseFeeEarnedMsat *Amount `protobuf:"bytes,5,opt,name=lease_fee_earned_msat,json=leaseFeeEarnedMsat,proto3" json:"lease_fee_earned_msat,omitempty"`
+ PushedOutMsat *Amount `protobuf:"bytes,6,opt,name=pushed_out_msat,json=pushedOutMsat,proto3" json:"pushed_out_msat,omitempty"`
+ PushedInMsat *Amount `protobuf:"bytes,7,opt,name=pushed_in_msat,json=pushedInMsat,proto3" json:"pushed_in_msat,omitempty"`
+ OurStartBalanceMsat *Amount `protobuf:"bytes,8,opt,name=our_start_balance_msat,json=ourStartBalanceMsat,proto3" json:"our_start_balance_msat,omitempty"`
+ ChannelStartBalanceMsat *Amount `protobuf:"bytes,9,opt,name=channel_start_balance_msat,json=channelStartBalanceMsat,proto3" json:"channel_start_balance_msat,omitempty"`
+ FeesOutMsat *Amount `protobuf:"bytes,10,opt,name=fees_out_msat,json=feesOutMsat,proto3" json:"fees_out_msat,omitempty"`
+ FeesInMsat *Amount `protobuf:"bytes,11,opt,name=fees_in_msat,json=feesInMsat,proto3,oneof" json:"fees_in_msat,omitempty"`
+ UtilizationOut string `protobuf:"bytes,12,opt,name=utilization_out,json=utilizationOut,proto3" json:"utilization_out,omitempty"`
+ UtilizationOutInitial *string `protobuf:"bytes,13,opt,name=utilization_out_initial,json=utilizationOutInitial,proto3,oneof" json:"utilization_out_initial,omitempty"`
+ UtilizationIn string `protobuf:"bytes,14,opt,name=utilization_in,json=utilizationIn,proto3" json:"utilization_in,omitempty"`
+ UtilizationInInitial *string `protobuf:"bytes,15,opt,name=utilization_in_initial,json=utilizationInInitial,proto3,oneof" json:"utilization_in_initial,omitempty"`
+ ApyOut string `protobuf:"bytes,16,opt,name=apy_out,json=apyOut,proto3" json:"apy_out,omitempty"`
+ ApyOutInitial *string `protobuf:"bytes,17,opt,name=apy_out_initial,json=apyOutInitial,proto3,oneof" json:"apy_out_initial,omitempty"`
+ ApyIn string `protobuf:"bytes,18,opt,name=apy_in,json=apyIn,proto3" json:"apy_in,omitempty"`
+ ApyInInitial *string `protobuf:"bytes,19,opt,name=apy_in_initial,json=apyInInitial,proto3,oneof" json:"apy_in_initial,omitempty"`
+ ApyTotal string `protobuf:"bytes,20,opt,name=apy_total,json=apyTotal,proto3" json:"apy_total,omitempty"`
+ ApyTotalInitial *string `protobuf:"bytes,21,opt,name=apy_total_initial,json=apyTotalInitial,proto3,oneof" json:"apy_total_initial,omitempty"`
+ ApyLease *string `protobuf:"bytes,22,opt,name=apy_lease,json=apyLease,proto3,oneof" json:"apy_lease,omitempty"`
+}
+
+func (x *BkprchannelsapyChannelsApy) Reset() {
+ *x = BkprchannelsapyChannelsApy{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[379]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprchannelsapyChannelsApy) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprchannelsapyChannelsApy) ProtoMessage() {}
+
+func (x *BkprchannelsapyChannelsApy) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[379]
+ 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 BkprchannelsapyChannelsApy.ProtoReflect.Descriptor instead.
+func (*BkprchannelsapyChannelsApy) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{379}
+}
+
+func (x *BkprchannelsapyChannelsApy) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetRoutedOutMsat() *Amount {
+ if x != nil {
+ return x.RoutedOutMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetRoutedInMsat() *Amount {
+ if x != nil {
+ return x.RoutedInMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetLeaseFeePaidMsat() *Amount {
+ if x != nil {
+ return x.LeaseFeePaidMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetLeaseFeeEarnedMsat() *Amount {
+ if x != nil {
+ return x.LeaseFeeEarnedMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetPushedOutMsat() *Amount {
+ if x != nil {
+ return x.PushedOutMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetPushedInMsat() *Amount {
+ if x != nil {
+ return x.PushedInMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetOurStartBalanceMsat() *Amount {
+ if x != nil {
+ return x.OurStartBalanceMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetChannelStartBalanceMsat() *Amount {
+ if x != nil {
+ return x.ChannelStartBalanceMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetFeesOutMsat() *Amount {
+ if x != nil {
+ return x.FeesOutMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetFeesInMsat() *Amount {
+ if x != nil {
+ return x.FeesInMsat
+ }
+ return nil
+}
+
+func (x *BkprchannelsapyChannelsApy) GetUtilizationOut() string {
+ if x != nil {
+ return x.UtilizationOut
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetUtilizationOutInitial() string {
+ if x != nil && x.UtilizationOutInitial != nil {
+ return *x.UtilizationOutInitial
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetUtilizationIn() string {
+ if x != nil {
+ return x.UtilizationIn
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetUtilizationInInitial() string {
+ if x != nil && x.UtilizationInInitial != nil {
+ return *x.UtilizationInInitial
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyOut() string {
+ if x != nil {
+ return x.ApyOut
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyOutInitial() string {
+ if x != nil && x.ApyOutInitial != nil {
+ return *x.ApyOutInitial
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyIn() string {
+ if x != nil {
+ return x.ApyIn
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyInInitial() string {
+ if x != nil && x.ApyInInitial != nil {
+ return *x.ApyInInitial
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyTotal() string {
+ if x != nil {
+ return x.ApyTotal
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyTotalInitial() string {
+ if x != nil && x.ApyTotalInitial != nil {
+ return *x.ApyTotalInitial
+ }
+ return ""
+}
+
+func (x *BkprchannelsapyChannelsApy) GetApyLease() string {
+ if x != nil && x.ApyLease != nil {
+ return *x.ApyLease
+ }
+ return ""
+}
+
+type BkprdumpincomecsvRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ CsvFormat string `protobuf:"bytes,1,opt,name=csv_format,json=csvFormat,proto3" json:"csv_format,omitempty"`
+ CsvFile *string `protobuf:"bytes,2,opt,name=csv_file,json=csvFile,proto3,oneof" json:"csv_file,omitempty"`
+ ConsolidateFees *bool `protobuf:"varint,3,opt,name=consolidate_fees,json=consolidateFees,proto3,oneof" json:"consolidate_fees,omitempty"`
+ StartTime *uint64 `protobuf:"varint,4,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
+ EndTime *uint64 `protobuf:"varint,5,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
+}
+
+func (x *BkprdumpincomecsvRequest) Reset() {
+ *x = BkprdumpincomecsvRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[380]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprdumpincomecsvRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprdumpincomecsvRequest) ProtoMessage() {}
+
+func (x *BkprdumpincomecsvRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[380]
+ 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 BkprdumpincomecsvRequest.ProtoReflect.Descriptor instead.
+func (*BkprdumpincomecsvRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{380}
+}
+
+func (x *BkprdumpincomecsvRequest) GetCsvFormat() string {
+ if x != nil {
+ return x.CsvFormat
+ }
+ return ""
+}
+
+func (x *BkprdumpincomecsvRequest) GetCsvFile() string {
+ if x != nil && x.CsvFile != nil {
+ return *x.CsvFile
+ }
+ return ""
+}
+
+func (x *BkprdumpincomecsvRequest) GetConsolidateFees() bool {
+ if x != nil && x.ConsolidateFees != nil {
+ return *x.ConsolidateFees
+ }
+ return false
+}
+
+func (x *BkprdumpincomecsvRequest) GetStartTime() uint64 {
+ if x != nil && x.StartTime != nil {
+ return *x.StartTime
+ }
+ return 0
+}
+
+func (x *BkprdumpincomecsvRequest) GetEndTime() uint64 {
+ if x != nil && x.EndTime != nil {
+ return *x.EndTime
+ }
+ return 0
+}
+
+type BkprdumpincomecsvResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ CsvFile string `protobuf:"bytes,1,opt,name=csv_file,json=csvFile,proto3" json:"csv_file,omitempty"`
+ CsvFormat BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat `protobuf:"varint,2,opt,name=csv_format,json=csvFormat,proto3,enum=cln.BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat" json:"csv_format,omitempty"`
+}
+
+func (x *BkprdumpincomecsvResponse) Reset() {
+ *x = BkprdumpincomecsvResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[381]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprdumpincomecsvResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprdumpincomecsvResponse) ProtoMessage() {}
+
+func (x *BkprdumpincomecsvResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[381]
+ 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 BkprdumpincomecsvResponse.ProtoReflect.Descriptor instead.
+func (*BkprdumpincomecsvResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{381}
+}
+
+func (x *BkprdumpincomecsvResponse) GetCsvFile() string {
+ if x != nil {
+ return x.CsvFile
+ }
+ return ""
+}
+
+func (x *BkprdumpincomecsvResponse) GetCsvFormat() BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat {
+ if x != nil {
+ return x.CsvFormat
+ }
+ return BkprdumpincomecsvResponse_COINTRACKER
+}
+
+type BkprinspectRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+}
+
+func (x *BkprinspectRequest) Reset() {
+ *x = BkprinspectRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[382]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprinspectRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprinspectRequest) ProtoMessage() {}
+
+func (x *BkprinspectRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[382]
+ 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 BkprinspectRequest.ProtoReflect.Descriptor instead.
+func (*BkprinspectRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{382}
+}
+
+func (x *BkprinspectRequest) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+type BkprinspectResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Txs []*BkprinspectTxs `protobuf:"bytes,1,rep,name=txs,proto3" json:"txs,omitempty"`
+}
+
+func (x *BkprinspectResponse) Reset() {
+ *x = BkprinspectResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[383]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprinspectResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprinspectResponse) ProtoMessage() {}
+
+func (x *BkprinspectResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[383]
+ 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 BkprinspectResponse.ProtoReflect.Descriptor instead.
+func (*BkprinspectResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{383}
+}
+
+func (x *BkprinspectResponse) GetTxs() []*BkprinspectTxs {
+ if x != nil {
+ return x.Txs
+ }
+ return nil
+}
+
+type BkprinspectTxs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
+ Blockheight *uint32 `protobuf:"varint,2,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
+ FeesPaidMsat *Amount `protobuf:"bytes,3,opt,name=fees_paid_msat,json=feesPaidMsat,proto3" json:"fees_paid_msat,omitempty"`
+ Outputs []*BkprinspectTxsOutputs `protobuf:"bytes,4,rep,name=outputs,proto3" json:"outputs,omitempty"`
+}
+
+func (x *BkprinspectTxs) Reset() {
+ *x = BkprinspectTxs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[384]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprinspectTxs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprinspectTxs) ProtoMessage() {}
+
+func (x *BkprinspectTxs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[384]
+ 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 BkprinspectTxs.ProtoReflect.Descriptor instead.
+func (*BkprinspectTxs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{384}
+}
+
+func (x *BkprinspectTxs) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *BkprinspectTxs) GetBlockheight() uint32 {
+ if x != nil && x.Blockheight != nil {
+ return *x.Blockheight
+ }
+ return 0
+}
+
+func (x *BkprinspectTxs) GetFeesPaidMsat() *Amount {
+ if x != nil {
+ return x.FeesPaidMsat
+ }
+ return nil
+}
+
+func (x *BkprinspectTxs) GetOutputs() []*BkprinspectTxsOutputs {
+ if x != nil {
+ return x.Outputs
+ }
+ return nil
+}
+
+type BkprinspectTxsOutputs struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+ Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
+ OutputValueMsat *Amount `protobuf:"bytes,3,opt,name=output_value_msat,json=outputValueMsat,proto3" json:"output_value_msat,omitempty"`
+ Currency string `protobuf:"bytes,4,opt,name=currency,proto3" json:"currency,omitempty"`
+ CreditMsat *Amount `protobuf:"bytes,5,opt,name=credit_msat,json=creditMsat,proto3,oneof" json:"credit_msat,omitempty"`
+ DebitMsat *Amount `protobuf:"bytes,6,opt,name=debit_msat,json=debitMsat,proto3,oneof" json:"debit_msat,omitempty"`
+ OriginatingAccount *string `protobuf:"bytes,7,opt,name=originating_account,json=originatingAccount,proto3,oneof" json:"originating_account,omitempty"`
+ OutputTag *string `protobuf:"bytes,8,opt,name=output_tag,json=outputTag,proto3,oneof" json:"output_tag,omitempty"`
+ SpendTag *string `protobuf:"bytes,9,opt,name=spend_tag,json=spendTag,proto3,oneof" json:"spend_tag,omitempty"`
+ SpendingTxid []byte `protobuf:"bytes,10,opt,name=spending_txid,json=spendingTxid,proto3,oneof" json:"spending_txid,omitempty"`
+ PaymentId []byte `protobuf:"bytes,11,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
+}
+
+func (x *BkprinspectTxsOutputs) Reset() {
+ *x = BkprinspectTxsOutputs{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[385]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprinspectTxsOutputs) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprinspectTxsOutputs) ProtoMessage() {}
+
+func (x *BkprinspectTxsOutputs) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[385]
+ 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 BkprinspectTxsOutputs.ProtoReflect.Descriptor instead.
+func (*BkprinspectTxsOutputs) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{385}
+}
+
+func (x *BkprinspectTxsOutputs) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+func (x *BkprinspectTxsOutputs) GetOutnum() uint32 {
+ if x != nil {
+ return x.Outnum
+ }
+ return 0
+}
+
+func (x *BkprinspectTxsOutputs) GetOutputValueMsat() *Amount {
+ if x != nil {
+ return x.OutputValueMsat
+ }
+ return nil
+}
+
+func (x *BkprinspectTxsOutputs) GetCurrency() string {
+ if x != nil {
+ return x.Currency
+ }
+ return ""
+}
+
+func (x *BkprinspectTxsOutputs) GetCreditMsat() *Amount {
+ if x != nil {
+ return x.CreditMsat
+ }
+ return nil
+}
+
+func (x *BkprinspectTxsOutputs) GetDebitMsat() *Amount {
+ if x != nil {
+ return x.DebitMsat
+ }
+ return nil
+}
+
+func (x *BkprinspectTxsOutputs) GetOriginatingAccount() string {
+ if x != nil && x.OriginatingAccount != nil {
+ return *x.OriginatingAccount
+ }
+ return ""
+}
+
+func (x *BkprinspectTxsOutputs) GetOutputTag() string {
+ if x != nil && x.OutputTag != nil {
+ return *x.OutputTag
+ }
+ return ""
+}
+
+func (x *BkprinspectTxsOutputs) GetSpendTag() string {
+ if x != nil && x.SpendTag != nil {
+ return *x.SpendTag
+ }
+ return ""
+}
+
+func (x *BkprinspectTxsOutputs) GetSpendingTxid() []byte {
+ if x != nil {
+ return x.SpendingTxid
+ }
+ return nil
+}
+
+func (x *BkprinspectTxsOutputs) GetPaymentId() []byte {
+ if x != nil {
+ return x.PaymentId
+ }
+ return nil
+}
+
+type BkprlistaccounteventsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account *string `protobuf:"bytes,1,opt,name=account,proto3,oneof" json:"account,omitempty"`
+}
+
+func (x *BkprlistaccounteventsRequest) Reset() {
+ *x = BkprlistaccounteventsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[386]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistaccounteventsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistaccounteventsRequest) ProtoMessage() {}
+
+func (x *BkprlistaccounteventsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[386]
+ 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 BkprlistaccounteventsRequest.ProtoReflect.Descriptor instead.
+func (*BkprlistaccounteventsRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{386}
+}
+
+func (x *BkprlistaccounteventsRequest) GetAccount() string {
+ if x != nil && x.Account != nil {
+ return *x.Account
+ }
+ return ""
+}
+
+type BkprlistaccounteventsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Events []*BkprlistaccounteventsEvents `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"`
+}
+
+func (x *BkprlistaccounteventsResponse) Reset() {
+ *x = BkprlistaccounteventsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[387]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistaccounteventsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistaccounteventsResponse) ProtoMessage() {}
+
+func (x *BkprlistaccounteventsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[387]
+ 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 BkprlistaccounteventsResponse.ProtoReflect.Descriptor instead.
+func (*BkprlistaccounteventsResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{387}
+}
+
+func (x *BkprlistaccounteventsResponse) GetEvents() []*BkprlistaccounteventsEvents {
+ if x != nil {
+ return x.Events
+ }
+ return nil
+}
+
+type BkprlistaccounteventsEvents struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+ ItemType BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType" json:"item_type,omitempty"`
+ Tag string `protobuf:"bytes,3,opt,name=tag,proto3" json:"tag,omitempty"`
+ CreditMsat *Amount `protobuf:"bytes,4,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
+ DebitMsat *Amount `protobuf:"bytes,5,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
+ Currency string `protobuf:"bytes,6,opt,name=currency,proto3" json:"currency,omitempty"`
+ Timestamp uint32 `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
+ Outpoint *string `protobuf:"bytes,8,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
+ Blockheight *uint32 `protobuf:"varint,9,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
+ Origin *string `protobuf:"bytes,10,opt,name=origin,proto3,oneof" json:"origin,omitempty"`
+ PaymentId []byte `protobuf:"bytes,11,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
+ Txid []byte `protobuf:"bytes,12,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
+ Description *string `protobuf:"bytes,13,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ FeesMsat *Amount `protobuf:"bytes,14,opt,name=fees_msat,json=feesMsat,proto3,oneof" json:"fees_msat,omitempty"`
+ IsRebalance *bool `protobuf:"varint,15,opt,name=is_rebalance,json=isRebalance,proto3,oneof" json:"is_rebalance,omitempty"`
+ PartId *uint32 `protobuf:"varint,16,opt,name=part_id,json=partId,proto3,oneof" json:"part_id,omitempty"`
+}
+
+func (x *BkprlistaccounteventsEvents) Reset() {
+ *x = BkprlistaccounteventsEvents{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[388]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistaccounteventsEvents) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistaccounteventsEvents) ProtoMessage() {}
+
+func (x *BkprlistaccounteventsEvents) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[388]
+ 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 BkprlistaccounteventsEvents.ProtoReflect.Descriptor instead.
+func (*BkprlistaccounteventsEvents) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{388}
+}
+
+func (x *BkprlistaccounteventsEvents) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetItemType() BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType {
+ if x != nil {
+ return x.ItemType
+ }
+ return BkprlistaccounteventsEvents_ONCHAIN_FEE
+}
+
+func (x *BkprlistaccounteventsEvents) GetTag() string {
+ if x != nil {
+ return x.Tag
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetCreditMsat() *Amount {
+ if x != nil {
+ return x.CreditMsat
+ }
+ return nil
+}
+
+func (x *BkprlistaccounteventsEvents) GetDebitMsat() *Amount {
+ if x != nil {
+ return x.DebitMsat
+ }
+ return nil
+}
+
+func (x *BkprlistaccounteventsEvents) GetCurrency() string {
+ if x != nil {
+ return x.Currency
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetTimestamp() uint32 {
+ if x != nil {
+ return x.Timestamp
+ }
+ return 0
+}
+
+func (x *BkprlistaccounteventsEvents) GetOutpoint() string {
+ if x != nil && x.Outpoint != nil {
+ return *x.Outpoint
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetBlockheight() uint32 {
+ if x != nil && x.Blockheight != nil {
+ return *x.Blockheight
+ }
+ return 0
+}
+
+func (x *BkprlistaccounteventsEvents) GetOrigin() string {
+ if x != nil && x.Origin != nil {
+ return *x.Origin
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetPaymentId() []byte {
+ if x != nil {
+ return x.PaymentId
+ }
+ return nil
+}
+
+func (x *BkprlistaccounteventsEvents) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *BkprlistaccounteventsEvents) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *BkprlistaccounteventsEvents) GetFeesMsat() *Amount {
+ if x != nil {
+ return x.FeesMsat
+ }
+ return nil
+}
+
+func (x *BkprlistaccounteventsEvents) GetIsRebalance() bool {
+ if x != nil && x.IsRebalance != nil {
+ return *x.IsRebalance
+ }
+ return false
+}
+
+func (x *BkprlistaccounteventsEvents) GetPartId() uint32 {
+ if x != nil && x.PartId != nil {
+ return *x.PartId
+ }
+ return 0
+}
+
+type BkprlistbalancesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *BkprlistbalancesRequest) Reset() {
+ *x = BkprlistbalancesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[389]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistbalancesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistbalancesRequest) ProtoMessage() {}
+
+func (x *BkprlistbalancesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[389]
+ 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 BkprlistbalancesRequest.ProtoReflect.Descriptor instead.
+func (*BkprlistbalancesRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{389}
+}
+
+type BkprlistbalancesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Accounts []*BkprlistbalancesAccounts `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty"`
+}
+
+func (x *BkprlistbalancesResponse) Reset() {
+ *x = BkprlistbalancesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[390]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistbalancesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistbalancesResponse) ProtoMessage() {}
+
+func (x *BkprlistbalancesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[390]
+ 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 BkprlistbalancesResponse.ProtoReflect.Descriptor instead.
+func (*BkprlistbalancesResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{390}
+}
+
+func (x *BkprlistbalancesResponse) GetAccounts() []*BkprlistbalancesAccounts {
+ if x != nil {
+ return x.Accounts
+ }
+ return nil
+}
+
+type BkprlistbalancesAccounts struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+ Balances []*BkprlistbalancesAccountsBalances `protobuf:"bytes,2,rep,name=balances,proto3" json:"balances,omitempty"`
+ PeerId []byte `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
+ WeOpened *bool `protobuf:"varint,4,opt,name=we_opened,json=weOpened,proto3,oneof" json:"we_opened,omitempty"`
+ AccountClosed *bool `protobuf:"varint,5,opt,name=account_closed,json=accountClosed,proto3,oneof" json:"account_closed,omitempty"`
+ AccountResolved *bool `protobuf:"varint,6,opt,name=account_resolved,json=accountResolved,proto3,oneof" json:"account_resolved,omitempty"`
+ ResolvedAtBlock *uint32 `protobuf:"varint,7,opt,name=resolved_at_block,json=resolvedAtBlock,proto3,oneof" json:"resolved_at_block,omitempty"`
+}
+
+func (x *BkprlistbalancesAccounts) Reset() {
+ *x = BkprlistbalancesAccounts{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[391]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistbalancesAccounts) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistbalancesAccounts) ProtoMessage() {}
+
+func (x *BkprlistbalancesAccounts) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[391]
+ 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 BkprlistbalancesAccounts.ProtoReflect.Descriptor instead.
+func (*BkprlistbalancesAccounts) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{391}
+}
+
+func (x *BkprlistbalancesAccounts) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+func (x *BkprlistbalancesAccounts) GetBalances() []*BkprlistbalancesAccountsBalances {
+ if x != nil {
+ return x.Balances
+ }
+ return nil
+}
+
+func (x *BkprlistbalancesAccounts) GetPeerId() []byte {
+ if x != nil {
+ return x.PeerId
+ }
+ return nil
+}
+
+func (x *BkprlistbalancesAccounts) GetWeOpened() bool {
+ if x != nil && x.WeOpened != nil {
+ return *x.WeOpened
+ }
+ return false
+}
+
+func (x *BkprlistbalancesAccounts) GetAccountClosed() bool {
+ if x != nil && x.AccountClosed != nil {
+ return *x.AccountClosed
+ }
+ return false
+}
+
+func (x *BkprlistbalancesAccounts) GetAccountResolved() bool {
+ if x != nil && x.AccountResolved != nil {
+ return *x.AccountResolved
+ }
+ return false
+}
+
+func (x *BkprlistbalancesAccounts) GetResolvedAtBlock() uint32 {
+ if x != nil && x.ResolvedAtBlock != nil {
+ return *x.ResolvedAtBlock
+ }
+ return 0
+}
+
+type BkprlistbalancesAccountsBalances struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ BalanceMsat *Amount `protobuf:"bytes,1,opt,name=balance_msat,json=balanceMsat,proto3" json:"balance_msat,omitempty"`
+ CoinType string `protobuf:"bytes,2,opt,name=coin_type,json=coinType,proto3" json:"coin_type,omitempty"`
+}
+
+func (x *BkprlistbalancesAccountsBalances) Reset() {
+ *x = BkprlistbalancesAccountsBalances{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[392]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistbalancesAccountsBalances) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistbalancesAccountsBalances) ProtoMessage() {}
+
+func (x *BkprlistbalancesAccountsBalances) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[392]
+ 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 BkprlistbalancesAccountsBalances.ProtoReflect.Descriptor instead.
+func (*BkprlistbalancesAccountsBalances) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{392}
+}
+
+func (x *BkprlistbalancesAccountsBalances) GetBalanceMsat() *Amount {
+ if x != nil {
+ return x.BalanceMsat
+ }
+ return nil
+}
+
+func (x *BkprlistbalancesAccountsBalances) GetCoinType() string {
+ if x != nil {
+ return x.CoinType
+ }
+ return ""
+}
+
+type BkprlistincomeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ConsolidateFees *bool `protobuf:"varint,1,opt,name=consolidate_fees,json=consolidateFees,proto3,oneof" json:"consolidate_fees,omitempty"`
+ StartTime *uint32 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
+ EndTime *uint32 `protobuf:"varint,3,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
+}
+
+func (x *BkprlistincomeRequest) Reset() {
+ *x = BkprlistincomeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[393]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistincomeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistincomeRequest) ProtoMessage() {}
+
+func (x *BkprlistincomeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[393]
+ 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 BkprlistincomeRequest.ProtoReflect.Descriptor instead.
+func (*BkprlistincomeRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{393}
+}
+
+func (x *BkprlistincomeRequest) GetConsolidateFees() bool {
+ if x != nil && x.ConsolidateFees != nil {
+ return *x.ConsolidateFees
+ }
+ return false
+}
+
+func (x *BkprlistincomeRequest) GetStartTime() uint32 {
+ if x != nil && x.StartTime != nil {
+ return *x.StartTime
+ }
+ return 0
+}
+
+func (x *BkprlistincomeRequest) GetEndTime() uint32 {
+ if x != nil && x.EndTime != nil {
+ return *x.EndTime
+ }
+ return 0
+}
+
+type BkprlistincomeResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ IncomeEvents []*BkprlistincomeIncomeEvents `protobuf:"bytes,1,rep,name=income_events,json=incomeEvents,proto3" json:"income_events,omitempty"`
+}
+
+func (x *BkprlistincomeResponse) Reset() {
+ *x = BkprlistincomeResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[394]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistincomeResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistincomeResponse) ProtoMessage() {}
+
+func (x *BkprlistincomeResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[394]
+ 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 BkprlistincomeResponse.ProtoReflect.Descriptor instead.
+func (*BkprlistincomeResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{394}
+}
+
+func (x *BkprlistincomeResponse) GetIncomeEvents() []*BkprlistincomeIncomeEvents {
+ if x != nil {
+ return x.IncomeEvents
+ }
+ return nil
+}
+
+type BkprlistincomeIncomeEvents struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
+ Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
+ CreditMsat *Amount `protobuf:"bytes,3,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
+ DebitMsat *Amount `protobuf:"bytes,4,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
+ Currency string `protobuf:"bytes,5,opt,name=currency,proto3" json:"currency,omitempty"`
+ Timestamp uint32 `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
+ Description *string `protobuf:"bytes,7,opt,name=description,proto3,oneof" json:"description,omitempty"`
+ Outpoint *string `protobuf:"bytes,8,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
+ Txid []byte `protobuf:"bytes,9,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
+ PaymentId []byte `protobuf:"bytes,10,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
+}
+
+func (x *BkprlistincomeIncomeEvents) Reset() {
+ *x = BkprlistincomeIncomeEvents{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[395]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BkprlistincomeIncomeEvents) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BkprlistincomeIncomeEvents) ProtoMessage() {}
+
+func (x *BkprlistincomeIncomeEvents) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[395]
+ 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 BkprlistincomeIncomeEvents.ProtoReflect.Descriptor instead.
+func (*BkprlistincomeIncomeEvents) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{395}
+}
+
+func (x *BkprlistincomeIncomeEvents) GetAccount() string {
+ if x != nil {
+ return x.Account
+ }
+ return ""
+}
+
+func (x *BkprlistincomeIncomeEvents) GetTag() string {
+ if x != nil {
+ return x.Tag
+ }
+ return ""
+}
+
+func (x *BkprlistincomeIncomeEvents) GetCreditMsat() *Amount {
+ if x != nil {
+ return x.CreditMsat
+ }
+ return nil
+}
+
+func (x *BkprlistincomeIncomeEvents) GetDebitMsat() *Amount {
+ if x != nil {
+ return x.DebitMsat
+ }
+ return nil
+}
+
+func (x *BkprlistincomeIncomeEvents) GetCurrency() string {
+ if x != nil {
+ return x.Currency
+ }
+ return ""
+}
+
+func (x *BkprlistincomeIncomeEvents) GetTimestamp() uint32 {
+ if x != nil {
+ return x.Timestamp
+ }
+ return 0
+}
+
+func (x *BkprlistincomeIncomeEvents) GetDescription() string {
+ if x != nil && x.Description != nil {
+ return *x.Description
+ }
+ return ""
+}
+
+func (x *BkprlistincomeIncomeEvents) GetOutpoint() string {
+ if x != nil && x.Outpoint != nil {
+ return *x.Outpoint
+ }
+ return ""
+}
+
+func (x *BkprlistincomeIncomeEvents) GetTxid() []byte {
+ if x != nil {
+ return x.Txid
+ }
+ return nil
+}
+
+func (x *BkprlistincomeIncomeEvents) GetPaymentId() []byte {
+ if x != nil {
+ return x.PaymentId
+ }
+ return nil
+}
+
+type BlacklistruneRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Start *uint64 `protobuf:"varint,1,opt,name=start,proto3,oneof" json:"start,omitempty"`
+ End *uint64 `protobuf:"varint,2,opt,name=end,proto3,oneof" json:"end,omitempty"`
+}
+
+func (x *BlacklistruneRequest) Reset() {
+ *x = BlacklistruneRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[396]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BlacklistruneRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BlacklistruneRequest) ProtoMessage() {}
+
+func (x *BlacklistruneRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[396]
+ 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 BlacklistruneRequest.ProtoReflect.Descriptor instead.
+func (*BlacklistruneRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{396}
+}
+
+func (x *BlacklistruneRequest) GetStart() uint64 {
+ if x != nil && x.Start != nil {
+ return *x.Start
+ }
+ return 0
+}
+
+func (x *BlacklistruneRequest) GetEnd() uint64 {
+ if x != nil && x.End != nil {
+ return *x.End
+ }
+ return 0
+}
+
+type BlacklistruneResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Blacklist []*BlacklistruneBlacklist `protobuf:"bytes,1,rep,name=blacklist,proto3" json:"blacklist,omitempty"`
+}
+
+func (x *BlacklistruneResponse) Reset() {
+ *x = BlacklistruneResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[397]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BlacklistruneResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BlacklistruneResponse) ProtoMessage() {}
+
+func (x *BlacklistruneResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[397]
+ 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 BlacklistruneResponse.ProtoReflect.Descriptor instead.
+func (*BlacklistruneResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{397}
+}
+
+func (x *BlacklistruneResponse) GetBlacklist() []*BlacklistruneBlacklist {
+ if x != nil {
+ return x.Blacklist
+ }
+ return nil
+}
+
+type BlacklistruneBlacklist struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Start uint64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
+ End uint64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
+}
+
+func (x *BlacklistruneBlacklist) Reset() {
+ *x = BlacklistruneBlacklist{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[398]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BlacklistruneBlacklist) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BlacklistruneBlacklist) ProtoMessage() {}
+
+func (x *BlacklistruneBlacklist) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[398]
+ 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 BlacklistruneBlacklist.ProtoReflect.Descriptor instead.
+func (*BlacklistruneBlacklist) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{398}
+}
+
+func (x *BlacklistruneBlacklist) GetStart() uint64 {
+ if x != nil {
+ return x.Start
+ }
+ return 0
+}
+
+func (x *BlacklistruneBlacklist) GetEnd() uint64 {
+ if x != nil {
+ return x.End
+ }
+ return 0
+}
+
+type CheckruneRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Rune string `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
+ Nodeid *string `protobuf:"bytes,2,opt,name=nodeid,proto3,oneof" json:"nodeid,omitempty"`
+ Method *string `protobuf:"bytes,3,opt,name=method,proto3,oneof" json:"method,omitempty"`
+ Params []string `protobuf:"bytes,4,rep,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *CheckruneRequest) Reset() {
+ *x = CheckruneRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[399]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CheckruneRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CheckruneRequest) ProtoMessage() {}
+
+func (x *CheckruneRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[399]
+ 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 CheckruneRequest.ProtoReflect.Descriptor instead.
+func (*CheckruneRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{399}
+}
+
+func (x *CheckruneRequest) GetRune() string {
+ if x != nil {
+ return x.Rune
+ }
+ return ""
+}
+
+func (x *CheckruneRequest) GetNodeid() string {
+ if x != nil && x.Nodeid != nil {
+ return *x.Nodeid
+ }
+ return ""
+}
+
+func (x *CheckruneRequest) GetMethod() string {
+ if x != nil && x.Method != nil {
+ return *x.Method
+ }
+ return ""
+}
+
+func (x *CheckruneRequest) GetParams() []string {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+type CheckruneResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"`
+}
+
+func (x *CheckruneResponse) Reset() {
+ *x = CheckruneResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[400]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CheckruneResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CheckruneResponse) ProtoMessage() {}
+
+func (x *CheckruneResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[400]
+ 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 CheckruneResponse.ProtoReflect.Descriptor instead.
+func (*CheckruneResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{400}
+}
+
+func (x *CheckruneResponse) GetValid() bool {
+ if x != nil {
+ return x.Valid
+ }
+ return false
+}
+
+type CreateruneRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Rune *string `protobuf:"bytes,1,opt,name=rune,proto3,oneof" json:"rune,omitempty"`
+ Restrictions []string `protobuf:"bytes,2,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
+}
+
+func (x *CreateruneRequest) Reset() {
+ *x = CreateruneRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[401]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateruneRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateruneRequest) ProtoMessage() {}
+
+func (x *CreateruneRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[401]
+ 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 CreateruneRequest.ProtoReflect.Descriptor instead.
+func (*CreateruneRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{401}
+}
+
+func (x *CreateruneRequest) GetRune() string {
+ if x != nil && x.Rune != nil {
+ return *x.Rune
+ }
+ return ""
+}
+
+func (x *CreateruneRequest) GetRestrictions() []string {
+ if x != nil {
+ return x.Restrictions
+ }
+ return nil
+}
+
+type CreateruneResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Rune string `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
+ UniqueId string `protobuf:"bytes,2,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"`
+ WarningUnrestrictedRune *string `protobuf:"bytes,3,opt,name=warning_unrestricted_rune,json=warningUnrestrictedRune,proto3,oneof" json:"warning_unrestricted_rune,omitempty"`
+}
+
+func (x *CreateruneResponse) Reset() {
+ *x = CreateruneResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[402]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateruneResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateruneResponse) ProtoMessage() {}
+
+func (x *CreateruneResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[402]
+ 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 CreateruneResponse.ProtoReflect.Descriptor instead.
+func (*CreateruneResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{402}
+}
+
+func (x *CreateruneResponse) GetRune() string {
+ if x != nil {
+ return x.Rune
+ }
+ return ""
+}
+
+func (x *CreateruneResponse) GetUniqueId() string {
+ if x != nil {
+ return x.UniqueId
+ }
+ return ""
+}
+
+func (x *CreateruneResponse) GetWarningUnrestrictedRune() string {
+ if x != nil && x.WarningUnrestrictedRune != nil {
+ return *x.WarningUnrestrictedRune
+ }
+ return ""
+}
+
+type ShowrunesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Rune *string `protobuf:"bytes,1,opt,name=rune,proto3,oneof" json:"rune,omitempty"`
+}
+
+func (x *ShowrunesRequest) Reset() {
+ *x = ShowrunesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[403]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ShowrunesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShowrunesRequest) ProtoMessage() {}
+
+func (x *ShowrunesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[403]
+ 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 ShowrunesRequest.ProtoReflect.Descriptor instead.
+func (*ShowrunesRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{403}
+}
+
+func (x *ShowrunesRequest) GetRune() string {
+ if x != nil && x.Rune != nil {
+ return *x.Rune
+ }
+ return ""
+}
+
+type ShowrunesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Runes []*ShowrunesRunes `protobuf:"bytes,1,rep,name=runes,proto3" json:"runes,omitempty"`
+}
+
+func (x *ShowrunesResponse) Reset() {
+ *x = ShowrunesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[404]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ShowrunesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShowrunesResponse) ProtoMessage() {}
+
+func (x *ShowrunesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[404]
+ 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 ShowrunesResponse.ProtoReflect.Descriptor instead.
+func (*ShowrunesResponse) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{404}
+}
+
+func (x *ShowrunesResponse) GetRunes() []*ShowrunesRunes {
+ if x != nil {
+ return x.Runes
+ }
+ return nil
+}
+
+type ShowrunesRunes struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Rune string `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
+ UniqueId string `protobuf:"bytes,2,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"`
+ Restrictions []*ShowrunesRunesRestrictions `protobuf:"bytes,3,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
+ RestrictionsAsEnglish string `protobuf:"bytes,4,opt,name=restrictions_as_english,json=restrictionsAsEnglish,proto3" json:"restrictions_as_english,omitempty"`
+ Stored *bool `protobuf:"varint,5,opt,name=stored,proto3,oneof" json:"stored,omitempty"`
+ Blacklisted *bool `protobuf:"varint,6,opt,name=blacklisted,proto3,oneof" json:"blacklisted,omitempty"`
+ LastUsed *float64 `protobuf:"fixed64,7,opt,name=last_used,json=lastUsed,proto3,oneof" json:"last_used,omitempty"`
+ OurRune *bool `protobuf:"varint,8,opt,name=our_rune,json=ourRune,proto3,oneof" json:"our_rune,omitempty"`
+}
+
+func (x *ShowrunesRunes) Reset() {
+ *x = ShowrunesRunes{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[405]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ShowrunesRunes) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShowrunesRunes) ProtoMessage() {}
+
+func (x *ShowrunesRunes) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[405]
+ 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 ShowrunesRunes.ProtoReflect.Descriptor instead.
+func (*ShowrunesRunes) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{405}
+}
+
+func (x *ShowrunesRunes) GetRune() string {
+ if x != nil {
+ return x.Rune
+ }
+ return ""
+}
+
+func (x *ShowrunesRunes) GetUniqueId() string {
+ if x != nil {
+ return x.UniqueId
+ }
+ return ""
+}
+
+func (x *ShowrunesRunes) GetRestrictions() []*ShowrunesRunesRestrictions {
+ if x != nil {
+ return x.Restrictions
+ }
+ return nil
+}
+
+func (x *ShowrunesRunes) GetRestrictionsAsEnglish() string {
+ if x != nil {
+ return x.RestrictionsAsEnglish
+ }
+ return ""
+}
+
+func (x *ShowrunesRunes) GetStored() bool {
+ if x != nil && x.Stored != nil {
+ return *x.Stored
+ }
+ return false
+}
+
+func (x *ShowrunesRunes) GetBlacklisted() bool {
+ if x != nil && x.Blacklisted != nil {
+ return *x.Blacklisted
+ }
+ return false
+}
+
+func (x *ShowrunesRunes) GetLastUsed() float64 {
+ if x != nil && x.LastUsed != nil {
+ return *x.LastUsed
+ }
+ return 0
+}
+
+func (x *ShowrunesRunes) GetOurRune() bool {
+ if x != nil && x.OurRune != nil {
+ return *x.OurRune
+ }
+ return false
+}
+
+type ShowrunesRunesRestrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Alternatives []*ShowrunesRunesRestrictionsAlternatives `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
+ English string `protobuf:"bytes,2,opt,name=english,proto3" json:"english,omitempty"`
+}
+
+func (x *ShowrunesRunesRestrictions) Reset() {
+ *x = ShowrunesRunesRestrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[406]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ShowrunesRunesRestrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShowrunesRunesRestrictions) ProtoMessage() {}
+
+func (x *ShowrunesRunesRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[406]
+ 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 ShowrunesRunesRestrictions.ProtoReflect.Descriptor instead.
+func (*ShowrunesRunesRestrictions) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{406}
+}
+
+func (x *ShowrunesRunesRestrictions) GetAlternatives() []*ShowrunesRunesRestrictionsAlternatives {
+ if x != nil {
+ return x.Alternatives
+ }
+ return nil
+}
+
+func (x *ShowrunesRunesRestrictions) GetEnglish() string {
+ if x != nil {
+ return x.English
+ }
+ return ""
+}
+
+type ShowrunesRunesRestrictionsAlternatives struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Fieldname string `protobuf:"bytes,1,opt,name=fieldname,proto3" json:"fieldname,omitempty"`
+ Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
+ Condition string `protobuf:"bytes,3,opt,name=condition,proto3" json:"condition,omitempty"`
+ English string `protobuf:"bytes,4,opt,name=english,proto3" json:"english,omitempty"`
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) Reset() {
+ *x = ShowrunesRunesRestrictionsAlternatives{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[407]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShowrunesRunesRestrictionsAlternatives) ProtoMessage() {}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[407]
+ 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 ShowrunesRunesRestrictionsAlternatives.ProtoReflect.Descriptor instead.
+func (*ShowrunesRunesRestrictionsAlternatives) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{407}
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) GetFieldname() string {
+ if x != nil {
+ return x.Fieldname
+ }
+ return ""
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) GetValue() string {
+ if x != nil {
+ return x.Value
+ }
+ return ""
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) GetCondition() string {
+ if x != nil {
+ return x.Condition
+ }
+ return ""
+}
+
+func (x *ShowrunesRunesRestrictionsAlternatives) GetEnglish() string {
+ if x != nil {
+ return x.English
+ }
+ return ""
+}
+
+type StreamBlockAddedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamBlockAddedRequest) Reset() {
+ *x = StreamBlockAddedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[408]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamBlockAddedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamBlockAddedRequest) ProtoMessage() {}
+
+func (x *StreamBlockAddedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[408]
+ 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 StreamBlockAddedRequest.ProtoReflect.Descriptor instead.
+func (*StreamBlockAddedRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{408}
+}
+
+type BlockAddedNotification struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
+ Height uint32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
+}
+
+func (x *BlockAddedNotification) Reset() {
+ *x = BlockAddedNotification{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[409]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BlockAddedNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BlockAddedNotification) ProtoMessage() {}
+
+func (x *BlockAddedNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[409]
+ 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 BlockAddedNotification.ProtoReflect.Descriptor instead.
+func (*BlockAddedNotification) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{409}
+}
+
+func (x *BlockAddedNotification) GetHash() []byte {
+ if x != nil {
+ return x.Hash
+ }
+ return nil
+}
+
+func (x *BlockAddedNotification) GetHeight() uint32 {
+ if x != nil {
+ return x.Height
+ }
+ return 0
+}
+
+type StreamChannelOpenFailedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamChannelOpenFailedRequest) Reset() {
+ *x = StreamChannelOpenFailedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[410]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamChannelOpenFailedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamChannelOpenFailedRequest) ProtoMessage() {}
+
+func (x *StreamChannelOpenFailedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[410]
+ 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 StreamChannelOpenFailedRequest.ProtoReflect.Descriptor instead.
+func (*StreamChannelOpenFailedRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{410}
+}
+
+type ChannelOpenFailedNotification struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *ChannelOpenFailedNotification) Reset() {
+ *x = ChannelOpenFailedNotification{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[411]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ChannelOpenFailedNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChannelOpenFailedNotification) ProtoMessage() {}
+
+func (x *ChannelOpenFailedNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[411]
+ 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 ChannelOpenFailedNotification.ProtoReflect.Descriptor instead.
+func (*ChannelOpenFailedNotification) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{411}
+}
+
+func (x *ChannelOpenFailedNotification) GetChannelId() []byte {
+ if x != nil {
+ return x.ChannelId
+ }
+ return nil
+}
+
+type StreamChannelOpenedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamChannelOpenedRequest) Reset() {
+ *x = StreamChannelOpenedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[412]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamChannelOpenedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamChannelOpenedRequest) ProtoMessage() {}
+
+func (x *StreamChannelOpenedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[412]
+ 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 StreamChannelOpenedRequest.ProtoReflect.Descriptor instead.
+func (*StreamChannelOpenedRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{412}
+}
+
+type ChannelOpenedNotification struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
+ FundingMsat *Amount `protobuf:"bytes,2,opt,name=funding_msat,json=fundingMsat,proto3" json:"funding_msat,omitempty"`
+ FundingTxid []byte `protobuf:"bytes,3,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
+ ChannelReady bool `protobuf:"varint,4,opt,name=channel_ready,json=channelReady,proto3" json:"channel_ready,omitempty"`
+}
+
+func (x *ChannelOpenedNotification) Reset() {
+ *x = ChannelOpenedNotification{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[413]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ChannelOpenedNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChannelOpenedNotification) ProtoMessage() {}
+
+func (x *ChannelOpenedNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[413]
+ 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 ChannelOpenedNotification.ProtoReflect.Descriptor instead.
+func (*ChannelOpenedNotification) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{413}
+}
+
+func (x *ChannelOpenedNotification) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *ChannelOpenedNotification) GetFundingMsat() *Amount {
+ if x != nil {
+ return x.FundingMsat
+ }
+ return nil
+}
+
+func (x *ChannelOpenedNotification) GetFundingTxid() []byte {
+ if x != nil {
+ return x.FundingTxid
+ }
+ return nil
+}
+
+func (x *ChannelOpenedNotification) GetChannelReady() bool {
+ if x != nil {
+ return x.ChannelReady
+ }
+ return false
+}
+
+type StreamConnectRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamConnectRequest) Reset() {
+ *x = StreamConnectRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[414]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamConnectRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamConnectRequest) ProtoMessage() {}
+
+func (x *StreamConnectRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[414]
+ 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 StreamConnectRequest.ProtoReflect.Descriptor instead.
+func (*StreamConnectRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{414}
+}
+
+type PeerConnectNotification struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Direction PeerConnectNotification_PeerConnectDirection `protobuf:"varint,2,opt,name=direction,proto3,enum=cln.PeerConnectNotification_PeerConnectDirection" json:"direction,omitempty"`
+ Address *PeerConnectAddress `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
+}
+
+func (x *PeerConnectNotification) Reset() {
+ *x = PeerConnectNotification{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[415]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PeerConnectNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PeerConnectNotification) ProtoMessage() {}
+
+func (x *PeerConnectNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[415]
+ 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 PeerConnectNotification.ProtoReflect.Descriptor instead.
+func (*PeerConnectNotification) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{415}
+}
+
+func (x *PeerConnectNotification) GetId() []byte {
+ if x != nil {
+ return x.Id
+ }
+ return nil
+}
+
+func (x *PeerConnectNotification) GetDirection() PeerConnectNotification_PeerConnectDirection {
+ if x != nil {
+ return x.Direction
+ }
+ return PeerConnectNotification_IN
+}
+
+func (x *PeerConnectNotification) GetAddress() *PeerConnectAddress {
+ if x != nil {
+ return x.Address
+ }
+ return nil
+}
+
+type PeerConnectAddress struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ItemType PeerConnectAddress_PeerConnectAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.PeerConnectAddress_PeerConnectAddressType" json:"item_type,omitempty"`
+ Socket *string `protobuf:"bytes,2,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
+ Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
+ Port *uint32 `protobuf:"varint,4,opt,name=port,proto3,oneof" json:"port,omitempty"`
+}
+
+func (x *PeerConnectAddress) Reset() {
+ *x = PeerConnectAddress{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[416]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PeerConnectAddress) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PeerConnectAddress) ProtoMessage() {}
+
+func (x *PeerConnectAddress) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[416]
+ 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 PeerConnectAddress.ProtoReflect.Descriptor instead.
+func (*PeerConnectAddress) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{416}
+}
+
+func (x *PeerConnectAddress) GetItemType() PeerConnectAddress_PeerConnectAddressType {
+ if x != nil {
+ return x.ItemType
+ }
+ return PeerConnectAddress_LOCAL_SOCKET
+}
+
+func (x *PeerConnectAddress) GetSocket() string {
+ if x != nil && x.Socket != nil {
+ return *x.Socket
+ }
+ return ""
+}
+
+func (x *PeerConnectAddress) GetAddress() string {
+ if x != nil && x.Address != nil {
+ return *x.Address
+ }
+ return ""
+}
+
+func (x *PeerConnectAddress) GetPort() uint32 {
+ if x != nil && x.Port != nil {
+ return *x.Port
+ }
+ return 0
+}
+
+type StreamCustomMsgRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamCustomMsgRequest) Reset() {
+ *x = StreamCustomMsgRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[417]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamCustomMsgRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamCustomMsgRequest) ProtoMessage() {}
+
+func (x *StreamCustomMsgRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[417]
+ 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 StreamCustomMsgRequest.ProtoReflect.Descriptor instead.
+func (*StreamCustomMsgRequest) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{417}
+}
+
+type CustomMsgNotification struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
+ Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
+}
+
+func (x *CustomMsgNotification) Reset() {
+ *x = CustomMsgNotification{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_node_proto_msgTypes[418]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CustomMsgNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CustomMsgNotification) ProtoMessage() {}
+
+func (x *CustomMsgNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_node_proto_msgTypes[418]
+ 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 CustomMsgNotification.ProtoReflect.Descriptor instead.
+func (*CustomMsgNotification) Descriptor() ([]byte, []int) {
+ return file_node_proto_rawDescGZIP(), []int{418}
+}
+
+func (x *CustomMsgNotification) GetPeerId() []byte {
+ if x != nil {
+ return x.PeerId
+ }
+ return nil
+}
+
+func (x *CustomMsgNotification) GetPayload() []byte {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+var File_node_proto protoreflect.FileDescriptor
+
+var file_node_proto_rawDesc = []byte{
+ 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x03, 0x63, 0x6c,
+ 0x6e, 0x1a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa4, 0x06, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66,
+ 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69,
+ 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61,
+ 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75,
+ 0x6d, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e,
+ 0x75, 0x6d, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6e, 0x75, 0x6d, 0x5f, 0x70,
+ 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6e, 0x75, 0x6d, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, 0x6d,
0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6e, 0x75, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x76,
0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x75, 0x6d,
@@ -18375,7 +34494,7 @@ var file_node_proto_rawDesc = []byte{
0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a,
0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56,
0x33, 0x10, 0x04, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22,
- 0xab, 0x02, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69,
+ 0xd6, 0x02, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69,
0x6e, 0x67, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69,
0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e,
@@ -18385,46 +34504,52 @@ var file_node_proto_rawDesc = []byte{
0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12,
0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x02, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x22, 0x5f, 0x0a, 0x12,
- 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79,
- 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b,
- 0x45, 0x54, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x57, 0x45, 0x42, 0x53, 0x4f, 0x43, 0x4b, 0x45,
- 0x54, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a,
+ 0x02, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07,
+ 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
+ 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x22, 0x5f, 0x0a, 0x12, 0x47,
+ 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70,
+ 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45,
+ 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a,
0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32,
- 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x0a, 0x0a,
- 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f,
- 0x72, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x53, 0x0a,
- 0x10, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
- 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01,
- 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x65, 0x76,
- 0x65, 0x6c, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73,
- 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x52, 0x05, 0x70, 0x65, 0x65,
- 0x72, 0x73, 0x22, 0xd8, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
- 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
- 0x74, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x75, 0x6d,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x03, 0x6c,
- 0x6f, 0x67, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67,
- 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12, 0x37, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x18,
- 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52,
- 0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f,
- 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
- 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f,
- 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c,
- 0x48, 0x02, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42,
- 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
- 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0xb4, 0x03,
+ 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x12, 0x0d, 0x0a,
+ 0x09, 0x57, 0x45, 0x42, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x05, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72,
+ 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x22, 0xc0, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73,
+ 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a,
+ 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
+ 0x72, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c,
+ 0x88, 0x01, 0x01, 0x22, 0x45, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
+ 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4f, 0x10, 0x00, 0x12, 0x09, 0x0a,
+ 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f,
+ 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x03, 0x12,
+ 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x04, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69,
+ 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x3e, 0x0a, 0x11, 0x4c,
+ 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x29, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50,
+ 0x65, 0x65, 0x72, 0x73, 0x52, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x22, 0x9f, 0x02, 0x0a, 0x0e,
+ 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x0e,
+ 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c,
+ 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x03,
+ 0x6c, 0x6f, 0x67, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f,
+ 0x67, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64,
+ 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64, 0x72,
+ 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x00, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01,
+ 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52,
+ 0x0b, 0x6e, 0x75, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x42,
+ 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xbf, 0x03,
0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73,
0x4c, 0x6f, 0x67, 0x12, 0x49, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
@@ -18441,943 +34566,971 @@ var file_node_proto_rawDesc = []byte{
0x01, 0x12, 0x1c, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0c, 0x48, 0x04, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12,
0x17, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52,
- 0x04, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x22, 0x69, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74,
+ 0x04, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x22, 0x74, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74,
0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70,
0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a,
0x0a, 0x06, 0x42, 0x52, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e,
0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10,
0x03, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05,
0x49, 0x4f, 0x5f, 0x49, 0x4e, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4f, 0x5f, 0x4f, 0x55,
- 0x54, 0x10, 0x06, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x6b, 0x69, 0x70,
- 0x70, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c, 0x6f, 0x67, 0x42,
- 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f,
- 0x64, 0x61, 0x74, 0x61, 0x22, 0xc7, 0x1d, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
- 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12,
- 0x4d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65,
- 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x26,
- 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x54,
- 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x01, 0x52, 0x07, 0x66,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6f, 0x77, 0x6e,
- 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65,
- 0x72, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03,
- 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
- 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
- 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52,
- 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
- 0x2a, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75,
- 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69,
- 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x46,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6c, 0x61, 0x73,
- 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x08, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01,
- 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x6e, 0x65, 0x78,
- 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x0a, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46, 0x65, 0x65, 0x53, 0x74, 0x65, 0x70, 0x88,
- 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x08, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0d,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
- 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x08, 0x69, 0x6e, 0x66, 0x6c, 0x69,
- 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18,
- 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f,
- 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x0f,
- 0x20, 0x01, 0x28, 0x08, 0x48, 0x0c, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x88,
- 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01,
- 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x53, 0x69, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x06,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x0d,
- 0x52, 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x66,
- 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x66,
- 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x07, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x0e, 0x52, 0x07,
- 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x0a, 0x74, 0x6f,
- 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0f, 0x52, 0x08, 0x74,
- 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x69,
- 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x15, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x10, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x11, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55,
- 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61,
- 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x12, 0x52, 0x09, 0x74, 0x6f, 0x74,
- 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65,
- 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x13, 0x52,
- 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
- 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x19,
- 0x20, 0x01, 0x28, 0x0d, 0x48, 0x14, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f,
- 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68,
- 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d,
- 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x15, 0x52, 0x0d, 0x64, 0x75,
- 0x73, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x44,
- 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63,
- 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x16, 0x52, 0x12, 0x6d,
- 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65,
- 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x17, 0x52,
- 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x18, 0x52, 0x0e, 0x6f,
- 0x75, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x37, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73,
- 0x61, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x19, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62,
- 0x6c, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x0f, 0x72, 0x65, 0x63,
- 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1f, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x1a, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
- 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x20, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x1b, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
- 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x30, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x1c, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74,
- 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1d, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x69,
- 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x32, 0x0a, 0x13, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65,
- 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1e,
- 0x52, 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c,
- 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x11, 0x6f, 0x75, 0x72, 0x5f, 0x74, 0x6f, 0x5f,
- 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x1f, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c,
- 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63,
- 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x20, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64,
- 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x21, 0x52, 0x05, 0x61, 0x6c, 0x69,
- 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
- 0x25, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x33, 0x0a,
- 0x13, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66,
- 0x65, 0x72, 0x65, 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, 0x04, 0x48, 0x22, 0x52, 0x11, 0x69, 0x6e,
- 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x88,
- 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23, 0x52, 0x0d, 0x69, 0x6e, 0x4f, 0x66,
- 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15,
- 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66,
- 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x28, 0x20, 0x01, 0x28, 0x04, 0x48, 0x24, 0x52, 0x13, 0x69,
- 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
- 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66,
- 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x25, 0x52,
- 0x0f, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x18, 0x2a, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x26, 0x52, 0x12, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73,
- 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75,
- 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2b,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x27, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d,
- 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
- 0x18, 0x2c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x28, 0x52, 0x14, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01,
- 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
- 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x29, 0x52, 0x10, 0x6f, 0x75,
- 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x36, 0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x2e, 0x20, 0x03, 0x28, 0x0b,
- 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
- 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c,
- 0x63, 0x73, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x63, 0x6c, 0x6f,
- 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x2a, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x88,
- 0x01, 0x01, 0x22, 0xe0, 0x02, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
- 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x53, 0x74, 0x61,
- 0x74, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x50, 0x45, 0x4e, 0x49, 0x4e, 0x47, 0x44, 0x10, 0x00,
- 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x41, 0x57, 0x41,
- 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x13,
- 0x0a, 0x0f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41,
- 0x4c, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f,
- 0x53, 0x48, 0x55, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12,
- 0x18, 0x0a, 0x14, 0x43, 0x4c, 0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x53, 0x49, 0x47, 0x45,
- 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4c, 0x4f,
- 0x53, 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05,
- 0x12, 0x17, 0x0a, 0x13, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x49,
- 0x4c, 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x55, 0x4e,
- 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x53, 0x45, 0x45, 0x4e, 0x10,
- 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x08, 0x12, 0x17,
- 0x0a, 0x13, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e,
- 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x55, 0x41, 0x4c, 0x4f,
- 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f,
- 0x43, 0x4b, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50,
- 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54,
- 0x45, 0x44, 0x10, 0x0b, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e,
- 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45,
- 0x41, 0x44, 0x59, 0x10, 0x0c, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63,
- 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x42, 0x13, 0x0a, 0x11,
- 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
- 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
- 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69,
- 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75,
- 0x74, 0x6e, 0x75, 0x6d, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
- 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6c, 0x61, 0x73,
- 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65,
- 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6e,
- 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x42, 0x0b, 0x0a, 0x09,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x72,
- 0x69, 0x76, 0x61, 0x74, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72,
- 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x0d, 0x0a, 0x0b,
- 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
- 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11,
- 0x0a, 0x0f, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73,
- 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f,
- 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
- 0x68, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69,
- 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74,
- 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x72,
- 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a,
- 0x0f, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d,
- 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a,
- 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f,
- 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x61, 0x78, 0x69,
- 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73,
- 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x75,
- 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42,
- 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64,
- 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73,
- 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73,
- 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x5f,
- 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16,
- 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c,
- 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x75,
- 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15,
- 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66,
- 0x66, 0x65, 0x72, 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66,
- 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f,
- 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66,
- 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75,
- 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x4b,
- 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12,
- 0x14, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
- 0x70, 0x65, 0x72, 0x6b, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x22, 0xd5, 0x02, 0x0a, 0x1e,
- 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21,
- 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69,
- 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74,
- 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x12, 0x39, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x10, 0x74, 0x6f, 0x74,
- 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a,
- 0x10, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x4d, 0x73, 0x61, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x48, 0x00, 0x52, 0x0c, 0x73,
- 0x70, 0x6c, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21,
- 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x06,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x54, 0x78, 0x69,
- 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x22, 0xe2, 0x02, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
- 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x75,
- 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x65,
- 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61,
- 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
- 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12,
- 0x37, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x46,
- 0x75, 0x6e, 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f,
- 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0b,
- 0x66, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34,
- 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x63, 0x76, 0x64, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69,
- 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72,
- 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x6a, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74,
- 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x88,
- 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42,
- 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65,
- 0x6d, 0x6f, 0x74, 0x65, 0x22, 0xbe, 0x03, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
- 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48,
- 0x74, 0x6c, 0x63, 0x73, 0x12, 0x63, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
- 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09,
- 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72,
- 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12,
- 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
- 0x73, 0x68, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d,
- 0x6d, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x6f, 0x63,
- 0x61, 0x6c, 0x54, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74, 0x61,
- 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48,
- 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22,
- 0x37, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72,
- 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69,
- 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12,
- 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63,
- 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x37, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e,
- 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x70, 0x65,
- 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x73, 0x70, 0x65, 0x6e,
- 0x74, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x22, 0x78,
- 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66,
- 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07, 0x6f, 0x75, 0x74,
- 0x70, 0x75, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xe1, 0x03, 0x0a, 0x10, 0x4c, 0x69, 0x73,
- 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a,
- 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69,
- 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x07, 0x61,
- 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0c, 0x72, 0x65,
- 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c,
- 0x48, 0x01, 0x52, 0x0c, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75,
- 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66,
+ 0x54, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x07, 0x42, 0x0e,
+ 0x0a, 0x0c, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x42, 0x07,
+ 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c, 0x6f, 0x67, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e,
+ 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22,
+ 0x37, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x22, 0x78, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74,
+ 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a,
+ 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x32,
+ 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x22, 0xa8, 0x04, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73,
+ 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f,
+ 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74,
+ 0x70, 0x75, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65,
+ 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70,
+ 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
+ 0x73, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0c, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0c, 0x72, 0x65,
+ 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a,
+ 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74,
+ 0x70, 0x75, 0x74, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42,
+ 0x6c, 0x6f, 0x63, 0x6b, 0x88, 0x01, 0x01, 0x22, 0x51, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x66,
0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0b, 0x62, 0x6c,
- 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x22, 0x51, 0x0a, 0x16,
- 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x43, 0x4f, 0x4e, 0x46,
- 0x49, 0x52, 0x4d, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4e, 0x46, 0x49,
- 0x52, 0x4d, 0x45, 0x44, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x45, 0x4e, 0x54, 0x10,
- 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x4d, 0x41, 0x54, 0x55, 0x52, 0x45, 0x10, 0x03, 0x42,
- 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
- 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x0e, 0x0a, 0x0c,
- 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x97, 0x03, 0x0a,
- 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x0f, 0x6f,
- 0x75, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x0d, 0x6f, 0x75, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
- 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21,
- 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69,
- 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74,
- 0x70, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e,
- 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e,
- 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
- 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
+ 0x73, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x45, 0x44, 0x10,
+ 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08,
+ 0x49, 0x4d, 0x4d, 0x41, 0x54, 0x55, 0x52, 0x45, 0x10, 0x03, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61,
+ 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x72, 0x65, 0x64, 0x65, 0x65,
+ 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x97, 0x03,
+ 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x0f,
+ 0x6f, 0x75, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x52, 0x0d, 0x6f, 0x75, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
+ 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78,
+ 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
+ 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
+ 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68,
+ 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12,
0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
- 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
- 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88,
- 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
- 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22, 0xbb, 0x03, 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x70,
- 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x05, 0x72, 0x6f, 0x75,
- 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
- 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x75,
- 0x74, 0x65, 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, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01,
- 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01,
- 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72,
- 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x06,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63,
+ 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
+ 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22, 0xb7, 0x04, 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64,
+ 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x05, 0x72, 0x6f,
+ 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x05, 0x72, 0x6f,
+ 0x75, 0x74, 0x65, 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, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x2a,
+ 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
+ 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75,
+ 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63,
0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c,
- 0x48, 0x05, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18,
- 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64,
- 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0e, 0x0a,
- 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a,
- 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f,
- 0x75, 0x70, 0x69, 0x64, 0x22, 0xe5, 0x06, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48,
- 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88,
- 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0c, 0x75, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07,
- 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52,
- 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3a,
- 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0a,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a,
- 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
- 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x41, 0x74, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64,
- 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d,
- 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x10, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28,
- 0x09, 0x48, 0x06, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
- 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52,
- 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
- 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x06, 0x62, 0x6f,
- 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0a,
- 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
- 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0b, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x88, 0x01, 0x01, 0x22, 0x2a, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10,
- 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x42,
- 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42,
- 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
- 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
- 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
- 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
- 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x7c, 0x0a, 0x0c,
- 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x0b,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65,
- 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79,
- 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xb8, 0x01, 0x0a, 0x13, 0x4c,
- 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e,
- 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01,
- 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x01, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25,
- 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a,
- 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x22, 0x80, 0x05, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a,
- 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74,
- 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74,
- 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
- 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
- 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12,
- 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f,
- 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x61,
- 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x61, 0x73, 0x65,
- 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68,
- 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65,
- 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x2a, 0x0a, 0x11,
- 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
- 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x4d,
- 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61,
- 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x37,
- 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69,
- 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x00, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d,
- 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x2c, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x67, 0x6f,
- 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73,
- 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x17, 0x41,
- 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65,
- 0x64, 0x5f, 0x62, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x65, 0x78,
- 0x70, 0x69, 0x72, 0x65, 0x64, 0x42, 0x79, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x79,
- 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x01, 0x52, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64,
- 0x73, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64,
- 0x5f, 0x62, 0x79, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65,
- 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x18, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
- 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0a,
- 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x00, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x42, 0x79, 0x88, 0x01, 0x01,
- 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64,
- 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65,
- 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65,
- 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x79,
- 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x6d, 0x0a, 0x13, 0x43,
- 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05,
- 0x7a, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x62, 0x61,
- 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x42,
- 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x4a, 0x0a, 0x14, 0x43, 0x68,
- 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x16,
- 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06,
- 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0xad, 0x03, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65,
+ 0x48, 0x06, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07,
+ 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
+ 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63,
+ 0x72, 0x65, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11,
+ 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x22, 0xe5, 0x06, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65,
+ 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65,
+ 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x03, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b,
+ 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x06, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74,
+ 0x31, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74,
+ 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61,
+ 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
+ 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0b, 0x63, 0x6f,
+ 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e,
+ 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52,
+ 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
+ 0x22, 0x2a, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c,
+ 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
+ 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x7c, 0x0a, 0x0c, 0x53, 0x65, 0x6e,
+ 0x64, 0x70, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c,
+ 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12,
+ 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f,
+ 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b,
+ 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
+ 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88,
+ 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x73, 0x22, 0x80, 0x05, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
+ 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x16,
+ 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
+ 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x4d, 0x73, 0x61, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f,
+ 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x16,
+ 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
+ 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x61, 0x73,
+ 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x61, 0x73, 0x65, 0x5f,
+ 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69,
+ 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x4d,
+ 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x2a, 0x0a, 0x11, 0x66,
+ 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68,
+ 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x4d, 0x69,
+ 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79,
+ 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x37, 0x0a,
+ 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d,
+ 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d,
+ 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00,
+ 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
+ 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
+ 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x14,
+ 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x22, 0x2c, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69,
+ 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd9, 0x01, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x70,
+ 0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x25, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07,
+ 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74,
+ 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x08, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74,
+ 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
+ 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74,
+ 0x69, 0x6d, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70,
+ 0x73, 0x62, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x22, 0x79, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x70, 0x73, 0x62, 0x74, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04,
+ 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74,
+ 0x12, 0x34, 0x0a, 0x16, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x64,
+ 0x64, 0x65, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x14, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x65, 0x64,
+ 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x88,
+ 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x65, 0x78,
+ 0x70, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00,
+ 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x42, 0x79, 0x88, 0x01, 0x01, 0x12, 0x28,
+ 0x0a, 0x0d, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x65,
+ 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x78, 0x70,
+ 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x79, 0x63, 0x6c,
+ 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x18, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
+ 0x12, 0x22, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x42,
+ 0x79, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65,
+ 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0c, 0x63,
+ 0x79, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x42, 0x10, 0x0a,
+ 0x0e, 0x5f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22,
+ 0x5f, 0x0a, 0x14, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79,
+ 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73,
+ 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x10,
+ 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x61, 0x67, 0x65,
+ 0x22, 0x52, 0x0a, 0x15, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x61, 0x75, 0x74,
+ 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65,
+ 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x22, 0x8e, 0x05, 0x0a, 0x16, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x12,
+ 0x5f, 0x0a, 0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77,
+ 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64,
+ 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48, 0x00, 0x52, 0x11, 0x73, 0x75, 0x63, 0x63,
+ 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01,
+ 0x12, 0x56, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61,
+ 0x72, 0x64, 0x73, 0x48, 0x01, 0x52, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72,
+ 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x53, 0x0a, 0x0d, 0x73, 0x75, 0x63, 0x63,
+ 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f,
+ 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63,
+ 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x48, 0x02, 0x52, 0x0d, 0x73, 0x75, 0x63,
+ 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a,
+ 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
+ 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61,
+ 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x48, 0x03, 0x52, 0x0a, 0x66, 0x61, 0x69, 0x6c,
+ 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0c, 0x70, 0x61, 0x69,
+ 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f,
+ 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x59, 0x0a, 0x0f, 0x65,
+ 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x06,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
+ 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
+ 0x48, 0x05, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69,
+ 0x63, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65,
+ 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42, 0x11, 0x0a, 0x0f,
+ 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42,
+ 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79,
+ 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73,
+ 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x73, 0x22, 0x61, 0x0a, 0x27, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53,
+ 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75,
+ 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5e, 0x0a, 0x24, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75,
+ 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5d, 0x0a, 0x23, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x12,
+ 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5a, 0x0a, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
+ 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e,
+ 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61,
+ 0x6e, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x22, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
+ 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x50, 0x61, 0x69,
+ 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61,
+ 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
+ 0x64, 0x22, 0x5f, 0x0a, 0x25, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e,
+ 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72,
+ 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e,
+ 0x65, 0x64, 0x22, 0x62, 0x0a, 0x16, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x09,
+ 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53,
+ 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73,
+ 0x79, 0x73, 0x74, 0x65, 0x6d, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x75, 0x62,
+ 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x56, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x3b, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x22, 0x9c,
+ 0x05, 0x0a, 0x18, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x61, 0x0a, 0x11, 0x73,
+ 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
+ 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f,
+ 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48, 0x00, 0x52, 0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65,
+ 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x58,
+ 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
+ 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61,
+ 0x72, 0x64, 0x73, 0x48, 0x01, 0x52, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72,
+ 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x55, 0x0a, 0x0d, 0x73, 0x75, 0x63, 0x63,
+ 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75,
+ 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x48, 0x02, 0x52, 0x0d, 0x73,
+ 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x4c, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x48, 0x03, 0x52, 0x0a,
+ 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x88, 0x01, 0x01, 0x12, 0x52, 0x0a,
+ 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48, 0x04,
+ 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x88, 0x01,
+ 0x01, 0x12, 0x5b, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48, 0x05, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x69,
+ 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x14,
+ 0x0a, 0x12, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77,
+ 0x61, 0x72, 0x64, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66,
+ 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x75, 0x63, 0x63,
+ 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x61,
+ 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x69,
+ 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x65, 0x78,
+ 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x22, 0x7e, 0x0a,
+ 0x29, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64,
+ 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e,
+ 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61,
+ 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15,
+ 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61,
+ 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x7b, 0x0a,
+ 0x26, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66,
+ 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
+ 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61,
+ 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x7a, 0x0a, 0x25, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74,
+ 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70,
+ 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a,
+ 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06,
+ 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x77, 0x0a, 0x22, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65,
+ 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64,
+ 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52,
+ 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22,
+ 0x79, 0x0a, 0x24, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
+ 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61,
+ 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x7c, 0x0a, 0x27, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74,
+ 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
+ 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01,
+ 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x6d, 0x0a, 0x13, 0x43, 0x68, 0x65, 0x63,
+ 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x7a, 0x62, 0x61,
+ 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x12,
+ 0x1b, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x00, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07,
+ 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x4a, 0x0a, 0x14, 0x43, 0x68, 0x65, 0x63, 0x6b,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70,
+ 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62,
+ 0x6b, 0x65, 0x79, 0x22, 0xad, 0x03, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x02, 0x69, 0x64, 0x12, 0x31, 0x0a, 0x11, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72,
+ 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x00, 0x52, 0x11, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d,
+ 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
+ 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x35,
+ 0x0a, 0x14, 0x66, 0x65, 0x65, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x12,
+ 0x66, 0x65, 0x65, 0x4e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
+ 0x65, 0x70, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0d, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66,
+ 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0c, 0x77,
+ 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x31,
+ 0x0a, 0x12, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x04, 0x52, 0x10, 0x66, 0x6f,
+ 0x72, 0x63, 0x65, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x88, 0x01,
+ 0x01, 0x12, 0x28, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x52, 0x08, 0x66, 0x65, 0x65, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f,
+ 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75,
+ 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x77,
+ 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x15, 0x0a, 0x13,
+ 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6c, 0x6f,
+ 0x73, 0x65, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
+ 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6c, 0x6f,
+ 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65,
+ 0x12, 0x13, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02,
+ 0x74, 0x78, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x22, 0x35,
+ 0x0a, 0x09, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4d,
+ 0x55, 0x54, 0x55, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4e, 0x49, 0x4c, 0x41,
+ 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4f, 0x50, 0x45,
+ 0x4e, 0x45, 0x44, 0x10, 0x02, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42, 0x07, 0x0a, 0x05,
+ 0x5f, 0x74, 0x78, 0x69, 0x64, 0x22, 0x64, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x31, 0x0a, 0x11, 0x75, 0x6e, 0x69, 0x6c, 0x61,
- 0x74, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0d, 0x48, 0x00, 0x52, 0x11, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
- 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65,
- 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
- 0x01, 0x12, 0x35, 0x0a, 0x14, 0x66, 0x65, 0x65, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x02, 0x52, 0x12, 0x66, 0x65, 0x65, 0x4e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x53, 0x74, 0x65, 0x70, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0d, 0x77, 0x72, 0x6f, 0x6e,
- 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x03,
- 0x52, 0x0c, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01,
- 0x01, 0x12, 0x31, 0x0a, 0x12, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x04, 0x52,
- 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x72, 0x61, 0x6e, 0x67, 0x65,
- 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x52, 0x08, 0x66, 0x65, 0x65, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x14,
- 0x0a, 0x12, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d,
- 0x65, 0x6f, 0x75, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6e, 0x65, 0x67,
- 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x42, 0x10, 0x0a,
- 0x0e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42,
- 0x15, 0x0a, 0x13, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x73, 0x65,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d,
- 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
- 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54,
- 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x00, 0x52, 0x02, 0x74, 0x78, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01,
- 0x01, 0x22, 0x35, 0x0a, 0x09, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a,
- 0x0a, 0x06, 0x4d, 0x55, 0x54, 0x55, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4e,
- 0x49, 0x4c, 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e,
- 0x4f, 0x50, 0x45, 0x4e, 0x45, 0x44, 0x10, 0x02, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42,
- 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x22, 0x64, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e,
- 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x68, 0x6f,
- 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05,
- 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x22, 0xd6,
- 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02,
- 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x43,
- 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44,
- 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
- 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
- 0x73, 0x73, 0x22, 0x23, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72,
- 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07,
- 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x22, 0x9c, 0x02, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e,
- 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74,
- 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65,
- 0x73, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
- 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12,
- 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x00, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
- 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70,
- 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x72,
- 0x74, 0x88, 0x01, 0x01, 0x22, 0x50, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41,
- 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f,
- 0x43, 0x41, 0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04,
- 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02,
- 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54,
- 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65,
- 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a,
- 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x66, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c,
- 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05,
- 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62,
- 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc0,
- 0x07, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b,
- 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
- 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x31, 0x0a, 0x0b, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52,
- 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x46,
- 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69,
- 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78,
- 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03,
- 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01,
- 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78,
- 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65,
- 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05,
- 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f,
- 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64,
- 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75,
- 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x07, 0x52,
- 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x08, 0x52, 0x0f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
- 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61,
- 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65,
- 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
- 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x22, 0x38, 0x0a, 0x13,
- 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a,
- 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e,
- 0x50, 0x41, 0x49, 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e,
- 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0c,
- 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61,
- 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f,
- 0x69, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63,
- 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74,
- 0x65, 0x22, 0x66, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12,
- 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
- 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e,
- 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e,
- 0x75, 0x6d, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x09,
- 0x0a, 0x07, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xd8, 0x02, 0x0a, 0x10, 0x44, 0x61,
- 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10,
- 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
- 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a,
- 0x03, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x03, 0x68, 0x65,
- 0x78, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
- 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x02, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88,
- 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x70, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x73,
- 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54,
- 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x55, 0x53,
- 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x43,
- 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45,
- 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54, 0x5f, 0x41, 0x50, 0x50, 0x45, 0x4e,
- 0x44, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52,
- 0x5f, 0x41, 0x50, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74,
- 0x72, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x07, 0x0a, 0x05,
- 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa0, 0x01, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
- 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0a,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
- 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
- 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69,
- 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69,
- 0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x61, 0x74, 0x61, 0x73,
- 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x22, 0x7b, 0x0a, 0x16, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61,
- 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0e, 0x64, 0x61,
- 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
- 0x75, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x64,
- 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x73, 0x0a,
- 0x1c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44,
- 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a,
- 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x6b, 0x65,
- 0x79, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x79,
- 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0a, 0x74, 0x6f, 0x74,
- 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6b,
- 0x65, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74,
- 0x65, 0x73, 0x22, 0xc5, 0x01, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69,
- 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x04, 0x68, 0x6f, 0x70,
- 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x48, 0x6f, 0x70, 0x73, 0x52, 0x04, 0x68,
- 0x6f, 0x70, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x64, 0x61, 0x74, 0x61,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x64, 0x61, 0x74,
- 0x61, 0x12, 0x24, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
- 0x6e, 0x4b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
- 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x6f,
- 0x6e, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
- 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
- 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x52, 0x0a, 0x13, 0x43, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
- 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65,
- 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52,
- 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x43,
- 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x48, 0x6f, 0x70,
- 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79,
- 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c,
- 0x6f, 0x61, 0x64, 0x22, 0x5b, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74,
- 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
- 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0a,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
- 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x22, 0xa3, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
- 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
- 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0a, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48,
- 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
- 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52,
- 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e,
- 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e,
- 0x67, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f,
- 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x57, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x78, 0x70,
- 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x29, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x74,
- 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0d, 0x6d, 0x61, 0x78,
- 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a,
- 0x0e, 0x5f, 0x6d, 0x61, 0x78, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x22,
- 0x1b, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x0a,
- 0x11, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
- 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x65, 0x73,
- 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x64,
- 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44, 0x65,
- 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08,
- 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49,
- 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10,
- 0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0xac,
- 0x05, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
+ 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01,
+ 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x68, 0x6f,
+ 0x73, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x0f,
+ 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12,
+ 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x64,
+ 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x12, 0x2d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41,
+ 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22,
+ 0x23, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f,
+ 0x55, 0x54, 0x10, 0x01, 0x22, 0x9c, 0x02, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
+ 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e,
+ 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x06,
+ 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06,
+ 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64,
+ 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07, 0x61, 0x64,
+ 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01,
+ 0x01, 0x22, 0x50, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72,
+ 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c,
+ 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56,
+ 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a,
+ 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56,
+ 0x33, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70,
+ 0x6f, 0x72, 0x74, 0x22, 0x66, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69,
+ 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+ 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12,
+ 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc0, 0x07, 0x0a, 0x15,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x06, 0x62,
0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62,
0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74,
0x31, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74,
- 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
- 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
- 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
- 0x73, 0x68, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x0c, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
- 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20,
- 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e,
- 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c,
- 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
- 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69,
- 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78,
- 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x06, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88,
- 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79,
- 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52,
- 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65,
- 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
- 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10,
- 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a,
- 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
- 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72,
- 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x22, 0xcb, 0x02,
+ 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x06, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
+ 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72,
+ 0x65, 0x73, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e,
+ 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x04, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69,
+ 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61,
+ 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x06, 0x70,
+ 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65,
+ 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x07, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61,
+ 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08,
+ 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x49,
+ 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
+ 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75,
+ 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75,
+ 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x38, 0x0a, 0x13, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58,
+ 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49,
+ 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61,
+ 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11,
+ 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
+ 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
+ 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e,
+ 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x48,
+ 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50,
+ 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64,
+ 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xd8, 0x02, 0x0a, 0x10, 0x44, 0x61, 0x74,
+ 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a,
+ 0x03, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x68, 0x65,
+ 0x78, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
+ 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x01, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x05,
+ 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x73, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x22, 0x70, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54, 0x5f,
+ 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x55, 0x53, 0x54,
+ 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x52,
+ 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10,
+ 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54, 0x5f, 0x41, 0x50, 0x50, 0x45, 0x4e, 0x44,
+ 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x5f,
+ 0x41, 0x50, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x04, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78,
+ 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65,
+ 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0x22, 0xa0, 0x01, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52,
+ 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x15,
+ 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x03, 0x68,
+ 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88,
+ 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52,
+ 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f,
+ 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x29, 0x0a, 0x15, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x22, 0x63, 0x0a, 0x16, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0e, 0x64,
+ 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
+ 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
+ 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x51, 0x0a, 0x1c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
+ 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61,
+ 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74,
+ 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xc5, 0x01, 0x0a, 0x12, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x28, 0x0a, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
+ 0x48, 0x6f, 0x70, 0x73, 0x52, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x73,
+ 0x73, 0x6f, 0x63, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x61,
+ 0x73, 0x73, 0x6f, 0x63, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
+ 0x0a, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x12, 0x22,
+ 0x0a, 0x0a, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b,
+ 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a,
+ 0x65, 0x22, 0x52, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f,
+ 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x25,
+ 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73,
+ 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65,
+ 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x43, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f,
+ 0x6e, 0x69, 0x6f, 0x6e, 0x48, 0x6f, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b,
+ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
+ 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x5b, 0x0a, 0x13, 0x44, 0x65,
+ 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20,
+ 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x64,
+ 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x01, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
+ 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06,
+ 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
+ 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68,
+ 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xcf, 0x01,
+ 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x65,
+ 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08,
+ 0x64, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44,
+ 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
+ 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50,
+ 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44,
+ 0x10, 0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x22,
+ 0xa8, 0x07, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48,
+ 0x61, 0x73, 0x68, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x65, 0x6c,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
+ 0x5f, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72,
+ 0x65, 0x73, 0x41, 0x74, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c,
+ 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f,
+ 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0f, 0x69, 0x6e,
+ 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x07, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
+ 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e,
+ 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x09, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69,
+ 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61,
+ 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x06, 0x70,
+ 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65,
+ 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04,
+ 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45,
+ 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x02, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f,
+ 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10,
+ 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
+ 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
+ 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
+ 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65,
+ 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61,
+ 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x17, 0x44,
+ 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6f, 0x72,
+ 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63,
+ 0x65, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6f, 0x72,
+ 0x63, 0x65, 0x22, 0x7e, 0x0a, 0x18, 0x44, 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16,
+ 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
+ 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x12,
+ 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78,
+ 0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72,
+ 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x30, 0x0a,
+ 0x18, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65,
+ 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75,
+ 0x62, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x22,
+ 0x2e, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x73, 0x6d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x73, 0x6d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22,
+ 0x90, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65,
+ 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65,
+ 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x88, 0x01, 0x01, 0x22, 0x31, 0x0a, 0x0d, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52,
+ 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52,
+ 0x59, 0x5f, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f,
+ 0x47, 0x52, 0x45, 0x53, 0x53, 0x10, 0x00, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73, 0x75,
+ 0x6c, 0x74, 0x22, 0x29, 0x0a, 0x15, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73,
+ 0x63, 0x62, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x63, 0x62, 0x22, 0x2e, 0x0a,
+ 0x16, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x22, 0x81, 0x03,
0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6e, 0x79, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d,
- 0x73, 0x61, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x06, 0x65,
- 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x65,
- 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c,
+ 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c,
0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x61, 0x6c,
0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69,
+ 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69,
0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01,
- 0x12, 0x27, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79,
- 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61,
- 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78,
- 0x70, 0x69, 0x72, 0x79, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x64,
- 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0xa6, 0x04, 0x0a, 0x0f,
- 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 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, 0x25, 0x0a, 0x0e, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65,
- 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74,
- 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x43,
- 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 0x66,
- 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x03, 0x52, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x61,
- 0x64, 0x65, 0x6e, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x6e, 0x75, 0x73,
- 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x14, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64,
- 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
- 0x70, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0a, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x4d, 0x70, 0x70, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x13, 0x0a, 0x11, 0x5f,
- 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79,
- 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66,
- 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
- 0x5f, 0x64, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x6e,
- 0x75, 0x73, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
- 0x5f, 0x6d, 0x70, 0x70, 0x22, 0x28, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61,
+ 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01,
+ 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04,
+ 0x48, 0x02, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a,
+ 0x15, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x65, 0x78,
+ 0x70, 0x6f, 0x73, 0x65, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f,
+ 0x6e, 0x6c, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0c, 0x64, 0x65, 0x73,
+ 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72,
+ 0x41, 0x6e, 0x79, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x42,
+ 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x07, 0x0a, 0x05,
+ 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
+ 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c,
+ 0x79, 0x22, 0xa6, 0x04, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 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, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72,
+ 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72,
+ 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70,
+ 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x00, 0x52, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x70, 0x61, 0x63,
+ 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x01, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x64, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
+ 0x52, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64,
+ 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x18, 0x08,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x14, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x50,
+ 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x24, 0x0a, 0x0b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x70, 0x70, 0x18, 0x09,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d,
+ 0x70, 0x70, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0c,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x70, 0x61,
+ 0x63, 0x69, 0x74, 0x79, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x42, 0x19, 0x0a,
+ 0x17, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
+ 0x65, 0x5f, 0x75, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x70, 0x70, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xa0, 0x02, 0x0a, 0x15, 0x49,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x69,
+ 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x69,
+ 0x73, 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f,
+ 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0e,
+ 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01,
+ 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55,
+ 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72,
+ 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61,
+ 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x22, 0xbd, 0x01,
+ 0x0a, 0x16, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x72,
+ 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
+ 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3b, 0x0a,
+ 0x1c, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
+ 0x09, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x22, 0xc4, 0x01, 0x0a, 0x1d, 0x44,
+ 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09,
+ 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
+ 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
+ 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65,
+ 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x22, 0x82, 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x20, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c,
+ 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76,
+ 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76,
+ 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x70, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0xc9, 0x01, 0x0a, 0x22, 0x4c, 0x69, 0x73,
+ 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
+ 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12,
+ 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06,
+ 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63,
+ 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75,
+ 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
+ 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75,
+ 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12,
+ 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
+ 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x22, 0x28, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61,
0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x52,
0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52,
@@ -19446,633 +35599,299 @@ var file_node_proto_rawDesc = []byte{
0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f,
- 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72,
- 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
- 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x05, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e,
- 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52,
- 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
- 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61,
- 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52,
- 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x09, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x0a, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x50,
- 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
- 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
- 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0b, 0x52,
- 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0c, 0x52, 0x0f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01,
- 0x22, 0x3f, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
- 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a,
- 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41,
- 0x49, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10,
- 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
- 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61,
- 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65,
- 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
- 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64,
- 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65,
- 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
- 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64,
- 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x6d,
- 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f,
- 0x69, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x00, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
- 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06,
- 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78,
- 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xff, 0x03,
- 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x09, 0x66, 0x69, 0x72, 0x73,
- 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74,
- 0x5f, 0x68, 0x6f, 0x70, 0x52, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x48, 0x6f, 0x70, 0x12, 0x21,
- 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73,
- 0x68, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e,
- 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x05,
- 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x72,
- 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01,
- 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a,
- 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
- 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05,
- 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88,
- 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0b, 0x20,
- 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01,
- 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x31, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65,
- 0x71, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x22,
- 0x89, 0x06, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
- 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12,
- 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 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, 0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69,
- 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f,
- 0x6e, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65,
- 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04,
- 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x09, 0x48, 0x03, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
- 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x06, 0x62, 0x6f,
- 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
- 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x0c, 0x75,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x2e,
- 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x08, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d,
- 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x2c, 0x0a,
- 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a,
- 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0e, 0x0a,
- 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a,
- 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a,
- 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74,
- 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x09, 0x0a,
- 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42,
- 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x68, 0x0a, 0x12, 0x53,
- 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x68, 0x6f,
- 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69,
- 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
- 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
- 0x64, 0x65, 0x6c, 0x61, 0x79, 0x22, 0xd2, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65,
- 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
- 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88,
- 0x01, 0x01, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e,
- 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48,
- 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05,
- 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61,
- 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
- 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19,
- 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52,
- 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22, 0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73,
- 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
- 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08,
- 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41,
- 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0x2d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65,
- 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b, 0x0a, 0x07, 0x43,
- 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41,
- 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
- 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73,
- 0x68, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08, 0x0a, 0x06,
- 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
- 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69,
- 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73,
- 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52,
- 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x8b, 0x07, 0x0a, 0x14, 0x4c, 0x69,
- 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07,
- 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
- 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
- 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
- 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
- 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65,
- 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52,
- 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
- 0x12, 0x4c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x34, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70,
- 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31,
- 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x48, 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19,
- 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52,
- 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x31, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x06, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64,
- 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50,
- 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x65, 0x72,
- 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0a,
- 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22,
- 0x43, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a,
- 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41,
- 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45,
- 0x54, 0x45, 0x10, 0x02, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
- 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a,
- 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x72, 0x72,
- 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x22, 0x19, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x22, 0x61, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45,
- 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73,
- 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xbf, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
- 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61,
- 0x77, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x61, 0x77, 0x74, 0x78,
- 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08,
- 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
- 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
- 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
- 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61,
- 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x06, 0x69, 0x6e, 0x70,
- 0x75, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x0a,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73,
- 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07,
- 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x22, 0x6a, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73,
- 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a,
- 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69,
- 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x63, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e,
- 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
- 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62,
- 0x4b, 0x65, 0x79, 0x22, 0xdc, 0x04, 0x0a, 0x0a, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a,
- 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05,
- 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x72, 0x69, 0x73, 0x6b,
- 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x48, 0x02, 0x52, 0x0a,
- 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a,
- 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x01, 0x48, 0x03, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65,
- 0x72, 0x63, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72,
- 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x08, 0x72,
- 0x65, 0x74, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x61,
- 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x08,
- 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x09, 0x65,
- 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x09, 0x65,
- 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c,
- 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65,
- 0x71, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64,
- 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65,
- 0x12, 0x28, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08, 0x52,
- 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
- 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
- 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d,
- 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0c, 0x0a, 0x0a,
- 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d,
- 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x65, 0x6d,
- 0x70, 0x74, 0x66, 0x65, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66,
- 0x65, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x22, 0xf6, 0x03, 0x0a, 0x0b, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72,
- 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a,
- 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61,
- 0x74, 0x12, 0x41, 0x0a, 0x1a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72,
- 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x18,
- 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
- 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f,
- 0x6e, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x32, 0x0a, 0x09, 0x50, 0x61, 0x79, 0x53,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54,
- 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01,
- 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c,
- 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x1d, 0x0a, 0x1b,
- 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c,
- 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x10, 0x4c,
- 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x11, 0x4c,
- 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x29, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e,
- 0x6f, 0x64, 0x65, 0x73, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x9b, 0x02, 0x0a, 0x0e,
- 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x16,
- 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06,
- 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74,
- 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00,
- 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x88,
- 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x09, 0x48, 0x01, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a,
- 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x05,
- 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74,
- 0x75, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x08, 0x66, 0x65,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x09, 0x61, 0x64, 0x64,
- 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65,
- 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72,
- 0x65, 0x73, 0x73, 0x65, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74,
- 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69,
- 0x61, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09,
- 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x4c, 0x69,
- 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72,
- 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x55, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
- 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64,
- 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73,
- 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x54, 0x79,
- 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04,
- 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74,
- 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x22,
- 0x50, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65,
- 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07,
- 0x0a, 0x03, 0x44, 0x4e, 0x53, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10,
- 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54,
- 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10,
- 0x04, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7e, 0x0a,
- 0x15, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61,
- 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52,
- 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
- 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x42,
- 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0xf0, 0x06,
- 0x0a, 0x16, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x20,
- 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f,
+ 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72,
+ 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64,
+ 0x65, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49,
+ 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x48, 0x06, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65,
+ 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70,
+ 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06,
+ 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0e, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x08, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72,
+ 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0f,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61,
+ 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
+ 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x0c, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x50,
+ 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
+ 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
+ 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0c, 0x52,
+ 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01,
+ 0x22, 0x3f, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
+ 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a,
+ 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41,
+ 0x49, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10,
+ 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07,
+ 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70,
+ 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a,
+ 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
+ 0x67, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61,
+ 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e,
+ 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x4f,
+ 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f,
+ 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75,
+ 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22,
+ 0xb6, 0x04, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x09, 0x66, 0x69,
+ 0x72, 0x73, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72,
+ 0x73, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x52, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x48, 0x6f, 0x70,
0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48,
- 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e,
- 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a,
- 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00,
- 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
- 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
- 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06,
- 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x03, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78,
- 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x0c, 0x75, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a,
- 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x05, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12,
- 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
- 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x12, 0x61, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b,
- 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x4a, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57,
- 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69,
- 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x0c, 0x70, 0x61,
- 0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
- 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
- 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x2d, 0x0a,
- 0x14, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12,
- 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74,
- 0x31, 0x32, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
- 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a,
- 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61,
- 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x22, 0x67, 0x0a, 0x1b, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12,
- 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
- 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e,
- 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e,
- 0x75, 0x6d, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x09,
- 0x0a, 0x07, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x2a, 0x0a, 0x12, 0x57, 0x61, 0x69,
- 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0xe1, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a,
- 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61,
- 0x62, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
- 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57,
- 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
- 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04,
- 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52,
- 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b,
- 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
- 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48,
- 0x03, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88,
- 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x0c, 0x75, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09,
- 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48,
- 0x05, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42,
- 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
- 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x12, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88,
- 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20,
- 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x47, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e,
- 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
- 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75,
- 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75,
- 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72,
- 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x2a, 0x0a, 0x11, 0x57, 0x61, 0x69,
- 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08,
- 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49,
- 0x52, 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
- 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a,
- 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
- 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a,
- 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
- 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f,
- 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70,
- 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
- 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x64, 0x0a, 0x18, 0x57, 0x61, 0x69,
- 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74,
- 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b,
- 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01,
- 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f,
- 0x74, 0x78, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22,
- 0xb5, 0x01, 0x0a, 0x12, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
- 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d,
- 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x74, 0x69,
- 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74,
- 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74,
- 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
- 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
- 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x22, 0xbd, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74,
- 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f,
- 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x67, 0x72,
- 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61,
- 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
- 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
- 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
- 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63,
- 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48,
- 0x04, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88,
- 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f,
- 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x01, 0x48, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08,
+ 0x61, 0x73, 0x68, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25,
+ 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73,
+ 0x18, 0x05, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65,
+ 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12,
+ 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69,
+ 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
+ 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x06, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67,
+ 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
+ 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x89, 0x06, 0x0a, 0x11, 0x53, 0x65, 0x6e,
+ 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e,
+ 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 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, 0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e,
+ 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61,
- 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x06, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x31, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x06, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
- 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
- 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70,
- 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0a, 0x52,
- 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x88, 0x01, 0x01, 0x22, 0x21, 0x0a, 0x11, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70,
- 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50,
- 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f,
- 0x75, 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x02, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x05, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d,
+ 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18,
+ 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
+ 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0f, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e,
+ 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x22, 0x2c, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e,
+ 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e,
+ 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45,
+ 0x54, 0x45, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
- 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c,
- 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74,
- 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70,
- 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xa4, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x77, 0x61,
- 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x61, 0x64,
- 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64, 0x72,
- 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65,
- 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x22, 0x33, 0x0a, 0x12, 0x4e, 0x65, 0x77,
- 0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12,
- 0x0a, 0x0a, 0x06, 0x42, 0x45, 0x43, 0x48, 0x33, 0x32, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50,
- 0x32, 0x54, 0x52, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x42, 0x0e,
- 0x0a, 0x0c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5b,
- 0x0a, 0x0f, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x32, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x00, 0x52, 0x04, 0x70, 0x32, 0x74, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x65,
- 0x63, 0x68, 0x33, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x65,
- 0x63, 0x68, 0x33, 0x32, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x32, 0x74, 0x72,
- 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32, 0x22, 0xf9, 0x01, 0x0a, 0x0f,
- 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x12, 0x2f, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f,
- 0x72, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x88,
- 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
- 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x02, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23,
- 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74,
- 0x78, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x42,
- 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
- 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x22, 0x4a, 0x0a, 0x10, 0x57, 0x69, 0x74, 0x68, 0x64,
- 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74,
- 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74,
- 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12,
- 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
- 0x73, 0x62, 0x74, 0x22, 0xe7, 0x03, 0x0a, 0x0e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73,
- 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
+ 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
+ 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
+ 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
+ 0x6e, 0x64, 0x65, 0x78, 0x22, 0x68, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f,
+ 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61,
+ 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x22, 0xd2,
+ 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
+ 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
+ 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x06, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61,
+ 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73,
+ 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78,
+ 0x48, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
+ 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73,
+ 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88,
+ 0x01, 0x01, 0x22, 0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61,
+ 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44,
+ 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54,
+ 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22,
+ 0x2d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x49,
+ 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
+ 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69,
+ 0x6d, 0x69, 0x74, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70,
+ 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
+ 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x22, 0xc4, 0x07, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70,
+ 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67,
+ 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x72,
+ 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x4c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
+ 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
+ 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65,
0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0a, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b,
+ 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04,
+ 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18,
+ 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x65,
+ 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x06, 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28,
+ 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
+ 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70,
+ 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b,
+ 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
+ 0x22, 0x43, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
+ 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b,
+ 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46,
+ 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c,
+ 0x45, 0x54, 0x45, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65,
+ 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
+ 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d,
+ 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x22, 0x19, 0x0a, 0x17, 0x4c, 0x69, 0x73,
+ 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e,
+ 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x45, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61,
+ 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xbf, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74,
+ 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e,
+ 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05,
+ 0x72, 0x61, 0x77, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x61, 0x77,
+ 0x74, 0x78, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65,
+ 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a,
+ 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x09,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74,
+ 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x06, 0x69,
+ 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73,
+ 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61,
+ 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73,
+ 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x22, 0x6a, 0x0a, 0x22, 0x4c, 0x69, 0x73,
+ 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61,
+ 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12,
+ 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74,
+ 0x78, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71,
+ 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71,
+ 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
+ 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x14, 0x0a,
+ 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e,
+ 0x64, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62,
+ 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x5a, 0x0a, 0x11, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63,
+ 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65,
+ 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x01, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x06,
+ 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x22, 0x2c, 0x0a, 0x12, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22,
+ 0xa2, 0x05, 0x0a, 0x0a, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
+ 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01,
0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65,
0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x66,
@@ -20084,13 +35903,390 @@ var file_node_proto_rawDesc = []byte{
0x2e, 0x0a, 0x09, 0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
0x04, 0x52, 0x09, 0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12,
- 0x37, 0x0a, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68,
- 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65,
- 0x68, 0x69, 0x6e, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x72,
- 0x61, 0x74, 0x6c, 0x76, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x54, 0x6c, 0x76, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x06, 0x52, 0x09, 0x65,
- 0x78, 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76, 0x73, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f,
+ 0x23, 0x0a, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x01, 0x48, 0x05, 0x52, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f,
+ 0x72, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x18,
+ 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x12, 0x28,
+ 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x06, 0x6d,
+ 0x61, 0x78, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52,
+ 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0d,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x08, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65,
+ 0x71, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x63,
+ 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a,
+ 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x48, 0x0a, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x10, 0x0a, 0x0e,
+ 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09,
+ 0x5f, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78,
+ 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x69, 0x73, 0x6b,
+ 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65,
+ 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65,
+ 0x71, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x22, 0xf6, 0x03, 0x0a, 0x0b, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12,
+ 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74,
+ 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c,
+ 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x41, 0x0a, 0x1a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69,
+ 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x32, 0x0a, 0x09, 0x50, 0x61,
+ 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c,
+ 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47,
+ 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e,
+ 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x1d,
+ 0x0a, 0x1b, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a,
+ 0x10, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
+ 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a,
+ 0x11, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65,
+ 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x84, 0x03,
+ 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73,
+ 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74,
+ 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
+ 0x48, 0x00, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02,
+ 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65,
+ 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x08,
+ 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x09, 0x61,
+ 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f,
+ 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64,
+ 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x10, 0x6f, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x77, 0x69, 0x6c, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65,
+ 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6c,
+ 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x48, 0x04, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x57, 0x69, 0x6c, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
+ 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x6c,
+ 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6c, 0x6c, 0x5f,
+ 0x66, 0x75, 0x6e, 0x64, 0x22, 0xef, 0x02, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64,
+ 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69,
+ 0x6c, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x12, 0x3a, 0x0a, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65,
+ 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65,
+ 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x65,
+ 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x66,
+ 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x12, 0x45, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61,
+ 0x78, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x56, 0x0a, 0x28, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f,
+ 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61,
+ 0x6e, 0x64, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x24, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72,
+ 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68,
+ 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61,
+ 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63,
+ 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x6e,
+ 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
+ 0x65, 0x73, 0x12, 0x55, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
+ 0x73, 0x65, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64,
+ 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52,
+ 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a,
+ 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
+ 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x22, 0x50, 0x0a, 0x1b,
+ 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64,
+ 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x44,
+ 0x4e, 0x53, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08,
+ 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56,
+ 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7e, 0x0a, 0x15, 0x57, 0x61,
+ 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61, 0x79, 0x5f, 0x69,
+ 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x61,
+ 0x73, 0x74, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
+ 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01,
+ 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e,
+ 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0xf0, 0x06, 0x0a, 0x16, 0x57,
+ 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a,
+ 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68,
+ 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x30, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61,
+ 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78,
+ 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
+ 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e,
+ 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x08, 0x70, 0x61, 0x79,
+ 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63,
+ 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07,
+ 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52,
+ 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50,
+ 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x07, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
+ 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x4a,
+ 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
+ 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74,
+ 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f,
+ 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f,
+ 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x2d, 0x0a, 0x14, 0x57, 0x61,
+ 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07,
+ 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42,
+ 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a,
+ 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
+ 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f,
+ 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70,
+ 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x49, 0x0a,
+ 0x1b, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50,
+ 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64,
+ 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x2a, 0x0a, 0x12, 0x57, 0x61, 0x69, 0x74,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14,
+ 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x22, 0xe1, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
+ 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65,
+ 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69,
+ 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x08, 0x70, 0x61,
+ 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
+ 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a,
+ 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05,
+ 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18,
+ 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x07, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64,
+ 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12,
+ 0x47, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74,
+ 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69,
+ 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74,
+ 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74,
+ 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x2a, 0x0a, 0x11, 0x57, 0x61, 0x69, 0x74,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a,
+ 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52,
+ 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70,
+ 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a,
+ 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
+ 0x67, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
+ 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f,
+ 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x46, 0x0a, 0x18, 0x57, 0x61, 0x69, 0x74,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70,
+ 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e,
+ 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d,
+ 0x22, 0xb5, 0x01, 0x0a, 0x12, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f,
+ 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65,
+ 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69,
+ 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
+ 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x22, 0xbd, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69,
+ 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64,
+ 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x00, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
+ 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e,
+ 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69,
+ 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
+ 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65,
+ 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x04, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b,
+ 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05,
+ 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x06, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65,
+ 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70,
+ 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x01, 0x48, 0x08,
+ 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
+ 0x78, 0x88, 0x01, 0x01, 0x22, 0x21, 0x0a, 0x11, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64,
+ 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d,
+ 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75,
+ 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13,
+ 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
+ 0x61, 0x67, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
+ 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xa4, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x77,
+ 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x61,
+ 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64,
+ 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72,
+ 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x22, 0x33, 0x0a, 0x12, 0x4e, 0x65,
+ 0x77, 0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65,
+ 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x45, 0x43, 0x48, 0x33, 0x32, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03,
+ 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x54, 0x52, 0x10, 0x03, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x22,
+ 0x5b, 0x0a, 0x0f, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32, 0x88, 0x01, 0x01, 0x12,
+ 0x17, 0x0a, 0x04, 0x70, 0x32, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
+ 0x04, 0x70, 0x32, 0x74, 0x72, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x65, 0x63,
+ 0x68, 0x33, 0x32, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x32, 0x74, 0x72, 0x22, 0xe8, 0x01, 0x0a,
+ 0x0f, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x4f, 0x72, 0x41, 0x6c, 0x6c, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x1d,
+ 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x00, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a,
+ 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78,
+ 0x6f, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42,
+ 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0x4a, 0x0a, 0x10, 0x57, 0x69, 0x74, 0x68, 0x64,
+ 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74,
+ 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74,
+ 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12,
+ 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
+ 0x73, 0x62, 0x74, 0x22, 0xe7, 0x03, 0x0a, 0x0e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x0d, 0x6d, 0x61,
+ 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20,
+ 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x02, 0x52, 0x08, 0x72, 0x65, 0x74, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01,
+ 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01,
+ 0x01, 0x12, 0x2e, 0x0a, 0x09, 0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x04, 0x52, 0x09, 0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x88, 0x01,
+ 0x01, 0x12, 0x37, 0x0a, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18,
+ 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74,
+ 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x72, 0x6f, 0x75,
+ 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x09, 0x65, 0x78,
+ 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x6c, 0x76, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x06, 0x52,
+ 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a,
+ 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f,
0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65,
0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, 0x72,
0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c,
@@ -20195,7 +36391,7 @@ var file_node_proto_rawDesc = []byte{
0x0f, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x70, 0x73, 0x62, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22,
0x36, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
@@ -20208,322 +36404,324 @@ var file_node_proto_rawDesc = []byte{
0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f,
0x0a, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x73, 0x62, 0x74, 0x22,
- 0x98, 0x04, 0x0a, 0x0f, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x26, 0x0a, 0x07, 0x66, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x72, 0x65,
- 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a,
+ 0x9d, 0x04, 0x0a, 0x0f, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12,
+ 0x26, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x07,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74,
+ 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74,
+ 0x61, 0x72, 0x74, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78,
+ 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f,
+ 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x1d,
+ 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a,
0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x02, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31,
+ 0x01, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31,
0x0a, 0x12, 0x6d, 0x69, 0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x10, 0x6d, 0x69,
+ 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x10, 0x6d, 0x69,
0x6e, 0x57, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x63,
- 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x04, 0x52, 0x0e, 0x65,
- 0x78, 0x63, 0x65, 0x73, 0x73, 0x41, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x63, 0x68,
- 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
- 0x48, 0x05, 0x52, 0x14, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x63, 0x68, 0x6f,
- 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74,
- 0x69, 0x6d, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e,
- 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x65,
- 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x42,
- 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x63, 0x68,
- 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xab, 0x02, 0x0a, 0x10, 0x55,
- 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
- 0x73, 0x62, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x70,
- 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x66, 0x65, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x73, 0x74,
- 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x77, 0x65, 0x69,
- 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x73, 0x74, 0x69, 0x6d,
- 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12,
- 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x28, 0x0a,
- 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x75,
- 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72,
- 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67,
- 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xa9, 0x01, 0x0a, 0x14, 0x55, 0x74, 0x78,
- 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
- 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x73,
- 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42,
- 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x26, 0x0a, 0x10, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72,
- 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x11,
- 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64,
- 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
- 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x10, 0x54, 0x78, 0x70, 0x72, 0x65,
- 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x6f,
- 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x44, 0x65, 0x73, 0x63, 0x52, 0x07, 0x6f,
- 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
- 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88,
- 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74,
- 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x22,
- 0x5c, 0x0a, 0x11, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x18,
+ 0x08, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x64, 0x6f, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73,
+ 0x5f, 0x61, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08,
+ 0x48, 0x04, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x41, 0x73, 0x43, 0x68, 0x61, 0x6e,
+ 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18,
+ 0x0a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x05, 0x52, 0x14, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
+ 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x0b, 0x0a, 0x09,
+ 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x69,
+ 0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74,
+ 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x63, 0x68,
+ 0x61, 0x6e, 0x67, 0x65, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22,
+ 0xab, 0x02, 0x0a, 0x10, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x69,
- 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x75,
- 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69,
- 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x23, 0x0a,
- 0x0d, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12,
- 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78,
- 0x69, 0x64, 0x22, 0x48, 0x0a, 0x0e, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x35, 0x0a, 0x17,
- 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03,
- 0x5f, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x39, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0x84, 0x21, 0x0a, 0x18, 0x4c,
- 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72,
- 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52,
- 0x0d, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x88, 0x01,
- 0x01, 0x12, 0x56, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x3b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x02, 0x52,
- 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x63, 0x72,
- 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x03, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01,
- 0x01, 0x12, 0x43, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x37, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
- 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x48, 0x04, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
- 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x36, 0x20, 0x01, 0x28,
- 0x08, 0x48, 0x05, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69,
- 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6c, 0x6f, 0x73, 0x74, 0x5f,
- 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x39, 0x20, 0x01, 0x28, 0x08, 0x48, 0x06, 0x52, 0x09, 0x6c,
- 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07, 0x66,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x48, 0x07, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x19, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73,
- 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
- 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0a,
- 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26,
- 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0a,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54,
- 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x0c,
- 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88,
- 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0d, 0x52, 0x0e, 0x69,
- 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x26, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
- 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0e, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x46, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74,
- 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0f,
- 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x27, 0x0a, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65,
- 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x10, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46,
- 0x65, 0x65, 0x53, 0x74, 0x65, 0x70, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x08, 0x69, 0x6e, 0x66,
- 0x6c, 0x69, 0x67, 0x68, 0x74, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c,
+ 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72,
+ 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x0c, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x34,
+ 0x0a, 0x16, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6e, 0x61,
+ 0x6c, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14,
+ 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x57, 0x65,
+ 0x69, 0x67, 0x68, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x73,
+ 0x61, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74,
+ 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x61,
+ 0x6e, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x0c,
+ 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62,
+ 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xa9, 0x01,
+ 0x0a, 0x14, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f,
+ 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x12, 0x21,
+ 0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2a, 0x0a,
+ 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f,
+ 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x26, 0x0a, 0x10, 0x54, 0x78, 0x64,
+ 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a,
+ 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69,
+ 0x64, 0x22, 0x48, 0x0a, 0x11, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e,
+ 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x75, 0x6e, 0x73,
+ 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x10,
+ 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48,
+ 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
+ 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01,
+ 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05,
+ 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f,
+ 0x73, 0x12, 0x29, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x44,
+ 0x65, 0x73, 0x63, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e,
+ 0x63, 0x6f, 0x6e, 0x66, 0x22, 0x5c, 0x0a, 0x11, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x1f, 0x0a,
+ 0x0b, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x0a, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x12, 0x12,
+ 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78,
+ 0x69, 0x64, 0x22, 0x23, 0x0a, 0x0d, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x0e, 0x54, 0x78, 0x73, 0x65, 0x6e,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x0e, 0x0a,
+ 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a,
+ 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69,
+ 0x64, 0x22, 0x35, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01,
+ 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74,
+ 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22,
+ 0xfa, 0x21, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07,
+ 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70,
+ 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x70,
+ 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x51, 0x0a, 0x05,
+ 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x63, 0x6c,
0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67,
- 0x68, 0x74, 0x52, 0x08, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x08,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x11,
- 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07,
- 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x48, 0x12, 0x52,
- 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x06, 0x6f,
- 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x13, 0x52,
- 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6c,
- 0x6f, 0x73, 0x65, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x14, 0x52, 0x06,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07, 0x66, 0x75, 0x6e,
- 0x64, 0x69, 0x6e, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x48, 0x15, 0x52, 0x07, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x2e,
- 0x0a, 0x0a, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x16, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35,
- 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x17, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f,
- 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x18, 0x52, 0x0b, 0x6d, 0x61,
- 0x78, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a,
- 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x19, 0x52,
- 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a,
- 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1b,
+ 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
+ 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
+ 0x26, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68,
+ 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x01,
+ 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
+ 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6f,
+ 0x77, 0x6e, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x03, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x09, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x05, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75,
+ 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x0d, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2c,
+ 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69,
+ 0x61, 0x6c, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c,
+ 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x08, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x0b, 0x6e, 0x65,
+ 0x78, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d,
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x0f, 0x20,
+ 0x01, 0x28, 0x0d, 0x48, 0x0a, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46, 0x65, 0x65, 0x53, 0x74,
+ 0x65, 0x70, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x08, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68,
+ 0x74, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x08,
+ 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73,
+ 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x07, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76,
+ 0x61, 0x74, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0c, 0x52, 0x07, 0x70, 0x72, 0x69,
+ 0x76, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65,
+ 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65,
+ 0x72, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53,
+ 0x69, 0x64, 0x65, 0x48, 0x0d, 0x52, 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01,
+ 0x12, 0x43, 0x0a, 0x07, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x0e, 0x52, 0x07, 0x66, 0x75, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x0a, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0f, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f,
+ 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x10, 0x52, 0x0b, 0x6d, 0x69,
+ 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x0e,
+ 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x19,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x1a, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f,
- 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
- 0x68, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1b, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50,
- 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69,
- 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x64, 0x75, 0x73, 0x74,
- 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28,
+ 0x74, 0x48, 0x11, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x12, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x13, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42,
+ 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65,
+ 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d,
+ 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x14, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e,
+ 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x38, 0x0a, 0x0f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x15, 0x52, 0x0d, 0x64, 0x75, 0x73, 0x74, 0x4c, 0x69, 0x6d,
+ 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x16, 0x6d, 0x61, 0x78,
+ 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x16, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74,
+ 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x3e, 0x0a, 0x12, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x17, 0x52, 0x10, 0x74, 0x68, 0x65, 0x69,
+ 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x18, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x52, 0x65, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0e, 0x73,
+ 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x21, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x48, 0x19, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62,
+ 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1a, 0x52, 0x0e, 0x72, 0x65,
+ 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x41, 0x0a, 0x14, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1b, 0x52, 0x11, 0x6d, 0x69,
+ 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74,
+ 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1c,
- 0x52, 0x0d, 0x64, 0x75, 0x73, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
- 0x01, 0x01, 0x12, 0x44, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f,
- 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1e, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x1d, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x49,
- 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x74, 0x68, 0x65, 0x69,
- 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1f,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x1e, 0x52, 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76,
- 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x72, 0x5f,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x20, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
- 0x1f, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c,
- 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x20, 0x52, 0x0d, 0x73, 0x70, 0x65,
- 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a,
- 0x0f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x21, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c,
- 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x6d, 0x69, 0x6e, 0x69,
- 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x22, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74,
- 0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x6d,
- 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
- 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x43, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63,
- 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x24, 0x52, 0x12,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x13, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x74,
- 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x26, 0x20, 0x01,
- 0x28, 0x0d, 0x48, 0x25, 0x52, 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c,
- 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x11, 0x6f, 0x75, 0x72,
- 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x27,
- 0x20, 0x01, 0x28, 0x0d, 0x48, 0x26, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c,
- 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x6d, 0x61, 0x78,
- 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18,
- 0x28, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x27, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65,
- 0x70, 0x74, 0x65, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x05,
- 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48,
- 0x28, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x29, 0x52, 0x11, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66,
- 0x66, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x69, 0x6e, 0x5f, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2d, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x2a,
- 0x52, 0x0d, 0x69, 0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88,
- 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
- 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x2e, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x2b, 0x52, 0x13, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46,
- 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x69,
- 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x2c, 0x52, 0x0f, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
- 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x6f, 0x75, 0x74,
+ 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74,
+ 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d,
+ 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x1d, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74,
+ 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x13,
+ 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65,
+ 0x6c, 0x61, 0x79, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1e, 0x52, 0x10, 0x74, 0x68, 0x65,
+ 0x69, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01,
+ 0x12, 0x2e, 0x0a, 0x11, 0x6f, 0x75, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f,
+ 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1f, 0x52, 0x0e, 0x6f,
+ 0x75, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01,
+ 0x12, 0x31, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64,
+ 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x20, 0x52, 0x10,
+ 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x29, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
+ 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x21, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88,
+ 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x2b, 0x20, 0x03,
+ 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e,
0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65,
- 0x64, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04, 0x48, 0x2d, 0x52, 0x12, 0x6f, 0x75, 0x74, 0x50, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01,
- 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x2e, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x4f, 0x66,
- 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16,
- 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c,
- 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x32, 0x20, 0x01, 0x28, 0x04, 0x48, 0x2f, 0x52, 0x14,
- 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69,
- 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x66,
- 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x33, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x48, 0x30, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61, 0x73, 0x74, 0x5f,
+ 0x64, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x22, 0x52, 0x11, 0x69, 0x6e, 0x50, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x38, 0x0a, 0x0f, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23, 0x52, 0x0d, 0x69, 0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72,
+ 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x69, 0x6e, 0x5f,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
+ 0x65, 0x64, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x24, 0x52, 0x13, 0x69, 0x6e, 0x50, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
+ 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x25, 0x52, 0x0f, 0x69, 0x6e,
+ 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x35, 0x0a, 0x14, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73,
+ 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04, 0x48, 0x26,
+ 0x52, 0x12, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66, 0x66,
+ 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x31, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x27,
+ 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x32, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x28, 0x52, 0x14, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3e,
+ 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x29, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x46, 0x75,
+ 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x38,
+ 0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x34, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63,
+ 0x73, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x73,
+ 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x2a, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01,
+ 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f,
+ 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2b, 0x52, 0x0f,
+ 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x88,
+ 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x37, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
+ 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x48, 0x2c, 0x52, 0x07, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61, 0x73, 0x74, 0x5f,
0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x18, 0x38, 0x20, 0x01, 0x28, 0x04, 0x48, 0x31, 0x52, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x53,
+ 0x6e, 0x18, 0x38, 0x20, 0x01, 0x28, 0x04, 0x48, 0x2d, 0x52, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x53,
0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88,
- 0x01, 0x01, 0x12, 0x38, 0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x34, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x48, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x27, 0x0a, 0x0d,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x35, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x32, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x41, 0x64,
- 0x64, 0x72, 0x88, 0x01, 0x01, 0x22, 0x80, 0x03, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
- 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x50, 0x45, 0x4e, 0x49,
- 0x4e, 0x47, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c,
- 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49,
- 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f,
- 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x4e,
- 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f,
- 0x57, 0x4e, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4c, 0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44,
- 0x5f, 0x53, 0x49, 0x47, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x04, 0x12, 0x15,
- 0x0a, 0x11, 0x43, 0x4c, 0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c,
- 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e,
- 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x4c, 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10, 0x06, 0x12, 0x16,
- 0x0a, 0x12, 0x46, 0x55, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x5f,
- 0x53, 0x45, 0x45, 0x4e, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49,
- 0x4e, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44,
- 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19,
- 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49,
- 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x1c, 0x0a, 0x18, 0x43,
- 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47,
- 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x43, 0x45, 0x10, 0x0b, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x55, 0x41,
- 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d,
- 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x55, 0x41, 0x4c, 0x4f,
- 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54,
- 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x0d, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x65,
- 0x72, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x74,
- 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78,
- 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x42, 0x14,
- 0x0a, 0x12, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69,
- 0x6d, 0x69, 0x74, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74,
- 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42,
+ 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65,
+ 0x18, 0x39, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2e, 0x52, 0x09, 0x6c, 0x6f, 0x73, 0x74, 0x53, 0x74,
+ 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61,
+ 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2f, 0x52,
+ 0x0d, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x88, 0x01,
+ 0x01, 0x12, 0x39, 0x0a, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x78, 0x5f, 0x66, 0x65, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x30, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74,
+ 0x54, 0x78, 0x46, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09,
+ 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x31, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22,
+ 0x80, 0x03, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74,
+ 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x50, 0x45, 0x4e, 0x49, 0x4e, 0x47, 0x44, 0x10, 0x00, 0x12,
+ 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49,
+ 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a,
+ 0x0f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c,
+ 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x53,
+ 0x48, 0x55, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x18,
+ 0x0a, 0x14, 0x43, 0x4c, 0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x53, 0x49, 0x47, 0x45, 0x58,
+ 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4c, 0x4f, 0x53,
+ 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12,
+ 0x17, 0x0a, 0x13, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x4c,
+ 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x55, 0x4e, 0x44,
+ 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x53, 0x45, 0x45, 0x4e, 0x10, 0x07,
+ 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x08, 0x12, 0x17, 0x0a,
+ 0x13, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f,
+ 0x49, 0x4e, 0x49, 0x54, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50,
+ 0x45, 0x4e, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43,
+ 0x4b, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c,
+ 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x43,
+ 0x45, 0x10, 0x0b, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44,
+ 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10,
+ 0x0c, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f,
+ 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59,
+ 0x10, 0x0d, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74,
+ 0x78, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42,
0x08, 0x0a, 0x06, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68,
0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0d,
0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0f, 0x0a,
@@ -20535,1126 +36733,1510 @@ var file_node_proto_rawDesc = []byte{
0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6e, 0x65, 0x78, 0x74,
0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c,
0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61,
- 0x74, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x42, 0x09, 0x0a,
- 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x75, 0x6e,
- 0x64, 0x69, 0x6e, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75,
- 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74,
- 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74, 0x6f,
- 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65,
- 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66,
- 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
- 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x64,
- 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19,
- 0x0a, 0x17, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c,
- 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x74, 0x68,
- 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x61,
- 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, 0x65, 0x63,
- 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15,
- 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
- 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
- 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63,
- 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x74, 0x68,
- 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61,
- 0x79, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c,
- 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x61, 0x78, 0x5f,
- 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42, 0x08,
- 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e, 0x5f,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64,
- 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42, 0x14,
- 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x42, 0x13, 0x0a,
- 0x11, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73,
- 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42, 0x15, 0x0a,
- 0x13, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74,
- 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42,
- 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64,
- 0x72, 0x22, 0xc5, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
+ 0x74, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x42, 0x0a, 0x0a,
+ 0x08, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74, 0x6f,
+ 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6d, 0x69, 0x6e,
+ 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
+ 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a,
+ 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
+ 0x1e, 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
+ 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x42,
+ 0x12, 0x0a, 0x10, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74, 0x61,
+ 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x15,
+ 0x0a, 0x13, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x73,
+ 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a,
+ 0x10, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74,
+ 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d,
+ 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
+ 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16,
+ 0x0a, 0x14, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66,
+ 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x74,
+ 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x15, 0x0a, 0x13,
+ 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74,
+ 0x6c, 0x63, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x16, 0x0a,
+ 0x14, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x65, 0x64, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66,
+ 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x69, 0x6e,
+ 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c,
+ 0x6c, 0x65, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69,
+ 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6f, 0x75,
+ 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
+ 0x65, 0x64, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69,
+ 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x14, 0x0a, 0x12, 0x5f,
+ 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
+ 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x42, 0x19, 0x0a,
+ 0x17, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x73,
+ 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x65, 0x65, 0x73,
+ 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6c, 0x61,
+ 0x73, 0x74, 0x5f, 0x74, 0x78, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb6, 0x01, 0x0a,
+ 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73,
+ 0x12, 0x3f, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
- 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x48,
- 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x06, 0x72,
- 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x64, 0x61, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x00, 0x52,
+ 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0xb5, 0x02, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
+ 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x37,
+ 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69,
+ 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f,
+ 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x74,
+ 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x0d,
+ 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a,
+ 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61,
+ 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
+ 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x22, 0xb6, 0x02,
+ 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09,
- 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0xc2, 0x03, 0x0a, 0x24, 0x4c, 0x69,
- 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63,
- 0x61, 0x6c, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
- 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x68, 0x74,
- 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
+ 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63,
- 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f,
- 0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65,
- 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x63, 0x6c, 0x74,
- 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12,
- 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f,
- 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f,
- 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x19, 0x66, 0x65,
- 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c,
- 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68,
- 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75,
- 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f,
- 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x42, 0x10, 0x0a, 0x0e,
- 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e,
- 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x22, 0xc3,
- 0x03, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63,
- 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x48, 0x00, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d,
- 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d,
- 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01,
- 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70,
- 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x02, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c,
- 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61,
+ 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6c, 0x74,
+ 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79,
+ 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0b, 0x66, 0x65, 0x65,
- 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66,
- 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
- 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x04, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01,
- 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
- 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12,
- 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c,
- 0x74, 0x61, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f,
- 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f,
- 0x6e, 0x74, 0x68, 0x73, 0x22, 0x6b, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x88,
- 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x01, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a,
- 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b,
- 0x62, 0x22, 0xe2, 0x03, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x6e,
- 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b,
- 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2a,
- 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x66, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x07, 0x66,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x74, 0x6f, 0x74,
- 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x48, 0x03, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x6c,
- 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12,
- 0x48, 0x04, 0x52, 0x0c, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0e, 0x6f, 0x75,
- 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
- 0x26, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68,
- 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x66, 0x75, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e,
- 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
- 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x74, 0x6f, 0x74, 0x61,
- 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10,
- 0x0a, 0x0e, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63,
- 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x22, 0x99, 0x03, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70,
- 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x70, 0x75,
- 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a,
- 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a,
- 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x75, 0x6e,
- 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x72, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x02, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x64, 0x73,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x70,
- 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0b, 0x66,
- 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a,
- 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x04, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x63, 0x76, 0x64, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66, 0x75,
- 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10,
- 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73,
- 0x61, 0x74, 0x22, 0x6c, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c,
- 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b,
- 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
- 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f,
- 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x22, 0xaf, 0x04, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c,
- 0x63, 0x73, 0x12, 0x6c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61,
+ 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72,
+ 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69,
+ 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65,
+ 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c,
+ 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x22, 0x4d, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x48, 0x00, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
- 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x02,
- 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69,
- 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69,
- 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
- 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0b, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a,
- 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x18, 0x06,
- 0x20, 0x01, 0x28, 0x08, 0x48, 0x05, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x54, 0x72, 0x69,
- 0x6d, 0x6d, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x74, 0x6c, 0x63, 0x53, 0x74,
- 0x61, 0x74, 0x65, 0x48, 0x07, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x22,
- 0x39, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73,
- 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10,
- 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64,
- 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x42,
- 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
- 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
- 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x42, 0x09, 0x0a,
- 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61,
- 0x74, 0x65, 0x22, 0x37, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x6b, 0x0a, 0x1a, 0x4c,
- 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x63, 0x6c, 0x6f,
- 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73,
- 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xd4, 0x0c, 0x0a, 0x20, 0x4c, 0x69, 0x73,
- 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
- 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x0a,
- 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00,
- 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
- 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68,
- 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x61, 0x6c, 0x69,
- 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41,
- 0x6c, 0x69, 0x61, 0x73, 0x48, 0x02, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01,
- 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69,
- 0x64, 0x65, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6c,
- 0x6f, 0x73, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x03, 0x52, 0x06,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69,
- 0x76, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76,
- 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x63,
- 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
- 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x74,
- 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d,
- 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x74,
- 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
- 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68,
- 0x74, 0x6c, 0x63, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52,
- 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x12,
- 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18,
- 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78,
- 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75,
- 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x61,
- 0x73, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x65, 0x61, 0x73, 0x65,
- 0x64, 0x12, 0x43, 0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65,
- 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52,
- 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d,
- 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65,
- 0x52, 0x63, 0x76, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x13, 0x66,
- 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73,
- 0x61, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x11, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a,
- 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09,
- 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x10, 0x66, 0x69, 0x6e,
- 0x61, 0x6c, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x13, 0x20,
+ 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x65, 0x72,
+ 0x6b, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x12,
+ 0x14, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
+ 0x70, 0x65, 0x72, 0x6b, 0x62, 0x22, 0xed, 0x02, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
+ 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, 0x25, 0x0a,
+ 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75,
+ 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x39,
+ 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x6f, 0x75, 0x72,
+ 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63,
+ 0x68, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x6c, 0x69,
+ 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x48,
+ 0x01, 0x52, 0x0c, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88,
+ 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74,
+ 0x78, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe4, 0x02, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
+ 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x70, 0x75, 0x73,
+ 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x70,
+ 0x75, 0x73, 0x68, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x10,
+ 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x75,
+ 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x72, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x0d,
+ 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x52, 0x0d, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12,
- 0x30, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61,
- 0x74, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55, 0x73, 0x4d,
- 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d,
- 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x07, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d,
- 0x65, 0x6e, 0x74, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x18, 0x6c, 0x61,
- 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65,
- 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x15, 0x6c, 0x61, 0x73,
- 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x4d, 0x73,
- 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x72, 0x0a, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63,
- 0x61, 0x75, 0x73, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x51, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e,
+ 0x48, 0x01, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x63, 0x76,
+ 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x75, 0x73,
+ 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65,
+ 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66,
+ 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x6c, 0x0a, 0x1d,
+ 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a,
+ 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05,
+ 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0xc6, 0x03, 0x0a, 0x1d, 0x4c,
+ 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x67, 0x0a, 0x09,
+ 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x49, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74,
+ 0x6c, 0x63, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63,
+ 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x28,
+ 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x54, 0x72,
+ 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x74, 0x6c, 0x63, 0x53,
+ 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x39, 0x0a, 0x26, 0x4c,
+ 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a,
+ 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
+ 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x22, 0x37, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65,
+ 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02,
+ 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x6b, 0x0a, 0x1a,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f,
+ 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65,
+ 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65,
+ 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xd4, 0x0c, 0x0a, 0x20, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c,
+ 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x00, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73,
+ 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x61, 0x6c,
+ 0x69, 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x02, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01,
+ 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53,
+ 0x69, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x06, 0x63,
+ 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x03, 0x52,
+ 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72,
+ 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69,
+ 0x76, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x18,
+ 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16,
+ 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
+ 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f,
+ 0x68, 0x74, 0x6c, 0x63, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x53, 0x65, 0x6e, 0x74,
+ 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64,
+ 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54,
+ 0x78, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f,
+ 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e,
+ 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65,
+ 0x61, 0x73, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x65, 0x61, 0x73,
+ 0x65, 0x64, 0x12, 0x43, 0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04,
+ 0x52, 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64,
+ 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65,
+ 0x65, 0x52, 0x63, 0x76, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x13,
+ 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x11, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2a,
+ 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x10, 0x66, 0x69,
+ 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x13,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x52, 0x0d, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73,
+ 0x61, 0x74, 0x12, 0x30, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55, 0x73,
+ 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x07, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
+ 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x18, 0x6c,
+ 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66,
+ 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x15, 0x6c, 0x61,
+ 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x4d,
+ 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x72, 0x0a, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
+ 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x51, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x63,
- 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x75, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61, 0x73,
- 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x14, 0x6c, 0x61, 0x73,
- 0x74, 0x53, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x88, 0x01, 0x01, 0x22, 0x76, 0x0a, 0x2b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73,
- 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61,
- 0x75, 0x73, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00,
- 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x55,
- 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10,
- 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x10, 0x04, 0x12,
- 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x05, 0x42, 0x0a, 0x0a, 0x08,
- 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f,
- 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a,
- 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73,
- 0x65, 0x72, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66,
- 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16,
- 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76,
- 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17,
- 0x0a, 0x15, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65,
- 0x6e, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x6c, 0x61, 0x73, 0x74,
- 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74,
- 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22,
- 0x74, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
+ 0x6c, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61,
- 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01,
- 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72,
- 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x61, 0x0a, 0x10, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70,
- 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
- 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x31, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc3, 0x05, 0x0a, 0x11, 0x44, 0x65, 0x63,
- 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a,
- 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70,
- 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72,
- 0x79, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c,
- 0x52, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c,
- 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1c, 0x0a,
- 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64,
- 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88,
- 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
- 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0f,
- 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x88,
- 0x01, 0x01, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f,
- 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x45,
- 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
- 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52,
- 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0c, 0x20,
- 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88,
- 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65,
- 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0f,
- 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88,
- 0x01, 0x01, 0x12, 0x35, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18,
- 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f,
- 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x09,
- 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x65, 0x78, 0x74,
- 0x72, 0x61, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
- 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65,
- 0x78, 0x74, 0x72, 0x61, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x0b, 0x0a, 0x09,
- 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61,
- 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe5,
- 0x01, 0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c,
- 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
- 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
- 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
- 0x73, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62,
- 0x61, 0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79,
- 0x70, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x00, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x68,
- 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x22, 0x4e, 0x0a,
- 0x16, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61,
- 0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x50, 0x4b, 0x48,
- 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x53, 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06,
- 0x50, 0x32, 0x57, 0x50, 0x4b, 0x48, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x57, 0x53,
- 0x48, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x54, 0x52, 0x10, 0x04, 0x42, 0x07, 0x0a,
- 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x36, 0x0a, 0x0e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
- 0x70, 0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x27,
- 0x0a, 0x0d, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x16, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xd1, 0x2c, 0x0a, 0x0e, 0x44, 0x65, 0x63, 0x6f,
- 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x09, 0x69, 0x74,
- 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69,
- 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x1e, 0x0a,
- 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x00, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a,
- 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20,
- 0x03, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x73,
- 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e,
- 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72,
- 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x03, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x6b, 0x6e, 0x6f,
- 0x77, 0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88,
- 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d,
- 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x04, 0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x4d, 0x69, 0x6e, 0x6f, 0x72,
- 0x55, 0x6e, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52,
- 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12,
- 0x3c, 0x0a, 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a,
- 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x10, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
- 0x26, 0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18,
- 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x73,
- 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x09, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
- 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x73,
- 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x0e, 0x20, 0x01,
- 0x28, 0x04, 0x48, 0x0a, 0x52, 0x13, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x62, 0x73, 0x6f, 0x6c,
- 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12,
- 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d,
- 0x61, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x10, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12,
- 0x37, 0x0a, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x10,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64,
- 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x52, 0x0a, 0x6f, 0x66,
- 0x66, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x0c, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01,
- 0x01, 0x12, 0x45, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73,
- 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
- 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0d, 0x52, 0x19, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x4e,
- 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x0e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e,
- 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x16, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x0f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x10, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c,
- 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88,
- 0x01, 0x01, 0x12, 0x44, 0x0a, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e,
- 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75,
- 0x65, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x48, 0x11, 0x52, 0x19, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49,
- 0x73, 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72,
- 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x12, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65, 0x74, 0x61, 0x64,
- 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
- 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x13, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64,
- 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x63, 0x68,
- 0x61, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x14, 0x52, 0x0b, 0x69, 0x6e, 0x76,
- 0x72, 0x65, 0x71, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x15, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x1d,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x16, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x46, 0x65,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e, 0x76,
- 0x72, 0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x1e, 0x20, 0x01,
- 0x28, 0x04, 0x48, 0x17, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x51, 0x75, 0x61, 0x6e,
- 0x74, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65,
- 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x1f, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x18, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65,
- 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x69, 0x6e, 0x76, 0x72,
- 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f,
- 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x19, 0x52, 0x17, 0x69,
- 0x6e, 0x76, 0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x43,
- 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x69, 0x6e, 0x76,
- 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73,
- 0x74, 0x61, 0x72, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1a, 0x52, 0x15, 0x69, 0x6e,
- 0x76, 0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x74,
- 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
- 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
- 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x1b, 0x52, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e,
- 0x67, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88,
- 0x01, 0x01, 0x12, 0x49, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79,
- 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1c, 0x52, 0x1b, 0x77,
+ 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a,
+ 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x75, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61,
+ 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x14, 0x6c, 0x61,
+ 0x73, 0x74, 0x53, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x76, 0x0a, 0x2b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f,
+ 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65,
+ 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63,
+ 0x61, 0x75, 0x73, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
+ 0x00, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04,
+ 0x55, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45,
+ 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x10, 0x04,
+ 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x05, 0x42, 0x0a, 0x0a,
+ 0x08, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68,
+ 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f,
+ 0x73, 0x65, 0x72, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
+ 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a,
+ 0x16, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63,
+ 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x66, 0x75, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
+ 0x17, 0x0a, 0x15, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d,
+ 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x6c, 0x61, 0x73,
+ 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73,
+ 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x22, 0x74, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63,
+ 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61,
+ 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01,
+ 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f,
+ 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x61, 0x0a, 0x10, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74,
+ 0x31, 0x31, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
+ 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
+ 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x06, 0x0a, 0x11, 0x44, 0x65,
+ 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78,
+ 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69,
+ 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1c,
+ 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52,
+ 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68,
+ 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c,
+ 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76,
+ 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03,
+ 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0c,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52,
+ 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73,
+ 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63,
+ 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52,
+ 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x65, 0x78,
+ 0x74, 0x72, 0x61, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05,
+ 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x35, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18,
+ 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f,
+ 0x64, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48,
+ 0x06, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x13, 0x0a, 0x11,
+ 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73,
+ 0x68, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65,
+ 0x63, 0x72, 0x65, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65,
+ 0x73, 0x22, 0xe5, 0x01, 0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46,
+ 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62,
+ 0x61, 0x63, 0x6b, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61,
+ 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65,
+ 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x10,
+ 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78,
+ 0x22, 0x4e, 0x0a, 0x16, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c,
+ 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32,
+ 0x50, 0x4b, 0x48, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x53, 0x48, 0x10, 0x01, 0x12,
+ 0x0a, 0x0a, 0x06, 0x50, 0x32, 0x57, 0x50, 0x4b, 0x48, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x50,
+ 0x32, 0x57, 0x53, 0x48, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x54, 0x52, 0x10, 0x04,
+ 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x36, 0x0a, 0x0e, 0x44, 0x65, 0x63,
+ 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x74,
+ 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a,
+ 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74,
+ 0x61, 0x22, 0x27, 0x0a, 0x0d, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x9a, 0x2f, 0x0a, 0x0e, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a,
+ 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65,
+ 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64,
+ 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01,
+ 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73,
+ 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x68, 0x61,
+ 0x69, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0d, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12,
+ 0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
+ 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x55, 0x6e,
+ 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e,
+ 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
+ 0x79, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x04, 0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x4d, 0x69,
+ 0x6e, 0x6f, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04,
+ 0x48, 0x05, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x0f, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x30, 0x0a, 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x10, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88,
+ 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75,
+ 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65,
+ 0x72, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75,
+ 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
+ 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18,
+ 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x13, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x62,
+ 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x12, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x10, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x88,
+ 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68,
+ 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65,
+ 0x63, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x52,
+ 0x0a, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x0c, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f,
+ 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0d, 0x52, 0x19, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66,
+ 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x17, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x10, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e,
+ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e,
+ 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69,
+ 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x48, 0x11, 0x52, 0x19, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66,
+ 0x65, 0x72, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69,
+ 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x12, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x13, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65,
+ 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
+ 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x14, 0x52, 0x0b,
+ 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3e,
+ 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x15, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x72, 0x65,
+ 0x71, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2c,
+ 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x16, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65,
+ 0x71, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f,
+ 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18,
+ 0x1e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x17, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x51,
+ 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e,
+ 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18,
+ 0x1f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x18, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50,
+ 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x69,
+ 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
+ 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x19,
+ 0x52, 0x17, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
+ 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17,
+ 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
+ 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1a, 0x52,
+ 0x15, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
+ 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x1f, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x1b, 0x52, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
+ 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
+ 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1c,
+ 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
+ 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01,
+ 0x12, 0x4d, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72,
+ 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1d, 0x52, 0x1d, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x5d, 0x0a, 0x29, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
+ 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x26, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x1e, 0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
+ 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5d,
+ 0x0a, 0x29, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x1f, 0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a,
+ 0x12, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x61, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x04, 0x48, 0x20, 0x52, 0x10, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x3b, 0x0a, 0x17, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61,
+ 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x2a, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x21, 0x52, 0x15, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61,
+ 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a,
+ 0x14, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x22, 0x52, 0x12, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73,
+ 0x68, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x13, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23,
+ 0x52, 0x11, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x2d, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52,
+ 0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
+ 0x73, 0x12, 0x2e, 0x0a, 0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x24, 0x52, 0x0f, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01,
+ 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64,
+ 0x65, 0x5f, 0x69, 0x64, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x25, 0x52, 0x0d, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x43,
+ 0x0a, 0x1b, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72,
+ 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x30, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x26, 0x52, 0x19, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65,
+ 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
+ 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70,
+ 0x61, 0x74, 0x68, 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x48, 0x27, 0x52, 0x1a, 0x77, 0x61,
+ 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x22, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61,
+ 0x79, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x48, 0x28, 0x52, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69,
+ 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x42, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a,
+ 0x22, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x61, 0x74, 0x18, 0x34, 0x20, 0x01, 0x28, 0x09, 0x48, 0x29, 0x52, 0x1e, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69,
+ 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x53,
+ 0x0a, 0x24, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e,
+ 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52, 0x20,
+ 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68,
+ 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
+ 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2b, 0x52, 0x1b, 0x77,
0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76,
- 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a,
- 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
- 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f,
- 0x74, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1d, 0x52, 0x1d, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71,
- 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5d, 0x0a, 0x29,
- 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f,
- 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f,
- 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x1e, 0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e,
- 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53,
- 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5d, 0x0a, 0x29, 0x77,
- 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73,
- 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1f,
- 0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
- 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x69,
- 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
- 0x18, 0x29, 0x20, 0x01, 0x28, 0x04, 0x48, 0x20, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
- 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a,
- 0x17, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76,
- 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x21,
- 0x52, 0x15, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76,
- 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
- 0x73, 0x68, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x22, 0x52, 0x12, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01,
- 0x01, 0x12, 0x40, 0x0a, 0x13, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23, 0x52, 0x11, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66,
- 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x10, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x2e,
- 0x0a, 0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
- 0x65, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x24, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2b,
- 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69,
- 0x64, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x25, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
- 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x26, 0x52, 0x19, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x75, 0x72,
+ 0x6f, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x61, 0x0a,
+ 0x2b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x37, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x2c, 0x52, 0x27, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
+ 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x75, 0x72,
0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01,
- 0x12, 0x46, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68,
- 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x48, 0x27, 0x52, 0x1a, 0x77, 0x61, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x50, 0x61, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x22, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x18, 0x33,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x28, 0x52, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d,
- 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x42, 0x6c, 0x69,
- 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a, 0x22, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
- 0x18, 0x34, 0x20, 0x01, 0x28, 0x09, 0x48, 0x29, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
- 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43,
- 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x53, 0x0a, 0x24, 0x77,
- 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
- 0x61, 0x73, 0x68, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52, 0x20, 0x77, 0x61, 0x72,
+ 0x12, 0x49, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
+ 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
+ 0x5f, 0x69, 0x64, 0x18, 0x38, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2d, 0x52, 0x1b, 0x77, 0x61, 0x72,
0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
- 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2b, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
- 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x61, 0x0a, 0x2b, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
- 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x2c, 0x52, 0x27, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e,
- 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
- 0x63, 0x65, 0x42, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a,
- 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
- 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64,
- 0x18, 0x38, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2d, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
- 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e,
- 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x39, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x2e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x69, 0x67, 0x6e,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x3a, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x2f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e,
- 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x69, 0x67, 0x6e,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c,
- 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x3b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
- 0x73, 0x52, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0a,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x30, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x31, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a,
- 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x32, 0x52, 0x05,
- 0x70, 0x61, 0x79, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x33,
- 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
- 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
- 0x68, 0x61, 0x73, 0x68, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x34, 0x52, 0x0f, 0x64, 0x65,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
- 0x12, 0x36, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c,
- 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x35, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x45,
- 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0c,
- 0x48, 0x36, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65,
- 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x37,
- 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
- 0x61, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x45, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
- 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x20, 0x0a, 0x09,
- 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x46, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x38, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d,
- 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x47, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x39, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
- 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x48, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3a, 0x52,
- 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65,
- 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x49, 0x20, 0x03, 0x28, 0x0b,
- 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
- 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72,
- 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f,
- 0x75, 0x74, 0x66, 0x38, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3b, 0x52, 0x16, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
- 0x55, 0x74, 0x66, 0x38, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x4b,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x3c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x21,
- 0x0a, 0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x4c, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x3d, 0x52, 0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x88, 0x01,
- 0x01, 0x22, 0x83, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65,
- 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52,
- 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x49, 0x4e, 0x56,
- 0x4f, 0x49, 0x43, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32,
- 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54,
- 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x31, 0x5f, 0x49, 0x4e, 0x56,
- 0x4f, 0x49, 0x43, 0x45, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x04,
- 0x12, 0x15, 0x0a, 0x11, 0x45, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x52, 0x45,
- 0x43, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x05, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d,
- 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77,
- 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x16, 0x0a,
- 0x14, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72,
- 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12,
- 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73,
- 0x75, 0x65, 0x72, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x66, 0x65,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x5f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
- 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74,
- 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77, 0x61,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66,
- 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f,
- 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f,
- 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
- 0x6e, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65,
- 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x1f, 0x0a, 0x1d, 0x5f, 0x77,
- 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x12, 0x0a, 0x10, 0x5f,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42,
- 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72,
- 0x5f, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x63,
- 0x68, 0x61, 0x69, 0x6e, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42,
- 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74,
- 0x69, 0x74, 0x79, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70,
- 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x69, 0x6e,
- 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x72,
- 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74,
- 0x61, 0x72, 0x74, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
- 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x6d,
- 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72,
- 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f,
- 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f,
- 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74,
- 0x65, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42,
- 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61,
- 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x15, 0x0a,
- 0x13, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x5f, 0x61, 0x74, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
- 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
- 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77,
+ 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77,
0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x42, 0x25, 0x0a, 0x23,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x18, 0x39, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53,
+ 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x18, 0x3a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53,
+ 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x09, 0x66,
+ 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x3b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62,
+ 0x61, 0x63, 0x6b, 0x73, 0x52, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12,
+ 0x22, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3c, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x30, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x3d, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x31, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01,
+ 0x12, 0x19, 0x0a, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x32, 0x52, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x3f, 0x20, 0x01, 0x28,
+ 0x0c, 0x48, 0x33, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68,
+ 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x34, 0x52,
+ 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68,
+ 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c,
+ 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x41, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x35, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c,
+ 0x74, 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x70,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x42, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x36, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65,
+ 0x63, 0x72, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x43, 0x20, 0x01, 0x28,
+ 0x0c, 0x48, 0x37, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61,
+ 0x18, 0x45, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63,
+ 0x6f, 0x64, 0x65, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12,
+ 0x20, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x46, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x38, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x88, 0x01,
+ 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x47, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x39, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x48, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x3a, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a,
+ 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x49, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65,
+ 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x19, 0x77, 0x61,
+ 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x5f, 0x75, 0x74, 0x66, 0x38, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3b, 0x52,
+ 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x55, 0x74, 0x66, 0x38, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65,
+ 0x78, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x3c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01,
+ 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x4c,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x3d, 0x52, 0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3e, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3f, 0x52, 0x08, 0x63, 0x75, 0x72,
+ 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x40, 0x52, 0x0a, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x50, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x41, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88,
+ 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x51,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x42, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x52, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x43, 0x52,
+ 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x22, 0x83, 0x01, 0x0a, 0x0a, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x4f, 0x4c,
+ 0x54, 0x31, 0x32, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x42,
+ 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10, 0x01, 0x12,
+ 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43,
+ 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x42,
+ 0x4f, 0x4c, 0x54, 0x31, 0x31, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10, 0x03, 0x12,
+ 0x08, 0x0a, 0x04, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x4d, 0x45,
+ 0x52, 0x47, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x05,
+ 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a,
+ 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x42, 0x0f,
+ 0x0a, 0x0d, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42,
+ 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
+ 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x11, 0x0a, 0x0f,
+ 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42,
+ 0x18, 0x0a, 0x16, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75,
+ 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78,
+ 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
+ 0x69, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
+ 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64,
+ 0x65, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77,
+ 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+ 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
+ 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x42, 0x1f, 0x0a, 0x1d, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73,
+ 0x73, 0x75, 0x65, 0x72, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
+ 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x15, 0x0a,
+ 0x13, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
+ 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76,
+ 0x72, 0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x14, 0x0a, 0x12,
+ 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f,
+ 0x74, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65,
+ 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
+ 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x22, 0x0a, 0x20,
0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
- 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64,
- 0x70, 0x61, 0x79, 0x42, 0x25, 0x0a, 0x23, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
- 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x27, 0x0a, 0x25, 0x5f, 0x77,
+ 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
+ 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77,
0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
- 0x61, 0x73, 0x68, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73,
+ 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x69, 0x67,
+ 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
+ 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x1a, 0x0a,
+ 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69,
+ 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
+ 0x73, 0x68, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42,
+ 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
+ 0x5f, 0x69, 0x64, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
+ 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74,
+ 0x69, 0x6d, 0x65, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
- 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x2e, 0x0a, 0x2c, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61,
- 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77,
- 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
- 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67,
- 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
- 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x13, 0x0a, 0x11, 0x5f,
- 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68,
- 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63,
- 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x13, 0x0a,
- 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64,
- 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
- 0x5f, 0x75, 0x74, 0x66, 0x38, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x0c, 0x0a,
- 0x0a, 0x5f, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x22, 0x53, 0x0a, 0x11, 0x44,
- 0x65, 0x63, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73,
- 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4e, 0x6f,
- 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x22, 0xbb, 0x01, 0x0a, 0x1f, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72,
- 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x79, 0x77, 0x69,
- 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f,
- 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x65,
- 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73,
- 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x41, 0x66, 0x74, 0x65, 0x72,
- 0x12, 0x34, 0x0a, 0x13, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
- 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52,
- 0x12, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f,
- 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x7b,
- 0x0a, 0x17, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
- 0x70, 0x61, 0x74, 0x68, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x6c, 0x69,
- 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0c, 0x52, 0x0d, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x49,
- 0x64, 0x12, 0x38, 0x0a, 0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x72,
- 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0c, 0x52, 0x16, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65,
- 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x70, 0x0a, 0x17, 0x44,
- 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c,
- 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
- 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68,
- 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01,
- 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x9e, 0x01,
- 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
- 0x73, 0x12, 0x5d, 0x0a, 0x29, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76,
- 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x56,
- 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x88, 0x01, 0x01,
- 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76,
- 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x22, 0x33,
- 0x0a, 0x0b, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x10, 0x0a,
- 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12,
- 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64,
- 0x61, 0x74, 0x61, 0x22, 0x52, 0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73,
- 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x74,
- 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52,
- 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x18, 0x0a,
- 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
- 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x48, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x63, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05,
- 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x66,
- 0x6f, 0x72, 0x63, 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6f, 0x72, 0x63,
- 0x65, 0x22, 0x14, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x72, 0x0a, 0x0f, 0x46, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
- 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x22, 0x25, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73,
- 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x45, 0x52, 0x4b, 0x42, 0x10, 0x00,
- 0x12, 0x09, 0x0a, 0x05, 0x50, 0x45, 0x52, 0x4b, 0x57, 0x10, 0x01, 0x22, 0xd7, 0x02, 0x0a, 0x10,
- 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x3d, 0x0a, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
- 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x00, 0x52, 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
- 0x73, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12,
- 0x2d, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72,
- 0x6b, 0x62, 0x48, 0x01, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x88, 0x01, 0x01, 0x12, 0x2d,
- 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b,
- 0x77, 0x48, 0x02, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a,
- 0x15, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74,
- 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61,
- 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73,
- 0x48, 0x03, 0x52, 0x13, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x65, 0x65, 0x45, 0x73,
- 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x77,
+ 0x70, 0x61, 0x74, 0x68, 0x73, 0x42, 0x25, 0x0a, 0x23, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x42, 0x25, 0x0a, 0x23,
+ 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x61, 0x74, 0x42, 0x27, 0x0a, 0x25, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x21, 0x0a, 0x1f,
+ 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42,
+ 0x2e, 0x0a, 0x2c, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
+ 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x42,
+ 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
+ 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
+ 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
+ 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61,
+ 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42,
+ 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x61,
+ 0x79, 0x65, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x68, 0x61, 0x73, 0x68, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69,
+ 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70,
+ 0x69, 0x72, 0x79, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
+ 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67,
+ 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6e,
+ 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x74, 0x66, 0x38, 0x42, 0x06,
+ 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x63, 0x72, 0x79,
+ 0x70, 0x74, 0x65, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
+ 0x72, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42,
+ 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x09, 0x0a, 0x07,
+ 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0xdb, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x63, 0x6f,
+ 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27, 0x0a,
+ 0x0d, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4e, 0x6f, 0x64,
+ 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64,
+ 0x5f, 0x64, 0x69, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0c, 0x66, 0x69,
+ 0x72, 0x73, 0x74, 0x53, 0x63, 0x69, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
+ 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x02, 0x52, 0x09, 0x66, 0x69, 0x72, 0x73, 0x74, 0x53, 0x63, 0x69, 0x64, 0x88, 0x01,
+ 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65,
+ 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63,
+ 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74,
+ 0x5f, 0x73, 0x63, 0x69, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x1f, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
+ 0x50, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63,
+ 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0d, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65,
+ 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65,
+ 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
+ 0x41, 0x66, 0x74, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x13, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74,
+ 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x00, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e,
+ 0x61, 0x6c, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f,
+ 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x22, 0x7b, 0x0a, 0x17, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x26,
+ 0x0a, 0x0f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64,
+ 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
+ 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61,
+ 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
+ 0x74, 0x65, 0x64, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61,
+ 0x22, 0x70, 0x0a, 0x17, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
+ 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72,
+ 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
+ 0x73, 0x73, 0x22, 0xe6, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c,
+ 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x5d, 0x0a, 0x29, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61,
+ 0x63, 0x6b, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x25, 0x77, 0x61, 0x72,
+ 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62,
+ 0x61, 0x63, 0x6b, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x2e, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x04,
+ 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x61, 0x64,
+ 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x22, 0x4b, 0x0a, 0x13, 0x44, 0x65, 0x63, 0x6f, 0x64,
+ 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09,
+ 0x0a, 0x05, 0x50, 0x32, 0x50, 0x4b, 0x48, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x53,
+ 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x32, 0x57, 0x50, 0x4b, 0x48, 0x10, 0x02, 0x12,
+ 0x09, 0x0a, 0x05, 0x50, 0x32, 0x57, 0x53, 0x48, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32,
+ 0x54, 0x52, 0x10, 0x04, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
+ 0x6b, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x33, 0x0a, 0x0b, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61,
+ 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
+ 0x22, 0x52, 0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e,
+ 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c,
+ 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75,
+ 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d,
+ 0x6d, 0x61, 0x72, 0x79, 0x22, 0xe8, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x37, 0x0a, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65,
+ 0x6c, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
+ 0x48, 0x01, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x22, 0x28,
+ 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c,
+ 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
+ 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x22,
+ 0x41, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79,
+ 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x22, 0x86, 0x07, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x50, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12,
+ 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12,
+ 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
+ 0x73, 0x68, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x50,
+ 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x50, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73,
+ 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74,
+ 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52,
+ 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
+ 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
+ 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63,
+ 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0c,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72,
+ 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x08, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x06, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72,
+ 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x0a, 0x65,
+ 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x3d, 0x0a, 0x14,
+ 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10,
+ 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a,
+ 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63,
+ 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
+ 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x08, 0x0a, 0x06,
+ 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0d, 0x0a, 0x0b,
+ 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x22, 0xd0, 0x01, 0x0a, 0x11,
+ 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x12, 0x1c, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x64, 0x12, 0x3f,
+ 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22,
+ 0x3d, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
+ 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0x14,
+ 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x0a, 0x13, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x22, 0xb9, 0x01, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x61, 0x62,
+ 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63,
+ 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
+ 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73,
+ 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65,
+ 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a,
+ 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x22, 0x48, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x14, 0x0a, 0x12,
+ 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x72, 0x0a, 0x0f, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22,
+ 0x25, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65,
+ 0x12, 0x09, 0x0a, 0x05, 0x50, 0x45, 0x52, 0x4b, 0x42, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x50,
+ 0x45, 0x52, 0x4b, 0x57, 0x10, 0x01, 0x22, 0xd7, 0x02, 0x0a, 0x10, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x18, 0x77,
0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x66,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b,
- 0x62, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x42, 0x18, 0x0a, 0x16, 0x5f,
- 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69,
- 0x6d, 0x61, 0x74, 0x65, 0x73, 0x22, 0xe7, 0x04, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x61,
- 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0d, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x25,
- 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x0a,
- 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x88, 0x01, 0x01,
- 0x12, 0x39, 0x0a, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73,
- 0x52, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x6f,
- 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07,
- 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x75,
- 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x02, 0x52, 0x0b, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88,
- 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x0f,
- 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88,
- 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
- 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x0b, 0x20,
- 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
- 0x6c, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12,
- 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65,
- 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74, 0x6c, 0x63,
- 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x06, 0x52, 0x0e, 0x68, 0x74, 0x6c, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74,
- 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74,
- 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c,
- 0x74, 0x79, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42,
- 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
- 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13, 0x0a, 0x11,
- 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73,
- 0x65, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
- 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x10, 0x0a,
- 0x0e, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x42,
- 0x12, 0x0a, 0x10, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x22,
- 0xbc, 0x01, 0x0a, 0x16, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b,
- 0x62, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0a, 0x62, 0x6c,
- 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00,
- 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12,
- 0x1d, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x46,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x05, 0x70, 0x65,
+ 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x48, 0x01, 0x52,
+ 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x05, 0x70, 0x65, 0x72,
+ 0x6b, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x48, 0x02, 0x52, 0x05,
+ 0x70, 0x65, 0x72, 0x6b, 0x77, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x15, 0x6f, 0x6e, 0x63, 0x68,
+ 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65,
+ 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x48, 0x03, 0x52, 0x13, 0x6f,
+ 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x65, 0x65, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74,
+ 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x42, 0x08, 0x0a, 0x06,
+ 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6f, 0x6e, 0x63, 0x68, 0x61,
+ 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73,
+ 0x22, 0xe7, 0x04, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72,
+ 0x6b, 0x62, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
+ 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x41,
+ 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78,
+ 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65,
+ 0x12, 0x1d, 0x0a, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12,
+ 0x26, 0x0a, 0x0c, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0b, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43,
+ 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x75, 0x6e, 0x69, 0x6c, 0x61,
+ 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43,
+ 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61, 0x79,
+ 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03,
+ 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01, 0x01,
+ 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0e, 0x68, 0x74, 0x6c,
+ 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d,
+ 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x05, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a,
+ 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50,
+ 0x65, 0x72, 0x6b, 0x62, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x52, 0x09, 0x65,
+ 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f,
+ 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72,
+ 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
+ 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x0b,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72,
+ 0x61, 0x6c, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13, 0x0a,
+ 0x11, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f,
+ 0x73, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74,
+ 0x6f, 0x5f, 0x75, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65,
+ 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x6e,
+ 0x61, 0x6c, 0x74, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42, 0x1a,
+ 0x0a, 0x18, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e,
+ 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x22, 0x7d, 0x0a, 0x16, 0x46, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x45, 0x73, 0x74, 0x69, 0x6d,
+ 0x61, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63,
+ 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x29,
0x0a, 0x10, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f,
- 0x74, 0x68, 0x65, 0x64, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0d,
- 0x0a, 0x0b, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0a, 0x0a,
- 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x6d,
- 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xe7,
- 0x04, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77,
- 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62,
- 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63,
- 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x61,
- 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0d, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19,
- 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
- 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x09, 0x65, 0x73, 0x74,
- 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77,
- 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x52, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d,
- 0x61, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
- 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c,
- 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0b, 0x6d, 0x75, 0x74,
- 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x75,
- 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x0f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65,
- 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x75,
- 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x15,
- 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72,
- 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61,
- 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x05, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01,
- 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75,
- 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x0e, 0x68, 0x74,
- 0x6c, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
- 0x1d, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d,
- 0x48, 0x07, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x88, 0x01, 0x01, 0x42, 0x08,
- 0x0a, 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x65,
- 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f,
- 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74,
- 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x75,
- 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79,
- 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x68, 0x74, 0x6c,
- 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08,
- 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x22, 0xbc, 0x01, 0x0a, 0x16, 0x46, 0x65, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61,
- 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e,
- 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x73, 0x6d, 0x6f, 0x6f, 0x74,
+ 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68,
+ 0x65, 0x64, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xe7, 0x04, 0x0a, 0x0d, 0x46, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x12, 0x25, 0x0a, 0x0e, 0x6d,
+ 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62,
+ 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
+ 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x41,
+ 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x6f, 0x70, 0x65,
+ 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70,
+ 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x75, 0x74, 0x75,
+ 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01,
+ 0x52, 0x0b, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x2e, 0x0a, 0x10, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63,
+ 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x75, 0x6e,
+ 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75,
+ 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79,
+ 0x65, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74, 0x6c,
+ 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0e, 0x68, 0x74, 0x6c, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75,
+ 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c,
+ 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61,
+ 0x6c, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61,
+ 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x45, 0x73, 0x74,
+ 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x52, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65,
+ 0x73, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d,
+ 0x48, 0x06, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17,
+ 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f,
+ 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52,
+ 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x41, 0x6e, 0x63, 0x68, 0x6f,
+ 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70,
+ 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c,
+ 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61,
+ 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x42, 0x12, 0x0a,
+ 0x10, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x42, 0x08, 0x0a,
+ 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x6e, 0x69, 0x6c,
+ 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x22, 0x7d, 0x0a, 0x16, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50,
+ 0x65, 0x72, 0x6b, 0x77, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a,
+ 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0d, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a,
+ 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x6d, 0x6f, 0x6f, 0x74,
0x68, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x46, 0x65, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x62, 0x6c, 0x6f, 0x63,
- 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x5f,
- 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xad, 0x03, 0x0a, 0x1d, 0x46, 0x65, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f,
- 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x6f, 0x70, 0x65,
- 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x74,
- 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x6f, 0x70, 0x65,
- 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x61, 0x74, 0x6f, 0x73,
- 0x68, 0x69, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c,
- 0x6f, 0x73, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x04, 0x52, 0x13, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53,
- 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x75, 0x6e, 0x69, 0x6c, 0x61,
- 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x6f,
- 0x73, 0x68, 0x69, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x75, 0x6e, 0x69, 0x6c,
- 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x61, 0x74, 0x6f, 0x73,
- 0x68, 0x69, 0x73, 0x12, 0x52, 0x0a, 0x23, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
- 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f,
- 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x00, 0x52, 0x20, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c,
- 0x6f, 0x73, 0x65, 0x4e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x53, 0x61, 0x74, 0x6f,
- 0x73, 0x68, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x74, 0x6c, 0x63, 0x5f,
- 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x68, 0x74, 0x6c, 0x63, 0x54, 0x69, 0x6d, 0x65,
- 0x6f, 0x75, 0x74, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68,
- 0x74, 0x6c, 0x63, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x61, 0x74, 0x6f,
- 0x73, 0x68, 0x69, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x68, 0x74, 0x6c, 0x63,
- 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x42,
- 0x26, 0x0a, 0x24, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63,
- 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x73,
- 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x22, 0xcf, 0x03, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63,
- 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x14, 0x0a, 0x05, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x6f, 0x66, 0x66, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e,
- 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x08, 0x71, 0x75,
- 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x12, 0x72, 0x65, 0x63,
- 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x11, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
- 0x10, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72,
- 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x48, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
- 0x10, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
- 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x48, 0x05,
- 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
- 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
- 0x48, 0x06, 0x52, 0x09, 0x70, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x15, 0x0a,
- 0x13, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x65, 0x72, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65,
- 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0a,
- 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70,
- 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x46, 0x65,
- 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x07,
- 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73,
- 0x12, 0x42, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63,
- 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72,
- 0x69, 0x6f, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f,
- 0x64, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65,
- 0x72, 0x69, 0x6f, 0x64, 0x22, 0xc7, 0x02, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x14,
- 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65,
- 0x6e, 0x64, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x13, 0x64, 0x65,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x76,
- 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0d, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x52, 0x65, 0x6d,
- 0x6f, 0x76, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f,
- 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f,
- 0x72, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x0d, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x22, 0xad, 0x03, 0x0a, 0x1d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x4f,
+ 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d,
+ 0x61, 0x74, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x32,
+ 0x0a, 0x15, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x73,
+ 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x6d,
+ 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68,
+ 0x69, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
+ 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
+ 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x32,
+ 0x0a, 0x15, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x73,
+ 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x68,
+ 0x74, 0x6c, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68,
+ 0x69, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65,
+ 0x73, 0x73, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x13, 0x68, 0x74, 0x6c, 0x63, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53, 0x61,
+ 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x52, 0x0a, 0x23, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74,
+ 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x61, 0x6e,
+ 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x06, 0x20,
+ 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x20, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
+ 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x4e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x53,
+ 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x88, 0x01, 0x01, 0x42, 0x26, 0x0a, 0x24, 0x5f, 0x75,
+ 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
+ 0x6e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68,
+ 0x69, 0x73, 0x22, 0xcf, 0x03, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
+ 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
+ 0x48, 0x02, 0x52, 0x11, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x43, 0x6f,
+ 0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x01, 0x48, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
+ 0x53, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
+ 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65,
+ 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x48, 0x05, 0x52, 0x07, 0x74, 0x69, 0x6d,
+ 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x65, 0x72,
+ 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x09, 0x70,
+ 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
+ 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x72, 0x65, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73,
+ 0x74, 0x61, 0x72, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69,
+ 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f,
+ 0x6e, 0x6f, 0x74, 0x65, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a,
+ 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67,
+ 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
+ 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67,
+ 0x65, 0x73, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0b, 0x6e,
+ 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x4e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x48, 0x00,
+ 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22,
+ 0xc7, 0x02, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x63, 0x72,
+ 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x13, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72,
+ 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
+ 0x52, 0x0d, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x04, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
+ 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0xb9, 0x01, 0x0a, 0x17, 0x46, 0x65,
+ 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x65, 0x78, 0x74, 0x5f, 0x70,
+ 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12,
+ 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a,
+ 0x07, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
+ 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x77, 0x69,
+ 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x0e, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74,
+ 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x65, 0x6e,
+ 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64,
+ 0x6f, 0x77, 0x45, 0x6e, 0x64, 0x22, 0x2b, 0x0a, 0x19, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02,
+ 0x69, 0x64, 0x22, 0x3a, 0x0a, 0x1a, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0x41,
+ 0x0a, 0x1b, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f,
+ 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a,
+ 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
+ 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62,
+ 0x74, 0x22, 0x6e, 0x0a, 0x1c, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
+ 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f,
+ 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63,
+ 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65,
+ 0x64, 0x22, 0xf7, 0x04, 0x0a, 0x12, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x01, 0x52, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x2d, 0x0a, 0x09, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x48, 0x02, 0x52, 0x08, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x03, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65,
+ 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d,
+ 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02,
+ 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07,
+ 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52,
+ 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75,
+ 0x74, 0x78, 0x6f, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73,
+ 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x07, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01,
+ 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
+ 0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a,
+ 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20,
+ 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09,
+ 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75,
+ 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73,
+ 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x5f, 0x61, 0x6d, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
+ 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f,
+ 0x6e, 0x66, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42,
+ 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xa2, 0x02, 0x0a, 0x13,
+ 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75,
+ 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1e,
+ 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x00, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x1f,
+ 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d,
+ 0x48, 0x01, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12,
+ 0x44, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
+ 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0x48, 0x02, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79,
+ 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
+ 0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42,
+ 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x22, 0x59, 0x0a, 0x17, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xa9, 0x03, 0x0a, 0x18,
+ 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a,
+ 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e,
+ 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x08,
+ 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63,
+ 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52,
+ 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x70,
+ 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x08, 0x70,
+ 0x75, 0x73, 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69,
+ 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x08,
+ 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x07, 0x72, 0x65, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
+ 0x6e, 0x63, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f,
+ 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b,
+ 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
+ 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xc5, 0x02, 0x0a, 0x19, 0x46, 0x75, 0x6e, 0x64,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
+ 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x22,
+ 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b,
+ 0x65, 0x79, 0x12, 0x4a, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
+ 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e,
+ 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x01, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x23,
+ 0x0a, 0x0d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x55, 0x73,
+ 0x61, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74,
+ 0x68, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
+ 0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x22,
+ 0x5f, 0x0a, 0x1d, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73,
+ 0x74, 0x61, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04,
+ 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
+ 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73,
+ 0x22, 0xa4, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x39, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65,
+ 0x6c, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x22, 0x4e, 0x0a,
+ 0x0b, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0a, 0x0a, 0x06,
+ 0x42, 0x52, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53,
+ 0x55, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x02, 0x12,
+ 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4f,
+ 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x05, 0x42, 0x08, 0x0a,
+ 0x06, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x8d, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x6c,
+ 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x79, 0x74,
+ 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62,
+ 0x79, 0x74, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x79, 0x74, 0x65,
+ 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x79, 0x74,
+ 0x65, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x20, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x04, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c,
+ 0x6f, 0x67, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x22, 0x9f, 0x03, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x6c,
+ 0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47,
+ 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c,
+ 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65,
+ 0x12, 0x24, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x53, 0x6b, 0x69, 0x70,
+ 0x70, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x02, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03,
+ 0x6c, 0x6f, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x03, 0x6c, 0x6f, 0x67,
+ 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01,
+ 0x01, 0x12, 0x17, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x22, 0x6c, 0x0a, 0x0d, 0x47, 0x65,
+ 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53,
+ 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x52, 0x4f, 0x4b,
+ 0x45, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10,
+ 0x02, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x44,
+ 0x45, 0x42, 0x55, 0x47, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4f, 0x5f, 0x49, 0x4e, 0x10,
+ 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4f, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x06, 0x12, 0x09, 0x0a,
+ 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x07, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x75, 0x6d,
+ 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04,
+ 0x5f, 0x6c, 0x6f, 0x67, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64,
+ 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf2, 0x0a, 0x0a, 0x13, 0x46, 0x75,
+ 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x48, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x64,
+ 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x48, 0x00,
+ 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x70,
+ 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x09,
+ 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4d, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b,
+ 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x02, 0x52, 0x0a, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x88,
+ 0x01, 0x01, 0x12, 0x45, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f,
+ 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
+ 0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x69, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x16, 0x6d, 0x61, 0x78,
+ 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6d, 0x6f,
- 0x76, 0x65, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x42, 0x0e,
- 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0xb9,
- 0x01, 0x0a, 0x17, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e,
- 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
- 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d,
- 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69,
- 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x04, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f,
- 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77,
- 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64,
- 0x6f, 0x77, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61,
- 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x45, 0x6e, 0x64, 0x22, 0xf7, 0x04, 0x0a, 0x12, 0x46,
- 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69,
- 0x64, 0x12, 0x28, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72,
- 0x41, 0x6c, 0x6c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x07, 0x66,
- 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f,
- 0x75, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x08, 0x61, 0x6e,
- 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e,
- 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x07, 0x6d, 0x69,
- 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x70, 0x75, 0x73, 0x68,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x08, 0x70, 0x75, 0x73, 0x68,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65,
- 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x6f,
- 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x09, 0x48, 0x06, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73,
- 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x0b, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e,
- 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x08, 0x6d,
- 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65,
- 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65,
- 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
- 0x63, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x42, 0x0c,
- 0x0a, 0x0a, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09,
- 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
- 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73,
- 0x65, 0x72, 0x76, 0x65, 0x22, 0xa2, 0x02, 0x0a, 0x13, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02,
- 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04,
- 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64,
- 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a,
- 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x01, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a,
- 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48,
- 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x42, 0x0f,
- 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42,
- 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09,
- 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x22, 0x59, 0x0a, 0x17, 0x46, 0x75, 0x6e,
- 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
- 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
- 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65,
- 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e,
- 0x61, 0x6d, 0x65, 0x73, 0x22, 0xb5, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74,
- 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x54, 0x68, 0x65,
+ 0x69, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x41, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x11, 0x70,
+ 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06,
+ 0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x61, 0x78, 0x4d,
+ 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x07,
+ 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x54, 0x61, 0x6e, 0x6b, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x08, 0x52, 0x0b, 0x66, 0x75,
+ 0x7a, 0x7a, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
+ 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
+ 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x09, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x50, 0x72,
+ 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x13,
+ 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46,
+ 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a,
+ 0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73,
+ 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x0b, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46,
+ 0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x0c, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57, 0x65, 0x69,
+ 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0d, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e,
+ 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x18, 0x0f,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x0e, 0x52, 0x24, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46,
+ 0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61,
+ 0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
+ 0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0f, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63,
+ 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x12, 0x46, 0x75, 0x6e,
+ 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12,
+ 0x09, 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x56,
+ 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x49, 0x58,
+ 0x45, 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42,
+ 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x42, 0x0e,
+ 0x0a, 0x0c, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x19,
+ 0x0a, 0x17, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e,
+ 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x61,
+ 0x78, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a,
+ 0x15, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x61,
+ 0x78, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72,
+ 0x76, 0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x13, 0x0a,
+ 0x11, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69,
+ 0x74, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65,
+ 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6c,
+ 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73, 0x42, 0x11,
+ 0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68,
+ 0x74, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
+ 0x2b, 0x0a, 0x29, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f,
+ 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
+ 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x42, 0x10, 0x0a, 0x0e,
+ 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x22, 0x81,
+ 0x09, 0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61,
+ 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72,
+ 0x79, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x75, 0x6e,
+ 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52,
+ 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63,
+ 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x6c,
+ 0x69, 0x63, 0x79, 0x4d, 0x6f, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73,
+ 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6c, 0x65, 0x61,
+ 0x73, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x40, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x74,
+ 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x69, 0x72, 0x46, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x40, 0x0a, 0x16, 0x6d, 0x61, 0x78,
+ 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x54, 0x68, 0x65, 0x69, 0x72,
+ 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x14, 0x70,
+ 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x4d, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x14, 0x70, 0x65, 0x72,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x4d, 0x61, 0x78, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72,
+ 0x76, 0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x54, 0x61, 0x6e, 0x6b, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
+ 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x75, 0x7a, 0x7a, 0x50, 0x65, 0x72, 0x63,
+ 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62,
+ 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66,
+ 0x75, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x3f,
+ 0x0a, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73,
+ 0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x2b, 0x0a, 0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
+ 0x69, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x73,
+ 0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e,
+ 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0e,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57,
+ 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
+ 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73,
+ 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x24, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
+ 0x6e, 0x61, 0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x88, 0x01,
+ 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61,
+ 0x73, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70,
+ 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x12, 0x46,
+ 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63,
+ 0x79, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09,
+ 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x46,
+ 0x49, 0x58, 0x45, 0x44, 0x10, 0x02, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
+ 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12,
+ 0x0a, 0x10, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
+ 0x69, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77,
+ 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x42, 0x2b, 0x0a, 0x29, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
+ 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73,
+ 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61,
+ 0x73, 0x65, 0x22, 0xb5, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61,
0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x69, 0x73, 0x6b,
0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01, 0x12,
@@ -21665,130 +38247,416 @@ var file_node_proto_rawDesc = []byte{
0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x18, 0x07,
0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x12, 0x1d, 0x0a,
0x07, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03,
- 0x52, 0x07, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05,
- 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x64,
- 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
- 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x22, 0x3c, 0x0a, 0x10,
- 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x28, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f,
- 0x75, 0x74, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xf7, 0x01, 0x0a, 0x0d, 0x47,
- 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x3b, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65,
- 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x72,
- 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05,
- 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x1d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74,
- 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x54,
- 0x4c, 0x56, 0x10, 0x00, 0x22, 0xeb, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72,
- 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61,
- 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75,
- 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x02, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01,
- 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
- 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f,
- 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52, 0x05, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74,
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88,
- 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22, 0x4c, 0x0a,
- 0x12, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x45, 0x44, 0x10, 0x00,
- 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a,
- 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12,
- 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x22, 0x2d, 0x0a, 0x11, 0x4c,
- 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78,
- 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a,
- 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08,
- 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d,
- 0x69, 0x74, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
- 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x6f,
- 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46,
- 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
- 0x73, 0x22, 0xb9, 0x06, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
- 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
- 0x78, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69,
- 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c,
- 0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x07, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
- 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
- 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x4c, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46,
- 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77,
- 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65,
- 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x01, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12,
- 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x74, 0x6c,
- 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x09, 0x6f, 0x75,
- 0x74, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28,
- 0x04, 0x48, 0x04, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
- 0x78, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x09, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f,
- 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61,
- 0x72, 0x64, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x48, 0x05, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
- 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x07, 0x66, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
- 0x01, 0x12, 0x2b, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x48, 0x07, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x22, 0x54,
- 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f,
- 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07,
- 0x4f, 0x46, 0x46, 0x45, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54,
- 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f,
- 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c,
- 0x45, 0x44, 0x10, 0x03, 0x22, 0x30, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77,
- 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x79, 0x6c,
- 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x07, 0x0a,
- 0x03, 0x54, 0x4c, 0x56, 0x10, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f,
+ 0x52, 0x07, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0b,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63,
+ 0x6c, 0x74, 0x76, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x64, 0x42, 0x0e,
+ 0x0a, 0x0c, 0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x22, 0x3c, 0x0a, 0x10, 0x47, 0x65,
+ 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28,
+ 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74,
+ 0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xf7, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74,
+ 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52,
+ 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x3b, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72,
+ 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75,
+ 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05, 0x73, 0x74,
+ 0x79, 0x6c, 0x65, 0x22, 0x1d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52,
+ 0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x4c, 0x56,
+ 0x10, 0x00, 0x22, 0xeb, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61,
+ 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
+ 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52,
+ 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x45,
+ 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77,
+ 0x61, 0x72, 0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64,
+ 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22, 0x4c, 0x0a, 0x12, 0x4c,
+ 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b,
+ 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c,
+ 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a,
+ 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x22, 0x2d, 0x0a, 0x11, 0x4c, 0x69, 0x73,
+ 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b,
+ 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55,
+ 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08, 0x0a, 0x06,
+ 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
+ 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x77,
+ 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72,
+ 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x22,
+ 0xd7, 0x07, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x07, 0x69, 0x6e, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x4c, 0x0a,
+ 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72,
+ 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72,
+ 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x01, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65,
+ 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x48, 0x02, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x4e, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x33, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66,
+ 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53,
+ 0x74, 0x79, 0x6c, 0x65, 0x48, 0x03, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x21, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0a,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x48,
+ 0x74, 0x6c, 0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48,
+ 0x06, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88,
+ 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
+ 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x0c, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
+ 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20,
+ 0x01, 0x28, 0x01, 0x48, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x54,
+ 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x63, 0x6f,
+ 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x09, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c,
+ 0x63, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x72,
+ 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x0a, 0x66,
+ 0x61, 0x69, 0x6c, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x54, 0x0a, 0x1a,
+ 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77,
+ 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46,
+ 0x46, 0x45, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c,
+ 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41,
+ 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
+ 0x10, 0x03, 0x22, 0x30, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
+ 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12,
+ 0x0a, 0x0a, 0x06, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x54,
+ 0x4c, 0x56, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f,
0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
- 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
- 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x76, 0x0a,
- 0x11, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88,
- 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c,
- 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76,
- 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66,
- 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
- 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x43, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66,
- 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x06, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65,
- 0x72, 0x73, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x4c,
- 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12,
+ 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a,
+ 0x09, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x63, 0x6f, 0x64, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66,
+ 0x61, 0x69, 0x6c, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x76, 0x0a, 0x11, 0x4c, 0x69, 0x73,
+ 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e,
+ 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x00, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24,
+ 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c,
+ 0x79, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69,
+ 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c,
+ 0x79, 0x22, 0x43, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x06,
+ 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a,
+ 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62,
+ 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0xf8,
+ 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12,
+ 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x22, 0x37, 0x0a, 0x0e, 0x4c, 0x69, 0x73,
+ 0x74, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50,
+ 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50,
+ 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
+ 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0f, 0x0a,
+ 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x4c, 0x69, 0x73,
+ 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a,
+ 0x04, 0x70, 0x61, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x52, 0x04,
+ 0x70, 0x61, 0x79, 0x73, 0x22, 0x9e, 0x06, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79,
+ 0x73, 0x50, 0x61, 0x79, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x19, 0x0a, 0x05,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01,
+ 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73,
+ 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0e, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x23, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x0a,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69,
+ 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65,
+ 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c,
+ 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x08, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
+ 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
+ 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f,
+ 0x6f, 0x66, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a,
+ 0x52, 0x0d, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x50, 0x61, 0x72, 0x74, 0x73, 0x88,
+ 0x01, 0x01, 0x22, 0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61,
+ 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44,
+ 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10,
+ 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
+ 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
+ 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42,
+ 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e,
+ 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
+ 0x64, 0x5f, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
+ 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f,
+ 0x70, 0x61, 0x72, 0x74, 0x73, 0x22, 0x2e, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c,
+ 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x05,
+ 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c,
+ 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x68, 0x74,
+ 0x6c, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x05,
+ 0x68, 0x74, 0x6c, 0x63, 0x73, 0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74,
+ 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72,
+ 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02,
+ 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44,
+ 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
+ 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
+ 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x74, 0x6c, 0x63,
+ 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2a, 0x0a, 0x17,
+ 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69,
+ 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x00,
+ 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x01, 0x22, 0xf9, 0x02, 0x0a, 0x17, 0x4d, 0x75, 0x6c,
+ 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63,
+ 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x48, 0x01, 0x52, 0x07, 0x6d, 0x69, 0x6e,
+ 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73,
+ 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74,
+ 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x25, 0x0a, 0x0b,
+ 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x12, 0x48, 0x02, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x03, 0x52,
+ 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x42, 0x0e, 0x0a,
+ 0x0c, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, 0x15, 0x0a,
+ 0x13, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x22, 0xb6, 0x01, 0x0a, 0x18, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75,
+ 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74,
+ 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x52, 0x0a, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x73, 0x12, 0x33, 0x0a, 0x06, 0x66, 0x61, 0x69, 0x6c,
+ 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d,
+ 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46,
+ 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x06, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x22, 0xd5, 0x03,
+ 0x0a, 0x1c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0e,
+ 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28,
+ 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c,
+ 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f,
+ 0x75, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x61, 0x6e,
+ 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x70, 0x75, 0x73,
+ 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x08, 0x70, 0x75, 0x73,
+ 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73,
+ 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x07, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0a, 0x72, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63,
+ 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x04, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61,
+ 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74,
+ 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65,
+ 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x42,
+ 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a,
+ 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63,
+ 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x42, 0x0b, 0x0a, 0x09,
+ 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xf8, 0x01, 0x0a, 0x1b, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66,
+ 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x54, 0x0a, 0x0c,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75,
+ 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88,
+ 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f,
+ 0x22, 0x69, 0x0a, 0x27, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xa6, 0x02, 0x0a, 0x16,
+ 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x50, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c,
+ 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69,
+ 0x6c, 0x65, 0x64, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x36, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f,
+ 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75,
+ 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61,
+ 0x69, 0x6c, 0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
+ 0x22, 0x72, 0x0a, 0x1c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x00, 0x12, 0x14, 0x0a,
+ 0x10, 0x4f, 0x50, 0x45, 0x4e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x49, 0x4e, 0x49,
+ 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x55, 0x4e, 0x44, 0x43, 0x48, 0x41, 0x4e, 0x4e,
+ 0x45, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x55,
+ 0x4e, 0x44, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45,
+ 0x54, 0x45, 0x10, 0x03, 0x22, 0x4b, 0x0a, 0x1b, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e,
+ 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x45, 0x72,
+ 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x12, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x22, 0xca, 0x01, 0x0a, 0x14, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64,
+ 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x44, 0x65, 0x73, 0x63, 0x52, 0x07, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01,
+ 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52,
+ 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x22, 0x3b,
+ 0x0a, 0x15, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xcf, 0x04, 0x0a, 0x0c,
+ 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06,
+ 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
+ 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72,
+ 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x26,
+ 0x0a, 0x0c, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0b, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x4d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75,
+ 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48,
+ 0x03, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72,
+ 0x79, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
+ 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x72, 0x65, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x72, 0x65, 0x63, 0x75, 0x72,
+ 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x13, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x65, 0x50, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x12,
+ 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69,
+ 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x0f, 0x72, 0x65, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x22, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20,
+ 0x01, 0x28, 0x08, 0x48, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65,
+ 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x71, 0x75, 0x61,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x62,
+ 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0d, 0x0a,
+ 0x0b, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x12, 0x0a, 0x10,
+ 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f,
+ 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65,
+ 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x22, 0xcc, 0x01,
+ 0x0a, 0x0d, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63,
0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
@@ -21796,637 +38664,2930 @@ var file_node_proto_rawDesc = []byte{
0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73,
0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65,
- 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a,
- 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05,
- 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62,
- 0x65, 0x6c, 0x22, 0xf8, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
- 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
- 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x06, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x22, 0x37, 0x0a,
- 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
- 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08,
- 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41,
- 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x31, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
- 0x73, 0x68, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x39, 0x0a,
- 0x10, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x25, 0x0a, 0x04, 0x70, 0x61, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61,
- 0x79, 0x73, 0x52, 0x04, 0x70, 0x61, 0x79, 0x73, 0x22, 0x9e, 0x06, 0x0a, 0x0c, 0x4c, 0x69, 0x73,
- 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
- 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65,
- 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48,
- 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
- 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
- 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
- 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
- 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
- 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01,
- 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
- 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
- 0x32, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
- 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x07,
- 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18,
- 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x08, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f,
- 0x66, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52,
- 0x0d, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x50, 0x61, 0x72, 0x74, 0x73, 0x88, 0x01,
- 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18,
- 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0a, 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e,
- 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61,
- 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07,
- 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49,
- 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54,
- 0x45, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
- 0x64, 0x5f, 0x61, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09,
- 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
- 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x72,
- 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65,
- 0x72, 0x5f, 0x6f, 0x66, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65,
- 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x10, 0x4c, 0x69, 0x73,
- 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a,
- 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88,
- 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69, 0x73,
- 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29,
- 0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c,
- 0x63, 0x73, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x4c, 0x69,
- 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x28, 0x0a, 0x10,
- 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2c,
- 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x49, 0x0a, 0x09,
- 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48,
- 0x74, 0x6c, 0x63, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74,
- 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69,
- 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
- 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74,
- 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x48, 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
- 0x22, 0x2a, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c,
- 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x4f,
- 0x55, 0x54, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x01, 0x22, 0xcf, 0x04, 0x0a,
- 0x0c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a,
- 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65,
- 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65,
- 0x72, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12,
- 0x26, 0x0a, 0x0c, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0b, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74,
- 0x79, 0x4d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c,
- 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04,
- 0x48, 0x03, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69,
- 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x63,
- 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x72, 0x65,
- 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20,
- 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
- 0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x72, 0x65, 0x63, 0x75,
- 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77,
- 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x13, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72,
- 0x65, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x88, 0x01, 0x01,
- 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c,
- 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x0f, 0x72, 0x65,
- 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01,
- 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x0b,
- 0x20, 0x01, 0x28, 0x08, 0x48, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73,
- 0x65, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42,
- 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x71, 0x75,
- 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61,
- 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0d,
- 0x0a, 0x0b, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x12, 0x0a,
- 0x10, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73,
- 0x65, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
- 0x5f, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72,
- 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x42,
- 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x22, 0xcc,
- 0x01, 0x0a, 0x0d, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61,
- 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74,
- 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73,
- 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55,
- 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73,
- 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x18,
- 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
- 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x6d, 0x0a,
- 0x0b, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x03,
- 0x6c, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x65, 0x6e,
- 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79,
- 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c, 0x65, 0x6e, 0x42, 0x0c,
- 0x0a, 0x0a, 0x5f, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x26, 0x0a, 0x0c,
- 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06,
- 0x74, 0x6f, 0x74, 0x6c, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x6f,
- 0x74, 0x6c, 0x65, 0x6e, 0x22, 0x41, 0x0a, 0x14, 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73, 0x74,
- 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07,
- 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6e,
- 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x2f, 0x0a, 0x15, 0x53, 0x65, 0x6e, 0x64, 0x63,
- 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xf0, 0x02, 0x0a, 0x11, 0x53, 0x65, 0x74,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e,
- 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2a,
- 0x0a, 0x07, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07,
- 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x65,
- 0x65, 0x70, 0x70, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x66, 0x65,
- 0x65, 0x70, 0x70, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d,
- 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
- 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e,
- 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x18, 0x05,
+ 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x18, 0x0a,
+ 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88,
+ 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x39, 0x0a, 0x18,
+ 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x7d, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63,
+ 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x12, 0x16,
+ 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0xcf, 0x01, 0x0a, 0x17, 0x4f, 0x70, 0x65, 0x6e, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70,
+ 0x73, 0x62, 0x74, 0x12, 0x3a, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xe0, 0x02, 0x0a, 0x18, 0x4f, 0x70, 0x65,
+ 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d,
+ 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52,
+ 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
+ 0x73, 0x62, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63,
+ 0x75, 0x72, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
+ 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x19, 0x72,
+ 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
+ 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01,
+ 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72,
+ 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x1c, 0x0a,
+ 0x1a, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x5e, 0x0a, 0x1c, 0x4f,
+ 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x96, 0x04, 0x0a, 0x17,
+ 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69,
+ 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e,
+ 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x12, 0x40, 0x0a, 0x12, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72,
+ 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
+ 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x0f, 0x66,
+ 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x48, 0x01, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
+ 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x08, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73,
+ 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63,
+ 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61,
+ 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x15, 0x0a,
+ 0x13, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
+ 0x74, 0x6f, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61,
+ 0x6d, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c,
+ 0x65, 0x61, 0x73, 0x65, 0x22, 0xe0, 0x02, 0x0a, 0x18, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
+ 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x70, 0x73, 0x62, 0x74, 0x12, 0x49, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69,
+ 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52,
+ 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73,
+ 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64,
+ 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x72, 0x69,
+ 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x19, 0x72, 0x65, 0x71, 0x75, 0x69,
+ 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e,
+ 0x70, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x17, 0x72, 0x65,
+ 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49,
+ 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x72, 0x65,
+ 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64,
+ 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x5e, 0x0a, 0x1c, 0x4f, 0x70, 0x65, 0x6e, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e,
+ 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65,
+ 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x73,
+ 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64,
+ 0x50, 0x73, 0x62, 0x74, 0x22, 0x5f, 0x0a, 0x1a, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74,
+ 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x4e, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x70, 0x73, 0x62, 0x74, 0x22, 0x91, 0x03, 0x0a, 0x1a, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x12, 0x4b, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00,
+ 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x70, 0x73, 0x62, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65,
+ 0x63, 0x75, 0x72, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66,
+ 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x08,
+ 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
+ 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19,
+ 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
+ 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48,
+ 0x02, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a,
+ 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b,
+ 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x1c, 0x0a, 0x1a, 0x5f,
+ 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
+ 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x60, 0x0a, 0x1e, 0x4f, 0x70, 0x65,
+ 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
+ 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x0b, 0x50,
+ 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x6c, 0x65,
+ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x65, 0x6e, 0x88, 0x01,
+ 0x01, 0x12, 0x21, 0x0a, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65,
+ 0x73, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c, 0x65, 0x6e, 0x42, 0x0c, 0x0a, 0x0a,
+ 0x5f, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x26, 0x0a, 0x0c, 0x50, 0x69,
+ 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x6f,
+ 0x74, 0x6c, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x6f, 0x74, 0x6c,
+ 0x65, 0x6e, 0x22, 0xb9, 0x01, 0x0a, 0x0d, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
+ 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52,
+ 0x0a, 0x73, 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x70,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x70,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x64,
+ 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x6f,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x97,
+ 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53,
+ 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
+ 0x6e, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73,
+ 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x55, 0x0a, 0x0d, 0x50, 0x6c, 0x75, 0x67,
+ 0x69, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a,
+ 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61,
+ 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x22,
+ 0x47, 0x0a, 0x14, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74,
+ 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x69, 0x6e,
+ 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69,
+ 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x52, 0x0a, 0x15, 0x52, 0x65, 0x6e, 0x65,
+ 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x39, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70,
+ 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x52, 0x09, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xdb, 0x04, 0x0a,
+ 0x16, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61,
+ 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12,
+ 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
+ 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0f, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12,
+ 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
+ 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
+ 0x74, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x70,
+ 0x61, 0x72, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x05, 0x70, 0x61,
+ 0x72, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73,
+ 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0e, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x50, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x52, 0x65,
+ 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
+ 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74,
+ 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x22,
+ 0x45, 0x0a, 0x1c, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
+ 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a,
+ 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41,
+ 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f,
+ 0x70, 0x61, 0x72, 0x74, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64,
+ 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x03, 0x0a, 0x0e, 0x52,
+ 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a,
+ 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x61,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52,
+ 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28,
+ 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x06, 0x6d,
+ 0x61, 0x78, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x64,
+ 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x6d, 0x61,
+ 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x74,
+ 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x08,
+ 0x72, 0x65, 0x74, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x04, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88,
+ 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x05, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a,
+ 0x0e, 0x64, 0x65, 0x76, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x18,
+ 0x08, 0x20, 0x01, 0x28, 0x08, 0x48, 0x06, 0x52, 0x0c, 0x64, 0x65, 0x76, 0x55, 0x73, 0x65, 0x53,
+ 0x68, 0x61, 0x64, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78,
+ 0x66, 0x65, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79,
+ 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0e,
+ 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x64, 0x65, 0x76,
+ 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x22, 0xa4, 0x03, 0x0a, 0x0f,
+ 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
+ 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 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, 0x1d, 0x0a,
+ 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05,
+ 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x61, 0x72,
+ 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53,
+ 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65,
+ 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65,
+ 0x6e, 0x65, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74,
+ 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x36, 0x0a, 0x0d, 0x52, 0x65,
+ 0x6e, 0x65, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43,
+ 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e,
+ 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
+ 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x86, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e,
+ 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70,
+ 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12,
+ 0x21, 0x0a, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01,
+ 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x42,
+ 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x5b, 0x0a, 0x15, 0x52,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65,
+ 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xae, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f,
+ 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x12, 0x21,
+ 0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2a, 0x0a,
+ 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f,
+ 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x41, 0x0a, 0x14, 0x53, 0x65, 0x6e,
+ 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73,
+ 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x2f, 0x0a, 0x15,
+ 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xde, 0x01,
+ 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05,
+ 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75,
+ 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75,
+ 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xea,
+ 0x05, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21,
+ 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73,
+ 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
+ 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72,
+ 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
+ 0x32, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0c, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28,
+ 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f,
+ 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x08, 0x70,
+ 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c,
+ 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48,
+ 0x06, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
+ 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
+ 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x36, 0x0a, 0x11,
+ 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a,
+ 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52,
+ 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42,
+ 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
+ 0x64, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65,
+ 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63,
+ 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70,
+ 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x7f, 0x0a, 0x17, 0x53,
+ 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x66, 0x69, 0x72, 0x73, 0x74, 0x49,
+ 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2d, 0x0a,
+ 0x04, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x48, 0x6f, 0x70, 0x73, 0x52, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x22, 0x1a, 0x0a, 0x18,
+ 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x0a, 0x14, 0x53, 0x65, 0x6e, 0x64,
+ 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x6f, 0x70, 0x73,
+ 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
+ 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0d, 0x52, 0x03, 0x74, 0x6c, 0x76, 0x22, 0xf0, 0x02, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x07,
+ 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65,
+ 0x65, 0x62, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x65, 0x65, 0x70,
+ 0x70, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x66, 0x65, 0x65, 0x70,
+ 0x70, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x88, 0x01,
+ 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
+ 0x03, 0x52, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a,
+ 0x0c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20,
+ 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x65,
+ 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
+ 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48,
+ 0x05, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69,
+ 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73,
+ 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x65, 0x65, 0x70, 0x70, 0x6d, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x68, 0x74, 0x6c,
+ 0x63, 0x6d, 0x61, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65,
+ 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
+ 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x22, 0x49, 0x0a, 0x12, 0x53, 0x65, 0x74,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x33, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xfb, 0x04, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70,
+ 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65,
+ 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f,
+ 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
+ 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f,
+ 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e,
+ 0x74, 0x68, 0x73, 0x12, 0x3e, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68,
+ 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d,
+ 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x17, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68,
+ 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x77, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x14, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x48,
+ 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x12,
+ 0x3e, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x12, 0x6d, 0x61, 0x78,
+ 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
+ 0x3c, 0x0a, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d,
+ 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x02, 0x52, 0x15, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x48, 0x74, 0x6c, 0x63,
+ 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x6f, 0x48, 0x69, 0x67, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a,
+ 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69,
+ 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f,
+ 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x13,
+ 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f,
+ 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x77, 0x42,
+ 0x1b, 0x0a, 0x19, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63,
+ 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x42, 0x14, 0x0a, 0x12,
+ 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69,
+ 0x74, 0x73, 0x22, 0x49, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x15,
+ 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76,
+ 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x76, 0x61, 0x6c, 0x22, 0x41, 0x0a,
+ 0x11, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x22, 0xf5, 0x02, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01,
+ 0x01, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x12, 0x15, 0x0a, 0x03, 0x73,
+ 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x03, 0x73, 0x65, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74,
+ 0x72, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69,
+ 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x48, 0x04, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x49, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x05, 0x52, 0x09, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f,
+ 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x73, 0x65, 0x74, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x42, 0x0d, 0x0a, 0x0b,
+ 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x22, 0x45, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x70,
+ 0x73, 0x62, 0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x70, 0x73, 0x62, 0x74, 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, 0x22,
+ 0x2c, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62, 0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x22, 0x32, 0x0a,
+ 0x12, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74,
+ 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
+ 0x22, 0x2e, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x22, 0x5f, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e,
+ 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x63, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x65, 0x63, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x7a,
+ 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x62, 0x61, 0x73,
+ 0x65, 0x22, 0x8d, 0x02, 0x0a, 0x12, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74,
+ 0x69, 0x76, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12,
+ 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
+ 0x12, 0x25, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
+ 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x01, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x88,
+ 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72,
+ 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x0c, 0x66, 0x6f, 0x72,
+ 0x63, 0x65, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x42, 0x11, 0x0a, 0x0f,
+ 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x42,
+ 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
+ 0x65, 0x22, 0x29, 0x0a, 0x13, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x22, 0x7c, 0x0a, 0x14,
+ 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x5f,
+ 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x73,
+ 0x69, 0x67, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x15, 0x53, 0x70,
+ 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x49, 0x0a, 0x14, 0x53, 0x70, 0x6c, 0x69, 0x63,
+ 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12,
+ 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73,
+ 0x62, 0x74, 0x22, 0x5c, 0x0a, 0x15, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70,
+ 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12,
+ 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73,
+ 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64,
+ 0x22, 0x57, 0x0a, 0x16, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70,
+ 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73,
+ 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x1d,
+ 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48,
+ 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a,
+ 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x5f, 0x0a, 0x17, 0x55, 0x6e, 0x72,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
+ 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xcb, 0x01, 0x0a, 0x1b, 0x55,
+ 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12,
+ 0x0a, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f,
+ 0x75, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x64, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f,
+ 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0f,
+ 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x88,
+ 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f,
+ 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x67,
+ 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
+ 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23,
+ 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b,
+ 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42,
+ 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x22, 0xb3,
+ 0x01, 0x0a, 0x15, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x67, 0x72,
+ 0x61, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48,
+ 0x00, 0x52, 0x0c, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x73, 0x88,
+ 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x01, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x13, 0x0a, 0x02, 0x74,
+ 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x02, 0x74, 0x78, 0x88, 0x01, 0x01,
+ 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03,
+ 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70,
+ 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f,
+ 0x70, 0x73, 0x62, 0x74, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42, 0x07, 0x0a, 0x05, 0x5f,
+ 0x74, 0x78, 0x69, 0x64, 0x22, 0x65, 0x0a, 0x16, 0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20,
+ 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
+ 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x00, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x42,
+ 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x3b, 0x0a, 0x17, 0x57,
+ 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68,
+ 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f,
+ 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x9a, 0x02, 0x0a, 0x0b, 0x57, 0x61, 0x69,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73,
+ 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x61,
+ 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75, 0x62,
+ 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x3c, 0x0a, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x61, 0x69, 0x74,
+ 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73,
+ 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x53, 0x10,
+ 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x53, 0x10, 0x01, 0x12,
+ 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x02, 0x22, 0x36, 0x0a,
+ 0x0d, 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0b,
+ 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55,
+ 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4c, 0x45,
+ 0x54, 0x45, 0x44, 0x10, 0x02, 0x22, 0xc6, 0x02, 0x0a, 0x0c, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73,
+ 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69,
+ 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73,
+ 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65,
+ 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x03, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
+ 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79,
+ 0x73, 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x53,
+ 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x53, 0x10, 0x01,
+ 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x02, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xef,
+ 0x05, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x3f,
+ 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
+ 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
+ 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65,
+ 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b,
+ 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04,
+ 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75,
+ 0x70, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72, 0x6f,
+ 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52,
+ 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12,
+ 0x22, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x09, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69,
+ 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c,
+ 0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x07, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x06, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
+ 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0b, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x22, 0x89, 0x01, 0x0a, 0x11, 0x57, 0x61, 0x69, 0x74,
+ 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a, 0x0a,
+ 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49,
+ 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02,
+ 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0a, 0x0a,
+ 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d,
+ 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45, 0x52,
+ 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10,
+ 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45,
+ 0x44, 0x10, 0x08, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08,
+ 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c,
+ 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72,
+ 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c,
+ 0x63, 0x5f, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x22, 0x3c, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x9d,
+ 0x24, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x88, 0x01, 0x01, 0x12, 0x31,
+ 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x73, 0x12, 0x4d, 0x0a, 0x11, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x70,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49, 0x6d,
+ 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x10,
+ 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73,
+ 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
+ 0x52, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x69, 0x67,
+ 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x02, 0x52, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72,
+ 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x88,
+ 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70, 0x72,
+ 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x04, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63,
+ 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x72,
+ 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52,
+ 0x07, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e, 0x64,
+ 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x0a, 0x20,
+ 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67,
+ 0x69, 0x6e, 0x12, 0x2a, 0x0a, 0x0e, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72,
+ 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x0d, 0x62, 0x6f,
+ 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x28,
+ 0x0a, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x62, 0x18,
+ 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0c, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65,
+ 0x70, 0x65, 0x72, 0x44, 0x62, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x61, 0x6c, 0x77, 0x61,
+ 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x0d, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x08, 0x52, 0x0e, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x73, 0x65, 0x50,
+ 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f,
+ 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x48, 0x09, 0x52, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f,
+ 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x0f,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x88, 0x01,
+ 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0b, 0x52, 0x0d, 0x6c, 0x61, 0x72,
+ 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a,
+ 0x16, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x75,
+ 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0c, 0x52,
+ 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x44, 0x75, 0x61,
+ 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x15, 0x65, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e,
+ 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0d, 0x52, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72,
+ 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x88,
+ 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
+ 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0e, 0x52, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72,
+ 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72,
+ 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x14,
+ 0x20, 0x01, 0x28, 0x08, 0x48, 0x0f, 0x52, 0x12, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
+ 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x52, 0x0a,
+ 0x23, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68,
+ 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e,
+ 0x64, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x48, 0x10, 0x52, 0x20, 0x65, 0x78,
+ 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f,
+ 0x77, 0x6e, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01,
+ 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x16,
+ 0x20, 0x01, 0x28, 0x08, 0x48, 0x11, 0x52, 0x17, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
+ 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
+ 0x61, 0x6c, 0x5f, 0x71, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08,
+ 0x48, 0x12, 0x52, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
+ 0x51, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x1d, 0x65, 0x78,
+ 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61,
+ 0x64, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x18, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x13, 0x52, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x5f,
+ 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
+ 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x48, 0x14, 0x52, 0x17, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
+ 0x6b, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
+ 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x15,
+ 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x72, 0x67, 0x62, 0x18, 0x1b, 0x20, 0x01, 0x28,
+ 0x0c, 0x48, 0x16, 0x52, 0x03, 0x72, 0x67, 0x62, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x61,
+ 0x6c, 0x69, 0x61, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x17, 0x52, 0x05, 0x61, 0x6c,
+ 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x70, 0x69, 0x64, 0x5f, 0x66, 0x69,
+ 0x6c, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x18, 0x52, 0x07, 0x70, 0x69, 0x64, 0x46,
+ 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
+ 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x19, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69,
+ 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x74, 0x63, 0x68,
+ 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28,
+ 0x0d, 0x48, 0x1a, 0x52, 0x0f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x6c,
+ 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x5f, 0x6c,
+ 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x20,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1b, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x63, 0x6b, 0x74,
+ 0x69, 0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
+ 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73,
+ 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1c, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
+ 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d,
+ 0x48, 0x1d, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01,
+ 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x23,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1e, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x6e, 0x61,
+ 0x6c, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74,
+ 0x69, 0x6d, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1f, 0x52, 0x0a, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x66, 0x65,
+ 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x20, 0x52, 0x07,
+ 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65,
+ 0x73, 0x63, 0x61, 0x6e, 0x18, 0x26, 0x20, 0x01, 0x28, 0x12, 0x48, 0x21, 0x52, 0x06, 0x72, 0x65,
+ 0x73, 0x63, 0x61, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x66, 0x65, 0x65, 0x5f, 0x70,
+ 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d,
+ 0x48, 0x22, 0x52, 0x0d, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68,
+ 0x69, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x28, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x23, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72,
+ 0x65, 0x6e, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68,
+ 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x48, 0x24, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d,
+ 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c,
+ 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2a,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x48, 0x03, 0x52, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12,
- 0x27, 0x0a, 0x0c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65,
- 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x0f, 0x69, 0x67, 0x6e, 0x6f,
- 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x08, 0x48, 0x05, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69,
- 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x62,
- 0x61, 0x73, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x65, 0x65, 0x70, 0x70, 0x6d, 0x42, 0x0a,
- 0x0a, 0x08, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x68,
- 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x65, 0x6e, 0x66, 0x6f, 0x72,
- 0x63, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x67, 0x6e, 0x6f,
- 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x22, 0x49, 0x0a, 0x12, 0x53,
- 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x33, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x08, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xfb, 0x04, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a,
- 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06,
- 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
- 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73,
- 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f,
- 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f,
- 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50,
- 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69,
- 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f,
- 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
- 0x48, 0x01, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d,
- 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
- 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f,
- 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x17, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
- 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f,
- 0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x14, 0x77, 0x61, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x77, 0x88,
- 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74,
- 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x12,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73,
- 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74,
- 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x15, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x48,
- 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x6f, 0x48, 0x69, 0x67, 0x68, 0x88, 0x01, 0x01,
- 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
- 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x42, 0x1a, 0x0a, 0x18, 0x5f,
- 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f,
- 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x77, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x77, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f,
- 0x68, 0x69, 0x67, 0x68, 0x22, 0x32, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e,
- 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69,
- 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e,
- 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x22, 0x2e, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
- 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
- 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x5f, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c,
- 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05,
- 0x72, 0x65, 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x65, 0x63,
- 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x22, 0x65, 0x0a, 0x16, 0x57, 0x61, 0x69, 0x74,
- 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
- 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22,
- 0x3b, 0x0a, 0x17, 0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c,
- 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x9a, 0x02, 0x0a,
- 0x0b, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x09,
- 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52,
- 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x3c, 0x0a, 0x09, 0x69, 0x6e,
- 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
- 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x78, 0x74,
- 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, 0x65, 0x78,
- 0x74, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75,
- 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49,
- 0x43, 0x45, 0x53, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44,
- 0x53, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10,
- 0x02, 0x22, 0x36, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61,
- 0x6d, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12,
- 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07,
- 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x22, 0x89, 0x02, 0x0a, 0x0c, 0x57, 0x61,
- 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x75,
- 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x2e, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09,
- 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x75, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74,
- 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65,
- 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75,
- 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49,
- 0x43, 0x45, 0x53, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44,
- 0x53, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10,
- 0x02, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a,
- 0x08, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65,
- 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x0d, 0x0a, 0x0b, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x22, 0x0e, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcd, 0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72,
- 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
- 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
- 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x74, 0x48, 0x25, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
+ 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x1b, 0x6d, 0x61, 0x78, 0x5f, 0x64,
+ 0x75, 0x73, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72,
+ 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x26, 0x52, 0x17, 0x6d, 0x61, 0x78,
+ 0x44, 0x75, 0x73, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65,
+ 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x63,
+ 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x27, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79,
+ 0x53, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x2d,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x28, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12,
+ 0x28, 0x0a, 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
+ 0x18, 0x2e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x29, 0x52, 0x0c, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
+ 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x69, 0x6e,
+ 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52, 0x08,
+ 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6f,
+ 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2b, 0x52, 0x07,
+ 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x61, 0x75,
+ 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x18, 0x31, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2c,
+ 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x88, 0x01, 0x01, 0x12,
+ 0x19, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2d,
+ 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x64, 0x69,
+ 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x18, 0x33, 0x20, 0x01, 0x28, 0x08, 0x48,
+ 0x2e, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6e, 0x73, 0x88, 0x01, 0x01,
+ 0x12, 0x3d, 0x0a, 0x18, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64,
+ 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x18, 0x34, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x2f, 0x52, 0x16, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64,
+ 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x46, 0x0a, 0x1d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
+ 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x72, 0x74,
+ 0x18, 0x35, 0x20, 0x01, 0x28, 0x12, 0x48, 0x30, 0x52, 0x1a, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
+ 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64,
+ 0x50, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79,
+ 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x48, 0x31,
+ 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x48, 0x73, 0x6d, 0x88, 0x01,
+ 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f,
+ 0x64, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x48, 0x32, 0x52, 0x0b, 0x72, 0x70, 0x63, 0x46,
+ 0x69, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6c, 0x6f,
+ 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x09, 0x48, 0x33, 0x52,
+ 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
+ 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x39, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x34, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x88, 0x01, 0x01,
+ 0x12, 0x1e, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x3a, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x35, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01,
+ 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x73, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x48, 0x36, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x54,
+ 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e,
+ 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x3c,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x37, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46, 0x65, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x64,
+ 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x38, 0x52, 0x09, 0x73,
+ 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x16, 0x66,
+ 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x08, 0x48, 0x39, 0x52, 0x15, 0x66,
+ 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x63, 0x6f, 0x6e,
+ 0x6e, 0x65, 0x63, 0x74, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x15, 0x61, 0x63, 0x63, 0x65, 0x70,
+ 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73,
+ 0x18, 0x3f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3a, 0x52, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
+ 0x48, 0x74, 0x6c, 0x63, 0x54, 0x6c, 0x76, 0x54, 0x79, 0x70, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x35, 0x0a, 0x14, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70,
+ 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x40, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3b, 0x52,
+ 0x12, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77,
+ 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x6c,
+ 0x6c, 0x6f, 0x77, 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x41,
+ 0x20, 0x01, 0x28, 0x08, 0x48, 0x3c, 0x52, 0x13, 0x64, 0x65, 0x76, 0x41, 0x6c, 0x6c, 0x6f, 0x77,
+ 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f,
+ 0x0a, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f,
+ 0x64, 0x6e, 0x73, 0x18, 0x42, 0x20, 0x01, 0x28, 0x08, 0x48, 0x3d, 0x52, 0x0f, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x3d, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x43, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x3e, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x21,
+ 0x0a, 0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x18, 0x44, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x3f, 0x52, 0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x88, 0x01,
+ 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x18,
+ 0x45, 0x20, 0x01, 0x28, 0x04, 0x48, 0x40, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46,
+ 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x6d, 0x69, 0x6e, 0x5f, 0x65, 0x6d, 0x65,
+ 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x46, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x41,
+ 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x47,
+ 0x20, 0x01, 0x28, 0x0d, 0x48, 0x42, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x66, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
+ 0x6b, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70, 0x72,
+ 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
+ 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x62, 0x6f, 0x6f,
+ 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x62, 0x42, 0x13, 0x0a,
+ 0x11, 0x5f, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f,
+ 0x78, 0x79, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x61, 0x72,
+ 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f,
+ 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x75, 0x61,
+ 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72,
+ 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67,
+ 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x42, 0x26, 0x0a, 0x24, 0x5f, 0x65, 0x78, 0x70,
+ 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f,
+ 0x77, 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x17,
+ 0x0a, 0x15, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f,
+ 0x71, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x65, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
+ 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66,
+ 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x61, 0x74, 0x61,
+ 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x42, 0x06, 0x0a, 0x04,
+ 0x5f, 0x72, 0x67, 0x62, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x0b,
+ 0x0a, 0x09, 0x5f, 0x70, 0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f,
+ 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
+ 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x5f,
+ 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6c,
+ 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x13,
+ 0x0a, 0x11, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x72, 0x6d, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c,
+ 0x74, 0x61, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61,
+ 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09,
+ 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x65,
+ 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x42, 0x17, 0x0a,
+ 0x15, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12,
+ 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f,
+ 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63,
+ 0x69, 0x74, 0x79, 0x5f, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72,
+ 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64,
+ 0x64, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72,
+ 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x0d, 0x0a, 0x0b,
+ 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f,
+ 0x70, 0x72, 0x6f, 0x78, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
+ 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
+ 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
+ 0x65, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f,
+ 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f,
+ 0x70, 0x6f, 0x72, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,
+ 0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x70, 0x63, 0x5f, 0x66,
+ 0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, 0x6f, 0x67,
+ 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x70,
+ 0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69,
+ 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73,
+ 0x74, 0x61, 0x6d, 0x70, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x75, 0x62,
+ 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x66, 0x65, 0x74, 0x63, 0x68,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
+ 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x68, 0x74, 0x6c,
+ 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x42, 0x17, 0x0a, 0x15, 0x5f,
+ 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73,
+ 0x77, 0x6f, 0x72, 0x64, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x6c, 0x6c,
+ 0x6f, 0x77, 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x14, 0x0a,
+ 0x12, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f,
+ 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
+ 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x42, 0x15, 0x0a,
+ 0x13, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
+ 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xe1,
+ 0x36, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x48, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x09, 0x64,
+ 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72,
+ 0x48, 0x01, 0x52, 0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x88, 0x01, 0x01,
+ 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6c, 0x65, 0x61, 0x72, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x48, 0x02, 0x52, 0x0c,
+ 0x63, 0x6c, 0x65, 0x61, 0x72, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x47, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x70, 0x70, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73,
+ 0x61, 0x62, 0x6c, 0x65, 0x6d, 0x70, 0x70, 0x48, 0x03, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62,
+ 0x6c, 0x65, 0x4d, 0x70, 0x70, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x61, 0x69, 0x6e,
+ 0x6e, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x4d, 0x61, 0x69, 0x6e, 0x6e, 0x65, 0x74, 0x48, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x69,
+ 0x6e, 0x6e, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x74, 0x65,
+ 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x52, 0x65, 0x67, 0x74, 0x65, 0x73, 0x74, 0x48, 0x05, 0x52, 0x07, 0x72, 0x65, 0x67, 0x74,
+ 0x65, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53,
+ 0x69, 0x67, 0x6e, 0x65, 0x74, 0x48, 0x06, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x54, 0x65, 0x73, 0x74,
+ 0x6e, 0x65, 0x74, 0x48, 0x07, 0x52, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x88, 0x01,
+ 0x01, 0x12, 0x56, 0x0a, 0x10, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x70,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75,
+ 0x67, 0x69, 0x6e, 0x48, 0x08, 0x52, 0x0f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74,
+ 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x6c, 0x75,
+ 0x67, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x48, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67,
+ 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x5f,
+ 0x64, 0x69, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x48, 0x0a, 0x52, 0x09, 0x70,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a, 0x0d, 0x6c,
+ 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0c, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x69, 0x67, 0x68, 0x74,
+ 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x72, 0x48, 0x0b, 0x52, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74,
+ 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x6e, 0x65,
+ 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x48, 0x0c, 0x52, 0x07, 0x6e,
+ 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x63, 0x0a, 0x15, 0x61, 0x6c, 0x6c,
+ 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70,
+ 0x69, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64,
+ 0x61, 0x70, 0x69, 0x73, 0x48, 0x0d, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x44, 0x65, 0x70,
+ 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3e,
+ 0x0a, 0x08, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65,
+ 0x48, 0x0e, 0x52, 0x07, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x50,
+ 0x0a, 0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
+ 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x48, 0x0f, 0x52, 0x0d,
+ 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01,
+ 0x12, 0x54, 0x0a, 0x10, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70,
+ 0x72, 0x6f, 0x78, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x75, 0x73, 0x65, 0x70, 0x72, 0x6f, 0x78,
+ 0x79, 0x48, 0x10, 0x52, 0x0e, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x73, 0x65, 0x50, 0x72,
+ 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e,
+ 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
+ 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x48, 0x11, 0x52, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88,
+ 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x13, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65,
+ 0x74, 0x48, 0x12, 0x52, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x50,
+ 0x0a, 0x0e, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c,
+ 0x61, 0x72, 0x67, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x13, 0x52, 0x0d,
+ 0x6c, 0x61, 0x72, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01,
+ 0x12, 0x66, 0x0a, 0x16, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
+ 0x5f, 0x64, 0x75, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
+ 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x64, 0x75, 0x61, 0x6c, 0x66, 0x75, 0x6e, 0x64, 0x48, 0x14, 0x52,
+ 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x44, 0x75, 0x61,
+ 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x12, 0x65, 0x0a, 0x15, 0x65, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e,
+ 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x70, 0x6c, 0x69,
+ 0x63, 0x69, 0x6e, 0x67, 0x48, 0x15, 0x52, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
+ 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12,
+ 0x75, 0x0a, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f,
+ 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x17,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70,
+ 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x48, 0x16, 0x52, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x5f, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x18, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x48, 0x17,
+ 0x52, 0x12, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x66,
+ 0x66, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x8b, 0x01, 0x0a, 0x23, 0x65, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77,
+ 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18,
+ 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78,
+ 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f,
+ 0x77, 0x6e, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x18,
+ 0x52, 0x20, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x68,
+ 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x6f, 0x0a, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
+ 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61,
+ 0x67, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x70, 0x65, 0x65,
+ 0x72, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x48, 0x19, 0x52, 0x17, 0x65, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x6f, 0x72,
+ 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x62, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x18, 0x1b,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70,
+ 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73,
+ 0x48, 0x1a, 0x52, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
+ 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x10, 0x64, 0x61,
+ 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x1c,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61, 0x74,
+ 0x61, 0x62, 0x61, 0x73, 0x65, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x48, 0x1b, 0x52, 0x0f,
+ 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x31, 0x0a, 0x03, 0x72, 0x67, 0x62, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x67, 0x62, 0x48, 0x1c, 0x52, 0x03, 0x72,
+ 0x67, 0x62, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x1e,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x69,
+ 0x61, 0x73, 0x48, 0x1d, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3e,
+ 0x0a, 0x08, 0x70, 0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x69, 0x64, 0x66, 0x69, 0x6c, 0x65,
+ 0x48, 0x1e, 0x52, 0x07, 0x70, 0x69, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x57,
+ 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d,
+ 0x69, 0x74, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74,
+ 0x73, 0x48, 0x1f, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69,
+ 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x10, 0x77, 0x61, 0x74, 0x63, 0x68,
+ 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x74, 0x63, 0x68, 0x74,
+ 0x69, 0x6d, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x48, 0x20, 0x52, 0x0f, 0x77, 0x61, 0x74,
+ 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x5d, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f,
+ 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65,
+ 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x48, 0x21, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x63,
+ 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56,
+ 0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72,
+ 0x6d, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73,
+ 0x48, 0x22, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x72, 0x6d, 0x73, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64,
+ 0x65, 0x6c, 0x74, 0x61, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x48, 0x23, 0x52, 0x09,
+ 0x63, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a,
+ 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x66, 0x69, 0x6e,
+ 0x61, 0x6c, 0x48, 0x24, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x88,
+ 0x01, 0x01, 0x12, 0x47, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x25, 0x52, 0x0a, 0x63, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x66,
+ 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x48, 0x26, 0x52,
+ 0x07, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x72,
+ 0x65, 0x73, 0x63, 0x61, 0x6e, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x48, 0x27, 0x52, 0x06, 0x72, 0x65,
+ 0x73, 0x63, 0x61, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x51, 0x0a, 0x0f, 0x66, 0x65, 0x65, 0x5f, 0x70,
+ 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x70, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x48, 0x28, 0x52, 0x0d, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72,
+ 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x88, 0x01, 0x01, 0x12, 0x60, 0x0a, 0x14, 0x6d, 0x61,
+ 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x74, 0x6c,
+ 0x63, 0x73, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x4d, 0x61, 0x78, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x74,
+ 0x6c, 0x63, 0x73, 0x48, 0x29, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72,
+ 0x72, 0x65, 0x6e, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x57, 0x0a, 0x11,
+ 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x6d, 0x73, 0x61, 0x74, 0x48,
+ 0x2a, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x57, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61,
+ 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78,
+ 0x69, 0x6d, 0x75, 0x6d, 0x6d, 0x73, 0x61, 0x74, 0x48, 0x2b, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63,
+ 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x71,
+ 0x0a, 0x1b, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
+ 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2d, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x64,
+ 0x75, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x6d,
+ 0x73, 0x61, 0x74, 0x48, 0x2c, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x44, 0x75, 0x73, 0x74, 0x48, 0x74,
+ 0x6c, 0x63, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
+ 0x01, 0x12, 0x54, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
+ 0x79, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x4d, 0x69, 0x6e, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x73,
+ 0x61, 0x74, 0x48, 0x2d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
+ 0x79, 0x53, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18,
+ 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x64,
+ 0x64, 0x72, 0x48, 0x2e, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a,
+ 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x30,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x48, 0x2f, 0x52, 0x0c, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x09,
+ 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x42, 0x69, 0x6e, 0x64, 0x61, 0x64, 0x64, 0x72,
+ 0x48, 0x30, 0x52, 0x08, 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12,
+ 0x3d, 0x0a, 0x07, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65,
+ 0x48, 0x31, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x46,
+ 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x18, 0x33, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6c,
+ 0x69, 0x73, 0x74, 0x65, 0x6e, 0x48, 0x32, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73,
+ 0x74, 0x65, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18,
+ 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x72,
+ 0x6f, 0x78, 0x79, 0x48, 0x33, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12,
+ 0x47, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x18, 0x35,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73,
+ 0x61, 0x62, 0x6c, 0x65, 0x64, 0x6e, 0x73, 0x48, 0x34, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62,
+ 0x6c, 0x65, 0x44, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a, 0x18, 0x61, 0x6e, 0x6e, 0x6f,
+ 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76,
+ 0x65, 0x72, 0x65, 0x64, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64,
+ 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x48, 0x35, 0x52, 0x16, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65,
+ 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x79, 0x0a, 0x1d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
+ 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
+ 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64,
+ 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x70, 0x6f, 0x72, 0x74,
+ 0x48, 0x36, 0x52, 0x1a, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72,
+ 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x88, 0x01,
+ 0x01, 0x12, 0x4d, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68,
+ 0x73, 0x6d, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x68, 0x73, 0x6d, 0x48, 0x37, 0x52,
+ 0x0c, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x48, 0x73, 0x6d, 0x88, 0x01, 0x01,
+ 0x12, 0x4b, 0x0a, 0x0d, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64,
+ 0x65, 0x18, 0x39, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x48, 0x38, 0x52, 0x0b, 0x72,
+ 0x70, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a,
+ 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x6c, 0x65, 0x76, 0x65,
+ 0x6c, 0x48, 0x39, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01,
+ 0x12, 0x44, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x3b,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67,
+ 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x48, 0x3a, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x50, 0x72, 0x65,
+ 0x66, 0x69, 0x78, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69,
+ 0x6c, 0x65, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x4c, 0x6f, 0x67, 0x66, 0x69, 0x6c, 0x65, 0x48, 0x3b, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x46,
+ 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69,
+ 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
+ 0x61, 0x6d, 0x70, 0x73, 0x48, 0x3c, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x73,
+ 0x74, 0x61, 0x6d, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x63,
+ 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x66, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x48, 0x3d, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46,
+ 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x75,
+ 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x48,
+ 0x3e, 0x52, 0x09, 0x73, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
+ 0x68, 0x0a, 0x16, 0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f,
+ 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x48, 0x3f, 0x52,
+ 0x15, 0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x63,
+ 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x88, 0x01, 0x01, 0x12, 0x61, 0x0a, 0x15, 0x61, 0x63, 0x63,
+ 0x65, 0x70, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70,
+ 0x65, 0x73, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x74, 0x6c, 0x76, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x48, 0x40, 0x52, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x48, 0x74, 0x6c,
+ 0x63, 0x54, 0x6c, 0x76, 0x54, 0x79, 0x70, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x60, 0x0a, 0x14,
+ 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73,
+ 0x77, 0x6f, 0x72, 0x64, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x54, 0x6f, 0x72, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x70, 0x61, 0x73,
+ 0x73, 0x77, 0x6f, 0x72, 0x64, 0x48, 0x41, 0x52, 0x12, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x57,
+ 0x0a, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f,
+ 0x64, 0x6e, 0x73, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x6e,
+ 0x73, 0x48, 0x42, 0x52, 0x0f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64,
+ 0x72, 0x44, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69,
+ 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70,
+ 0x75, 0x74, 0x73, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
+ 0x65, 0x64, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x48, 0x43, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75,
+ 0x69, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75,
+ 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
+ 0x66, 0x65, 0x65, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x48, 0x44, 0x52, 0x09, 0x63,
+ 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x63, 0x0a, 0x15, 0x63,
+ 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66,
+ 0x66, 0x73, 0x65, 0x74, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
+ 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x48, 0x45, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
+ 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01,
+ 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65,
+ 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6c, 0x65, 0x61,
+ 0x72, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69,
+ 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x70, 0x70, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x61,
+ 0x69, 0x6e, 0x6e, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x67, 0x74, 0x65, 0x73,
+ 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08,
+ 0x5f, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x69, 0x6d, 0x70,
+ 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x09, 0x0a,
+ 0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x6c, 0x75,
+ 0x67, 0x69, 0x6e, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x69, 0x67, 0x68,
+ 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x65,
+ 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
+ 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x42,
+ 0x0b, 0x0a, 0x09, 0x5f, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f,
+ 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42,
+ 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70,
+ 0x72, 0x6f, 0x78, 0x79, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c,
+ 0x61, 0x72, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, 0x19, 0x0a,
+ 0x17, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64,
+ 0x75, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x65, 0x78, 0x70,
+ 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69,
+ 0x6e, 0x67, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
+ 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
+ 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x42, 0x26, 0x0a, 0x24, 0x5f, 0x65,
+ 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74,
+ 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
+ 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
+ 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x61,
+ 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x42, 0x06,
+ 0x0a, 0x04, 0x5f, 0x72, 0x67, 0x62, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73,
+ 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x14, 0x0a,
+ 0x12, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d,
+ 0x69, 0x74, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d,
+ 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6d, 0x61, 0x78,
+ 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
+ 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64,
+ 0x65, 0x6c, 0x74, 0x61, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69,
+ 0x6e, 0x61, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74,
+ 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f,
+ 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x42,
+ 0x17, 0x0a, 0x15, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c,
+ 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14,
+ 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x73,
+ 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70,
+ 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64,
+ 0x64, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f,
+ 0x61, 0x64, 0x64, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64,
+ 0x64, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x42, 0x08, 0x0a,
+ 0x06, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69, 0x73, 0x61,
+ 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x61, 0x6e, 0x6e, 0x6f,
+ 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76,
+ 0x65, 0x72, 0x65, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63,
+ 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65,
+ 0x64, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79,
+ 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x70, 0x63,
+ 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c,
+ 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x67,
+ 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x67, 0x5f,
+ 0x66, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x6f, 0x72, 0x63,
+ 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73,
+ 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x66, 0x65, 0x74,
+ 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e,
+ 0x65, 0x63, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x68,
+ 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x42, 0x17, 0x0a,
+ 0x15, 0x5f, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61,
+ 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
+ 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19,
+ 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
+ 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73,
+ 0x65, 0x74, 0x22, 0xb4, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x12, 0x1b, 0x0a,
+ 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x50, 0x0a, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x53, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x2b, 0x0a, 0x1c,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0b, 0x0a, 0x07,
+ 0x43, 0x4d, 0x44, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x00, 0x22, 0x47, 0x0a, 0x1b, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
+ 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x22, 0x4a, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x70, 0x6c, 0x75,
+ 0x67, 0x69, 0x6e, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x70,
+ 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6d, 0x70, 0x70, 0x12, 0x10,
+ 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74,
+ 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67,
+ 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67,
+ 0x69, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x22, 0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x69, 0x6e, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a,
+ 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12,
+ 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x67,
+ 0x74, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x44,
+ 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x22, 0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x54, 0x65, 0x73, 0x74, 0x6e, 0x65,
+ 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03,
+ 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5c, 0x0a, 0x21, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12,
+ 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
+ 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x18, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50,
+ 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f,
+ 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18,
+ 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x56,
+ 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x55, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x69, 0x67, 0x68,
+ 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a,
+ 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x5e, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63,
+ 0x61, 0x74, 0x65, 0x64, 0x61, 0x70, 0x69, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x50, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x5a, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x70, 0x6c,
+ 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73,
+ 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
+ 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x59, 0x0a,
+ 0x20, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x75, 0x73, 0x65, 0x70, 0x72, 0x6f, 0x78,
+ 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c,
+ 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x44, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61,
+ 0x65, 0x6d, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4f,
+ 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x4b, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x26,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x64, 0x75,
+ 0x61, 0x6c, 0x66, 0x75, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0x52, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
+ 0x61, 0x6c, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x22, 0x57, 0x0a, 0x2b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a,
+ 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f,
+ 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x5e, 0x0a, 0x32, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x55, 0x0a, 0x29, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
+ 0x6c, 0x70, 0x65, 0x65, 0x72, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03,
+ 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16,
+ 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x51, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65,
+ 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x12,
+ 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65,
+ 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x21, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
+ 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4c, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x67, 0x62, 0x12, 0x1b,
+ 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x22, 0x4e, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1b,
+ 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x69, 0x64, 0x66, 0x69, 0x6c, 0x65,
+ 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49, 0x67, 0x6e, 0x6f, 0x72,
+ 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x58, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65,
+ 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
+ 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x23, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x4d, 0x61, 0x78, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x62, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12,
+ 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x58, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x75, 0x6e,
+ 0x64, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
+ 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x52, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x64, 0x65, 0x6c, 0x74, 0x61,
+ 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x66,
+ 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e,
+ 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x53, 0x0a, 0x1c, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50,
+ 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0x4f, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x12, 0x1b, 0x0a, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52,
+ 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x56, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x70, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x6f, 0x73, 0x68, 0x69, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e,
+ 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d,
+ 0x61, 0x78, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x74, 0x6c, 0x63,
+ 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16,
+ 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x67, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c, 0x63,
+ 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x6d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x67, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
+ 0x6d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73,
+ 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x6f, 0x0a, 0x29, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61,
+ 0x78, 0x64, 0x75, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72,
+ 0x65, 0x6d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61,
+ 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x20, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x4d, 0x69, 0x6e, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x73, 0x61, 0x74, 0x12, 0x1b,
+ 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x88,
+ 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x22, 0x51,
+ 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x41, 0x64, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x73, 0x22, 0x59, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61,
+ 0x64, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74,
+ 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53,
+ 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20,
+ 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x55, 0x0a, 0x1a,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x42, 0x69, 0x6e, 0x64, 0x61, 0x64, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x73, 0x22, 0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65,
+ 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73,
+ 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x55, 0x0a, 0x1c, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x41, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x4e, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x1b, 0x0a, 0x09,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x22, 0x48, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x6e,
+ 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03,
+ 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x28,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69,
+ 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x12, 0x7c, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x5f, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72,
+ 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e,
+ 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65,
+ 0x72, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x52, 0x08, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52,
+ 0x0a, 0x31, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72,
+ 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f,
+ 0x73, 0x74, 0x72, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x52, 0x55, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a,
+ 0x05, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x55, 0x54, 0x4f,
+ 0x10, 0x02, 0x22, 0x63, 0x0a, 0x2c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65,
+ 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x70, 0x6f,
+ 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12,
+ 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4a, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x6e, 0x63,
+ 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x68, 0x73, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x22, 0x54, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65,
+ 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74,
+ 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74,
+ 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x51, 0x0a, 0x1a, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c,
+ 0x6f, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x1b,
+ 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0x54, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x58, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x74,
+ 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0x56, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x66, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72,
+ 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x56, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53, 0x75,
+ 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
+ 0x22, 0x53, 0x0a, 0x27, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69,
+ 0x63, 0x65, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73,
+ 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x63, 0x63, 0x65, 0x70,
+ 0x74, 0x68, 0x74, 0x6c, 0x63, 0x74, 0x6c, 0x76, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1b, 0x0a,
+ 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x54, 0x6f, 0x72, 0x73, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
+ 0x5a, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64,
+ 0x72, 0x64, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f,
+ 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42,
+ 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x61, 0x0a, 0x28, 0x4c,
+ 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
+ 0x64, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52,
+ 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x12, 0x1b, 0x0a,
+ 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x22, 0x5c, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0x87, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x3d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x1b, 0x0a, 0x19, 0x4c, 0x69,
+ 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73,
+ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x99, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74,
+ 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x46, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69,
+ 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x22, 0x24, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69,
+ 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0d, 0x0a, 0x0b, 0x53, 0x74, 0x6f,
+ 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x79, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x70,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75,
+ 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
+ 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x6f, 0x70,
+ 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x88, 0x01, 0x01, 0x22, 0x23, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x5f, 0x43, 0x4f,
+ 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x22, 0x38, 0x0a, 0x0b, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x88, 0x01,
+ 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0xa7, 0x01,
+ 0x0a, 0x0c, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21,
+ 0x0a, 0x04, 0x68, 0x65, 0x6c, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x04, 0x68, 0x65, 0x6c,
+ 0x70, 0x12, 0x46, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c,
+ 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x46, 0x6f,
+ 0x72, 0x6d, 0x61, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x1c, 0x0a, 0x0e, 0x48, 0x65, 0x6c,
+ 0x70, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x0a, 0x0a, 0x06, 0x53,
+ 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x00, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x66, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x22, 0x7c, 0x0a, 0x08, 0x48, 0x65, 0x6c, 0x70, 0x48,
+ 0x65, 0x6c, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1a, 0x0a,
+ 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x76,
+ 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65,
+ 0x72, 0x62, 0x6f, 0x73, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70,
+ 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
+ 0x74, 0x69, 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, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
+ 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x1b, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72,
+ 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x32, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
+ 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x22, 0x1b, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70,
+ 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63,
+ 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x28, 0x0a, 0x14, 0x53, 0x74,
+ 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x63, 0x62, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52,
+ 0x03, 0x73, 0x63, 0x62, 0x22, 0x78, 0x0a, 0x16, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22,
+ 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x5e,
+ 0x0a, 0x17, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70,
+ 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0c, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x61, 0x70, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x61, 0x70, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x61, 0x70,
+ 0x79, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x70, 0x79, 0x22, 0xc7,
+ 0x09, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61,
+ 0x70, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x61, 0x70, 0x79, 0x12, 0x18,
+ 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x33, 0x0a, 0x0f, 0x72, 0x6f, 0x75, 0x74,
+ 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d,
+ 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x31, 0x0a,
+ 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
- 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x68, 0x61, 0x73, 0x68, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
- 0x6d, 0x73, 0x61, 0x74, 0x22, 0x1b, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f,
- 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x22, 0x42, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
- 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62,
- 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x22, 0x1b, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72,
- 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b,
- 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x28, 0x0a, 0x14, 0x53, 0x74, 0x61,
- 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x63, 0x62, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x03,
- 0x73, 0x63, 0x62, 0x22, 0xbc, 0x01, 0x0a, 0x15, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74,
- 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a,
- 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x65,
- 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x6f,
- 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
- 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0d, 0x48, 0x01, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01,
- 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01,
- 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74,
- 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
- 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69,
- 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e,
- 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0d,
- 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69,
- 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65,
- 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x45, 0x76, 0x65,
- 0x6e, 0x74, 0x73, 0x22, 0x97, 0x03, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74,
- 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x10, 0x0a,
- 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12,
- 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03,
+ 0x6e, 0x74, 0x52, 0x0c, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x3a, 0x0a, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61,
+ 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73,
+ 0x65, 0x46, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x15,
+ 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64,
+ 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x12, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46,
+ 0x65, 0x65, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x33, 0x0a, 0x0f,
+ 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
+ 0x6e, 0x74, 0x52, 0x0d, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x12, 0x31, 0x0a, 0x0e, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x49, 0x6e,
+ 0x4d, 0x73, 0x61, 0x74, 0x12, 0x40, 0x0a, 0x16, 0x6f, 0x75, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72,
+ 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
- 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a,
- 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09,
- 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72,
- 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72,
- 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
- 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
- 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6f, 0x75,
- 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x08,
- 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74,
- 0x78, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x04, 0x74, 0x78, 0x69,
- 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
- 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d,
- 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74,
- 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0d,
- 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x32, 0xe2, 0x20,
- 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66,
- 0x6f, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74,
- 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c,
- 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
- 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09,
- 0x4c, 0x69, 0x73, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x53, 0x65,
- 0x6e, 0x64, 0x50, 0x61, 0x79, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64,
- 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x41, 0x64, 0x64,
- 0x47, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64,
- 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x43,
- 0x6c, 0x65, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69,
- 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x43, 0x68,
- 0x65, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b,
- 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x12, 0x30, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x11, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65,
- 0x65, 0x72, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
- 0x48, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
- 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x44, 0x61, 0x74,
- 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74,
- 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x61, 0x73,
- 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61,
- 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x6e,
- 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x44,
- 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
- 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61,
- 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
- 0x54, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x49, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x78,
- 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x78, 0x70,
- 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x74, 0x52, 0x13, 0x6f, 0x75, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e,
+ 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x48, 0x0a, 0x1a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f,
+ 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74,
+ 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x73, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61,
+ 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x65, 0x65, 0x73, 0x49, 0x6e, 0x4d, 0x73,
+ 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
+ 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x3b,
+ 0x0a, 0x17, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x75,
+ 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x01, 0x52, 0x15, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75,
+ 0x74, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e, 0x75,
+ 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x18, 0x0e, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x49, 0x6e, 0x12, 0x39, 0x0a, 0x16, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x0f, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x02, 0x52, 0x14, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x49, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a,
+ 0x07, 0x61, 0x70, 0x79, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x61, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x12, 0x2b, 0x0a, 0x0f, 0x61, 0x70, 0x79, 0x5f, 0x6f, 0x75,
+ 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x03, 0x52, 0x0d, 0x61, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x70, 0x79, 0x5f, 0x69, 0x6e, 0x18, 0x12, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x79, 0x49, 0x6e, 0x12, 0x29, 0x0a, 0x0e, 0x61, 0x70,
+ 0x79, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x13, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x04, 0x52, 0x0c, 0x61, 0x70, 0x79, 0x49, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69,
+ 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74,
+ 0x61, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x70, 0x79, 0x54, 0x6f, 0x74,
+ 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x11, 0x61, 0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f,
+ 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52,
+ 0x0f, 0x61, 0x70, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
+ 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x61, 0x70, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
+ 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x08, 0x61, 0x70, 0x79, 0x4c, 0x65, 0x61,
+ 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x69,
+ 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x74, 0x69, 0x6c, 0x69,
+ 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69,
+ 0x61, 0x6c, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x12, 0x0a,
+ 0x10, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61,
+ 0x6c, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69,
+ 0x74, 0x69, 0x61, 0x6c, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74,
+ 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x61,
+ 0x70, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x22, 0x8b, 0x02, 0x0a, 0x18, 0x42, 0x6b, 0x70,
+ 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72,
+ 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x73, 0x76, 0x46, 0x6f,
+ 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x69, 0x6c, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x63, 0x73, 0x76, 0x46, 0x69, 0x6c,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64,
+ 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01,
+ 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65,
+ 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69,
+ 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72,
+ 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f,
+ 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x07, 0x65, 0x6e,
+ 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x73, 0x76,
+ 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c,
+ 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73,
+ 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e,
+ 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xea, 0x01, 0x0a, 0x19, 0x42, 0x6b, 0x70, 0x72, 0x64,
+ 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x69, 0x6c, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x73, 0x76, 0x46, 0x69, 0x6c, 0x65, 0x12,
+ 0x59, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75,
+ 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f,
+ 0x6d, 0x65, 0x63, 0x73, 0x76, 0x43, 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52,
+ 0x09, 0x63, 0x73, 0x76, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x57, 0x0a, 0x1b, 0x42, 0x6b,
+ 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x43,
+ 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x49,
+ 0x4e, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4b, 0x4f,
+ 0x49, 0x4e, 0x4c, 0x59, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x48, 0x41, 0x52, 0x4d, 0x4f, 0x4e,
+ 0x59, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x51, 0x55, 0x49, 0x43, 0x4b, 0x42, 0x4f, 0x4f, 0x4b,
+ 0x53, 0x10, 0x03, 0x22, 0x2e, 0x0a, 0x12, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65,
+ 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63,
+ 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f,
+ 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x13, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65,
+ 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x03, 0x74, 0x78,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b,
+ 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x03, 0x74, 0x78,
+ 0x73, 0x22, 0xc4, 0x01, 0x0a, 0x0e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63,
+ 0x74, 0x54, 0x78, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
+ 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12,
+ 0x31, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
+ 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x73, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73,
+ 0x61, 0x74, 0x12, 0x34, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e,
+ 0x73, 0x70, 0x65, 0x63, 0x74, 0x54, 0x78, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52,
+ 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f,
+ 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xc1, 0x04, 0x0a, 0x15, 0x42, 0x6b, 0x70,
+ 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x54, 0x78, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75,
+ 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06,
+ 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75,
+ 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x37, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a,
+ 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x31, 0x0a, 0x0b, 0x63, 0x72, 0x65,
+ 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x63,
+ 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a,
+ 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52,
+ 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a,
+ 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x63, 0x63,
+ 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x12, 0x6f, 0x72,
+ 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
+ 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x61,
+ 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75,
+ 0x74, 0x54, 0x61, 0x67, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x6e, 0x64,
+ 0x5f, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x08, 0x73, 0x70,
+ 0x65, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x65,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x05, 0x52, 0x0c, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69,
+ 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x72, 0x65, 0x64,
+ 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x62, 0x69,
+ 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69,
+ 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0d,
+ 0x0a, 0x0b, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x42, 0x0c, 0x0a,
+ 0x0a, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x61, 0x67, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
+ 0x73, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0d, 0x0a,
+ 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x49, 0x0a, 0x1c,
+ 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65,
+ 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x07,
+ 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
+ 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x59, 0x0a, 0x1d, 0x42, 0x6b, 0x70, 0x72, 0x6c,
+ 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42,
+ 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76,
+ 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x22, 0xc1, 0x06, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61,
+ 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x5d, 0x0a, 0x09,
+ 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x40, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74,
+ 0x73, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
+ 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74,
+ 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x2c, 0x0a,
+ 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
+ 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x64,
+ 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x65,
+ 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x63, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x12, 0x1f, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88,
+ 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
+ 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
+ 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x72, 0x69,
+ 0x67, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x6f, 0x72, 0x69,
+ 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x09, 0x70, 0x61,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78,
+ 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x66, 0x65,
+ 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x08, 0x66, 0x65,
+ 0x65, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x73, 0x5f,
+ 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x48,
+ 0x07, 0x52, 0x0b, 0x69, 0x73, 0x52, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x88, 0x01,
+ 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01,
+ 0x28, 0x0d, 0x48, 0x08, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x22,
+ 0x4a, 0x0a, 0x1f, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x54, 0x79,
+ 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x46, 0x45,
+ 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0b,
+ 0x0a, 0x07, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
+ 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f,
+ 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x72, 0x69,
+ 0x67, 0x69, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
+ 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x69, 0x73,
+ 0x5f, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70,
+ 0x61, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69,
+ 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x22, 0x55, 0x0a, 0x18, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c,
+ 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a,
+ 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61,
+ 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x08,
+ 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x9c, 0x03, 0x0a, 0x18, 0x42, 0x6b, 0x70,
+ 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63,
+ 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12,
+ 0x41, 0x0a, 0x08, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74,
+ 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73,
+ 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x08, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63,
+ 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01,
+ 0x12, 0x20, 0x0a, 0x09, 0x77, 0x65, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x08, 0x77, 0x65, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x6c,
+ 0x6f, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x0d, 0x61, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e,
+ 0x0a, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76,
+ 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0f, 0x61, 0x63, 0x63, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f,
+ 0x0a, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x5f, 0x62, 0x6c,
+ 0x6f, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x73,
+ 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x41, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x88, 0x01, 0x01, 0x42,
+ 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
+ 0x77, 0x65, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x61, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11,
+ 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65,
+ 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x61,
+ 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x6f, 0x0a, 0x20, 0x42, 0x6b, 0x70, 0x72, 0x6c,
+ 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x73, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0c, 0x62,
+ 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b,
+ 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63,
+ 0x6f, 0x69, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x63, 0x6f, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x15, 0x42, 0x6b, 0x70,
+ 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74,
+ 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0f,
+ 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x73, 0x88,
+ 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54,
+ 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69,
+ 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54,
+ 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x6f,
+ 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65,
+ 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x42, 0x6b, 0x70, 0x72, 0x6c,
+ 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42,
+ 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63,
+ 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6f,
+ 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x97, 0x03, 0x0a, 0x1b, 0x42, 0x6b, 0x70,
+ 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d,
+ 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f,
+ 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x03, 0x74, 0x61, 0x67, 0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d,
+ 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73,
+ 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
+ 0x75, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a,
+ 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69,
+ 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74,
+ 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
+ 0x1f, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x01, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01,
+ 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02,
+ 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52,
+ 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a,
+ 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a,
+ 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74,
+ 0x78, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
+ 0x69, 0x64, 0x22, 0x5a, 0x0a, 0x14, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72,
+ 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74,
+ 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61,
+ 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x01, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06,
+ 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x65, 0x6e, 0x64, 0x22, 0x52,
+ 0x0a, 0x15, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x62, 0x6c, 0x61, 0x63, 0x6b,
+ 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65, 0x42, 0x6c,
+ 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x09, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69,
+ 0x73, 0x74, 0x22, 0x40, 0x0a, 0x16, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72,
+ 0x75, 0x6e, 0x65, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05,
+ 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61,
+ 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x03, 0x65, 0x6e, 0x64, 0x22, 0x8e, 0x01, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x72, 0x75,
+ 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6e,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x12, 0x1b, 0x0a,
+ 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6d, 0x65,
+ 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x6d, 0x65,
+ 0x74, 0x68, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x29, 0x0a, 0x11, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x72, 0x75,
+ 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64,
+ 0x22, 0x59, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x22,
+ 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0xa4, 0x01, 0x0a, 0x12,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65,
+ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75,
+ 0x65, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x75,
+ 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x65,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x17, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
+ 0x67, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6e,
+ 0x65, 0x88, 0x01, 0x01, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
+ 0x5f, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x75,
+ 0x6e, 0x65, 0x22, 0x34, 0x0a, 0x10, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x42,
+ 0x07, 0x0a, 0x05, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x11, 0x53, 0x68, 0x6f, 0x77,
+ 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a,
+ 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65,
+ 0x73, 0x52, 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x22, 0xfa, 0x02, 0x0a, 0x0e, 0x53, 0x68, 0x6f,
+ 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x72,
+ 0x75, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x12,
+ 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0c,
+ 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e,
+ 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x15, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x41, 0x73, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x6f,
+ 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x6f,
+ 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x6c,
+ 0x69, 0x73, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0b, 0x62,
+ 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a,
+ 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01,
+ 0x48, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
+ 0x1e, 0x0a, 0x08, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x03, 0x52, 0x07, 0x6f, 0x75, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62,
+ 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c,
+ 0x61, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x72,
+ 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0x87, 0x01, 0x0a, 0x1a, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75,
+ 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
+ 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x52,
+ 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x6c, 0x74, 0x65, 0x72,
+ 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61,
+ 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x22,
+ 0x94, 0x01, 0x0a, 0x26, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e,
+ 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x6c,
+ 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x69,
+ 0x65, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66,
+ 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c,
+ 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07,
+ 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65,
+ 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x22, 0x19, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x22, 0x44, 0x0a, 0x16, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e,
+ 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x68,
+ 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12,
+ 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
+ 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c,
+ 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3e, 0x0a, 0x1d, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4e, 0x6f,
+ 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x1c, 0x0a, 0x1a, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x0c, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66,
+ 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75,
+ 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, 0x23, 0x0a,
+ 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x79, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x61,
+ 0x64, 0x79, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x17, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
+ 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a,
+ 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4f, 0x0a,
+ 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x31, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
+ 0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50,
+ 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31,
+ 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
+ 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
+ 0x73, 0x22, 0x27, 0x0a, 0x14, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
+ 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10,
+ 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x22, 0xac, 0x02, 0x0a, 0x12, 0x50,
+ 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
+ 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43,
+ 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x65,
+ 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
+ 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b,
+ 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
+ 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x61,
+ 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07,
+ 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f,
+ 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74,
+ 0x88, 0x01, 0x01, 0x22, 0x54, 0x0a, 0x16, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
+ 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a,
+ 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12,
+ 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56,
+ 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09,
+ 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f,
+ 0x63, 0x6b, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
+ 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x18, 0x0a, 0x16, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x22, 0x4a, 0x0a, 0x15, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07,
+ 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70,
+ 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x32,
+ 0xf1, 0x40, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x69,
+ 0x6e, 0x66, 0x6f, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66,
+ 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47,
+ 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x15, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
+ 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c,
+ 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e,
+ 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07,
+ 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x79, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65,
+ 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x41,
+ 0x64, 0x64, 0x47, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
+ 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x41, 0x64, 0x64,
+ 0x50, 0x73, 0x62, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x41, 0x64, 0x64, 0x70, 0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x70,
+ 0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6c, 0x65, 0x61, 0x6e,
+ 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f,
+ 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6c,
+ 0x65, 0x61, 0x6e, 0x4f, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75,
+ 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
+ 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x4e, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
+ 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x45, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65,
+ 0x12, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0b, 0x43, 0x6f, 0x6e,
+ 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
+ 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x3c, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
+ 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a,
+ 0x0e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12,
+ 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75,
+ 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f,
+ 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45,
+ 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x18,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x6f,
0x69, 0x63, 0x65, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76,
0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c,
0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
- 0x65, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48,
- 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12,
- 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74,
- 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74,
- 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
- 0x3c, 0x0a, 0x09, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e,
- 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a,
- 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x79, 0x73, 0x12, 0x18, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e,
- 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2a, 0x0a, 0x03, 0x50, 0x61, 0x79, 0x12, 0x0f,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73,
- 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x57, 0x61, 0x69, 0x74, 0x41, 0x6e, 0x79, 0x49, 0x6e, 0x76, 0x6f,
- 0x69, 0x63, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e,
- 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42,
- 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x17, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69,
- 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61,
- 0x79, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64,
- 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x4e, 0x65, 0x77, 0x41, 0x64, 0x64,
- 0x72, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77,
- 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39,
- 0x0a, 0x08, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x4b, 0x65, 0x79,
- 0x53, 0x65, 0x6e, 0x64, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x65,
- 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x12, 0x39, 0x0a, 0x08, 0x46, 0x75, 0x6e, 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73,
- 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08,
- 0x53, 0x65, 0x6e, 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
- 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x50,
- 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73,
- 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x55, 0x74, 0x78, 0x6f, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70,
- 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a,
- 0x09, 0x54, 0x78, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72,
- 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x54,
- 0x78, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54,
- 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x54, 0x78, 0x53,
- 0x65, 0x6e, 0x64, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78,
- 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51,
- 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x73, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
- 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x12, 0x57, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x44, 0x65,
- 0x63, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x79, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65,
- 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x44, 0x65, 0x63, 0x6f,
- 0x64, 0x65, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63,
- 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a,
- 0x0a, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x16, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e,
- 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39,
- 0x0a, 0x08, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x46, 0x65, 0x74,
- 0x63, 0x68, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
- 0x12, 0x42, 0x0a, 0x0b, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12,
- 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
- 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65,
- 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74,
- 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
- 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12,
- 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
- 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x66,
- 0x66, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6f,
- 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x50,
- 0x61, 0x79, 0x73, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61,
- 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12,
- 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
- 0x12, 0x30, 0x0a, 0x05, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x12, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e,
- 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x44, 0x65, 0x76, 0x46, 0x6f, 0x72,
+ 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x44, 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x45, 0x6d, 0x65,
+ 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x1c, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63,
+ 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76,
+ 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07,
+ 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65,
+ 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63,
+ 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x36, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x13, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x14, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x60, 0x0a, 0x15,
+ 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x61,
+ 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a,
+ 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x4c, 0x69,
+ 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53,
+ 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
+ 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73,
+ 0x74, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x79, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65,
+ 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x51, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74,
+ 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61,
+ 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x4d, 0x61, 0x6b, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65,
+ 0x74, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72,
+ 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x2a, 0x0a, 0x03, 0x50, 0x61, 0x79, 0x12, 0x0f, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x15, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e,
+ 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b,
+ 0x0a, 0x0e, 0x57, 0x61, 0x69, 0x74, 0x41, 0x6e, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x57,
+ 0x61, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x42, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x79, 0x12, 0x17,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
+ 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x4e, 0x65, 0x77, 0x41, 0x64, 0x64, 0x72, 0x12, 0x13,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64,
+ 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x57,
+ 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x69,
+ 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x6e,
+ 0x64, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4b, 0x65, 0x79,
+ 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39,
+ 0x0a, 0x08, 0x46, 0x75, 0x6e, 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x53, 0x65, 0x6e,
+ 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64,
+ 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x50, 0x73, 0x62, 0x74,
+ 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67,
+ 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x39, 0x0a, 0x08, 0x55, 0x74, 0x78, 0x6f, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x54, 0x78,
+ 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78,
+ 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x54, 0x78, 0x50, 0x72,
+ 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x70, 0x72,
+ 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x54, 0x78, 0x53, 0x65, 0x6e, 0x64,
+ 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x73, 0x65, 0x6e,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4c,
+ 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12,
+ 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57,
+ 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
+ 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x44, 0x65, 0x63, 0x6f, 0x64,
+ 0x65, 0x50, 0x61, 0x79, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64,
+ 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12,
+ 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x44, 0x65,
+ 0x6c, 0x50, 0x61, 0x79, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61,
+ 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x3f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x12, 0x16, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66,
+ 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x45, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72,
+ 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66,
+ 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x63,
+ 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x46, 0x65, 0x65, 0x72,
+ 0x61, 0x74, 0x65, 0x73, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61,
+ 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x6f,
+ 0x69, 0x63, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69,
+ 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x46, 0x75,
+ 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c,
+ 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f,
+ 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1d, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74,
+ 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61,
+ 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06,
+ 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74,
+ 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x52,
+ 0x6f, 0x75, 0x74, 0x65, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f,
+ 0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61,
+ 0x72, 0x64, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f,
+ 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x4c, 0x69,
+ 0x73, 0x74, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x4c,
+ 0x69, 0x73, 0x74, 0x50, 0x61, 0x79, 0x73, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x74,
+ 0x6c, 0x63, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74,
+ 0x6c, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x46, 0x75, 0x6e,
+ 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d,
+ 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c,
+ 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x4d, 0x75, 0x6c, 0x74, 0x69,
+ 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d,
+ 0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77,
+ 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x30, 0x0a, 0x05, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x12, 0x11, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f,
+ 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70,
+ 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4f, 0x70, 0x65,
+ 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x42, 0x75, 0x6d, 0x70, 0x12, 0x1c, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75,
+ 0x6d, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10,
+ 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x49, 0x6e, 0x69, 0x74,
+ 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x57, 0x0a, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x53,
+ 0x69, 0x67, 0x6e, 0x65, 0x64, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x4f, 0x70, 0x65, 0x6e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x33, 0x0a, 0x06, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x52, 0x65, 0x6e, 0x65, 0x50, 0x61, 0x79,
+ 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e,
+ 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x36, 0x0a, 0x07, 0x52, 0x65, 0x6e, 0x65, 0x50, 0x61, 0x79, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x65, 0x72,
+ 0x76, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
0x00, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d,
0x73, 0x67, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73,
- 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x53,
- 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
- 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b,
- 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x69,
- 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
- 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
- 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
- 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f, 0x57, 0x61, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63,
- 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
- 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x62,
- 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x57, 0x61, 0x69, 0x74, 0x12, 0x10, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x10, 0x2e, 0x63, 0x6c,
- 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65,
- 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72,
- 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65,
- 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x50, 0x72, 0x65, 0x41,
- 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x2e,
- 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e,
- 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63,
- 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45,
- 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x18,
- 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75,
- 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
- 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x42, 0x6b, 0x70, 0x72, 0x4c, 0x69, 0x73,
- 0x74, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b,
- 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69,
- 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x00, 0x42, 0x1f, 0x5a, 0x1d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
- 0x2f, 0x62, 0x72, 0x65, 0x65, 0x7a, 0x2f, 0x6c, 0x73, 0x70, 0x64, 0x2f, 0x63, 0x6c, 0x6e, 0x2f,
- 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x53,
+ 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x51, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e,
+ 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x53, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
+ 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x50, 0x73, 0x62, 0x74, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62,
+ 0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62, 0x74, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42,
+ 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x17, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67,
+ 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65,
+ 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69,
+ 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x70,
+ 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x12, 0x19, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c,
+ 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69,
+ 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e,
+ 0x0a, 0x0f, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74,
+ 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e,
+ 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48,
+ 0x0a, 0x0d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12,
+ 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c,
+ 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f, 0x57, 0x61, 0x69, 0x74,
+ 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1b, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57,
+ 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x57, 0x61, 0x69, 0x74,
+ 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x53,
+ 0x74, 0x6f, 0x70, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x48, 0x65,
+ 0x6c, 0x70, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x50, 0x72, 0x65,
+ 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x1d,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b,
+ 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65,
+ 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x54, 0x0a, 0x11, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x49, 0x6e, 0x76,
+ 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70,
+ 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70,
+ 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x42,
+ 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74,
+ 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b,
+ 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f,
+ 0x42, 0x6b, 0x70, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x70, 0x79, 0x12,
+ 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x61, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61,
+ 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11,
+ 0x42, 0x6b, 0x70, 0x72, 0x44, 0x75, 0x6d, 0x70, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x43, 0x73,
+ 0x76, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70,
+ 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69,
+ 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x42, 0x6b, 0x70, 0x72, 0x49, 0x6e, 0x73, 0x70, 0x65, 0x63,
+ 0x74, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70,
+ 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x60, 0x0a, 0x15, 0x42, 0x6b, 0x70, 0x72, 0x4c, 0x69,
+ 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12,
+ 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
+ 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x42, 0x6b, 0x70, 0x72,
+ 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e,
+ 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x42,
+ 0x6b, 0x70, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1a, 0x2e,
+ 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f,
+ 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x42, 0x6c, 0x61, 0x63,
+ 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x75, 0x6e, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b,
+ 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x75, 0x6e, 0x65, 0x12,
+ 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x72, 0x75, 0x6e, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65,
+ 0x63, 0x6b, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
+ 0x12, 0x3f, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x75, 0x6e, 0x65, 0x12, 0x16,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x15,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77,
+ 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
+ 0x54, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x42, 0x6c, 0x6f, 0x63,
+ 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
+ 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x22, 0x00, 0x30, 0x01, 0x12, 0x69, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
+ 0x62, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69,
+ 0x6c, 0x65, 0x64, 0x12, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01,
+ 0x12, 0x5d, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x12, 0x1f, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70,
+ 0x65, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c,
+ 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x4e,
+ 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01, 0x12,
+ 0x4f, 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x6e,
+ 0x65, 0x63, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01,
+ 0x12, 0x51, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x75, 0x73,
+ 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
+ 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
+ 0x00, 0x30, 0x01, 0x42, 0x1f, 0x5a, 0x1d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x62, 0x72, 0x65, 0x65, 0x7a, 0x2f, 0x6c, 0x73, 0x70, 0x64, 0x2f, 0x63, 0x6c, 0x6e,
+ 0x2f, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -22441,668 +41602,1224 @@ func file_node_proto_rawDescGZIP() []byte {
return file_node_proto_rawDescData
}
-var file_node_proto_enumTypes = make([]protoimpl.EnumInfo, 44)
-var file_node_proto_msgTypes = make([]protoimpl.MessageInfo, 196)
+var file_node_proto_enumTypes = make([]protoimpl.EnumInfo, 65)
+var file_node_proto_msgTypes = make([]protoimpl.MessageInfo, 419)
var file_node_proto_goTypes = []interface{}{
- (GetinfoAddress_GetinfoAddressType)(0), // 0: cln.GetinfoAddress.GetinfoAddressType
- (GetinfoBinding_GetinfoBindingType)(0), // 1: cln.GetinfoBinding.GetinfoBindingType
- (ListpeersPeersLog_ListpeersPeersLogType)(0), // 2: cln.ListpeersPeersLog.ListpeersPeersLogType
- (ListpeersPeersChannels_ListpeersPeersChannelsState)(0), // 3: cln.ListpeersPeersChannels.ListpeersPeersChannelsState
- (ListpeersPeersChannelsHtlcs_ListpeersPeersChannelsHtlcsDirection)(0), // 4: cln.ListpeersPeersChannelsHtlcs.ListpeersPeersChannelsHtlcsDirection
- (ListfundsOutputs_ListfundsOutputsStatus)(0), // 5: cln.ListfundsOutputs.ListfundsOutputsStatus
- (SendpayResponse_SendpayStatus)(0), // 6: cln.SendpayResponse.SendpayStatus
- (CloseResponse_CloseType)(0), // 7: cln.CloseResponse.CloseType
- (ConnectResponse_ConnectDirection)(0), // 8: cln.ConnectResponse.ConnectDirection
- (ConnectAddress_ConnectAddressType)(0), // 9: cln.ConnectAddress.ConnectAddressType
- (CreateinvoiceResponse_CreateinvoiceStatus)(0), // 10: cln.CreateinvoiceResponse.CreateinvoiceStatus
- (DatastoreRequest_DatastoreMode)(0), // 11: cln.DatastoreRequest.DatastoreMode
- (DelinvoiceRequest_DelinvoiceStatus)(0), // 12: cln.DelinvoiceRequest.DelinvoiceStatus
- (DelinvoiceResponse_DelinvoiceStatus)(0), // 13: cln.DelinvoiceResponse.DelinvoiceStatus
- (ListinvoicesRequest_ListinvoicesIndex)(0), // 14: cln.ListinvoicesRequest.ListinvoicesIndex
- (ListinvoicesInvoices_ListinvoicesInvoicesStatus)(0), // 15: cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
- (SendonionResponse_SendonionStatus)(0), // 16: cln.SendonionResponse.SendonionStatus
- (ListsendpaysRequest_ListsendpaysStatus)(0), // 17: cln.ListsendpaysRequest.ListsendpaysStatus
- (ListsendpaysRequest_ListsendpaysIndex)(0), // 18: cln.ListsendpaysRequest.ListsendpaysIndex
- (ListsendpaysPayments_ListsendpaysPaymentsStatus)(0), // 19: cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
- (PayResponse_PayStatus)(0), // 20: cln.PayResponse.PayStatus
- (ListnodesNodesAddresses_ListnodesNodesAddressesType)(0), // 21: cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
- (WaitanyinvoiceResponse_WaitanyinvoiceStatus)(0), // 22: cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
- (WaitinvoiceResponse_WaitinvoiceStatus)(0), // 23: cln.WaitinvoiceResponse.WaitinvoiceStatus
- (WaitsendpayResponse_WaitsendpayStatus)(0), // 24: cln.WaitsendpayResponse.WaitsendpayStatus
- (NewaddrRequest_NewaddrAddresstype)(0), // 25: cln.NewaddrRequest.NewaddrAddresstype
- (KeysendResponse_KeysendStatus)(0), // 26: cln.KeysendResponse.KeysendStatus
- (ListpeerchannelsChannels_ListpeerchannelsChannelsState)(0), // 27: cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
- (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection)(0), // 28: cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
- (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause)(0), // 29: cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
- (DecodepayFallbacks_DecodepayFallbacksType)(0), // 30: cln.DecodepayFallbacks.DecodepayFallbacksType
- (DecodeResponse_DecodeType)(0), // 31: cln.DecodeResponse.DecodeType
- (FeeratesRequest_FeeratesStyle)(0), // 32: cln.FeeratesRequest.FeeratesStyle
- (GetrouteRoute_GetrouteRouteStyle)(0), // 33: cln.GetrouteRoute.GetrouteRouteStyle
- (ListforwardsRequest_ListforwardsStatus)(0), // 34: cln.ListforwardsRequest.ListforwardsStatus
- (ListforwardsRequest_ListforwardsIndex)(0), // 35: cln.ListforwardsRequest.ListforwardsIndex
- (ListforwardsForwards_ListforwardsForwardsStatus)(0), // 36: cln.ListforwardsForwards.ListforwardsForwardsStatus
- (ListforwardsForwards_ListforwardsForwardsStyle)(0), // 37: cln.ListforwardsForwards.ListforwardsForwardsStyle
- (ListpaysRequest_ListpaysStatus)(0), // 38: cln.ListpaysRequest.ListpaysStatus
- (ListpaysPays_ListpaysPaysStatus)(0), // 39: cln.ListpaysPays.ListpaysPaysStatus
- (ListhtlcsHtlcs_ListhtlcsHtlcsDirection)(0), // 40: cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
- (WaitRequest_WaitSubsystem)(0), // 41: cln.WaitRequest.WaitSubsystem
- (WaitRequest_WaitIndexname)(0), // 42: cln.WaitRequest.WaitIndexname
- (WaitResponse_WaitSubsystem)(0), // 43: cln.WaitResponse.WaitSubsystem
- (*GetinfoRequest)(nil), // 44: cln.GetinfoRequest
- (*GetinfoResponse)(nil), // 45: cln.GetinfoResponse
- (*GetinfoOurFeatures)(nil), // 46: cln.GetinfoOur_features
- (*GetinfoAddress)(nil), // 47: cln.GetinfoAddress
- (*GetinfoBinding)(nil), // 48: cln.GetinfoBinding
- (*ListpeersRequest)(nil), // 49: cln.ListpeersRequest
- (*ListpeersResponse)(nil), // 50: cln.ListpeersResponse
- (*ListpeersPeers)(nil), // 51: cln.ListpeersPeers
- (*ListpeersPeersLog)(nil), // 52: cln.ListpeersPeersLog
- (*ListpeersPeersChannels)(nil), // 53: cln.ListpeersPeersChannels
- (*ListpeersPeersChannelsFeerate)(nil), // 54: cln.ListpeersPeersChannelsFeerate
- (*ListpeersPeersChannelsInflight)(nil), // 55: cln.ListpeersPeersChannelsInflight
- (*ListpeersPeersChannelsFunding)(nil), // 56: cln.ListpeersPeersChannelsFunding
- (*ListpeersPeersChannelsAlias)(nil), // 57: cln.ListpeersPeersChannelsAlias
- (*ListpeersPeersChannelsHtlcs)(nil), // 58: cln.ListpeersPeersChannelsHtlcs
- (*ListfundsRequest)(nil), // 59: cln.ListfundsRequest
- (*ListfundsResponse)(nil), // 60: cln.ListfundsResponse
- (*ListfundsOutputs)(nil), // 61: cln.ListfundsOutputs
- (*ListfundsChannels)(nil), // 62: cln.ListfundsChannels
- (*SendpayRequest)(nil), // 63: cln.SendpayRequest
- (*SendpayResponse)(nil), // 64: cln.SendpayResponse
- (*SendpayRoute)(nil), // 65: cln.SendpayRoute
- (*ListchannelsRequest)(nil), // 66: cln.ListchannelsRequest
- (*ListchannelsResponse)(nil), // 67: cln.ListchannelsResponse
- (*ListchannelsChannels)(nil), // 68: cln.ListchannelsChannels
- (*AddgossipRequest)(nil), // 69: cln.AddgossipRequest
- (*AddgossipResponse)(nil), // 70: cln.AddgossipResponse
- (*AutocleaninvoiceRequest)(nil), // 71: cln.AutocleaninvoiceRequest
- (*AutocleaninvoiceResponse)(nil), // 72: cln.AutocleaninvoiceResponse
- (*CheckmessageRequest)(nil), // 73: cln.CheckmessageRequest
- (*CheckmessageResponse)(nil), // 74: cln.CheckmessageResponse
- (*CloseRequest)(nil), // 75: cln.CloseRequest
- (*CloseResponse)(nil), // 76: cln.CloseResponse
- (*ConnectRequest)(nil), // 77: cln.ConnectRequest
- (*ConnectResponse)(nil), // 78: cln.ConnectResponse
- (*ConnectAddress)(nil), // 79: cln.ConnectAddress
- (*CreateinvoiceRequest)(nil), // 80: cln.CreateinvoiceRequest
- (*CreateinvoiceResponse)(nil), // 81: cln.CreateinvoiceResponse
- (*CreateinvoicePaidOutpoint)(nil), // 82: cln.CreateinvoicePaid_outpoint
- (*DatastoreRequest)(nil), // 83: cln.DatastoreRequest
- (*DatastoreResponse)(nil), // 84: cln.DatastoreResponse
- (*DatastoreusageRequest)(nil), // 85: cln.DatastoreusageRequest
- (*DatastoreusageResponse)(nil), // 86: cln.DatastoreusageResponse
- (*DatastoreusageDatastoreusage)(nil), // 87: cln.DatastoreusageDatastoreusage
- (*CreateonionRequest)(nil), // 88: cln.CreateonionRequest
- (*CreateonionResponse)(nil), // 89: cln.CreateonionResponse
- (*CreateonionHops)(nil), // 90: cln.CreateonionHops
- (*DeldatastoreRequest)(nil), // 91: cln.DeldatastoreRequest
- (*DeldatastoreResponse)(nil), // 92: cln.DeldatastoreResponse
- (*DelexpiredinvoiceRequest)(nil), // 93: cln.DelexpiredinvoiceRequest
- (*DelexpiredinvoiceResponse)(nil), // 94: cln.DelexpiredinvoiceResponse
- (*DelinvoiceRequest)(nil), // 95: cln.DelinvoiceRequest
- (*DelinvoiceResponse)(nil), // 96: cln.DelinvoiceResponse
- (*InvoiceRequest)(nil), // 97: cln.InvoiceRequest
- (*InvoiceResponse)(nil), // 98: cln.InvoiceResponse
- (*ListdatastoreRequest)(nil), // 99: cln.ListdatastoreRequest
- (*ListdatastoreResponse)(nil), // 100: cln.ListdatastoreResponse
- (*ListdatastoreDatastore)(nil), // 101: cln.ListdatastoreDatastore
- (*ListinvoicesRequest)(nil), // 102: cln.ListinvoicesRequest
- (*ListinvoicesResponse)(nil), // 103: cln.ListinvoicesResponse
- (*ListinvoicesInvoices)(nil), // 104: cln.ListinvoicesInvoices
- (*ListinvoicesInvoicesPaidOutpoint)(nil), // 105: cln.ListinvoicesInvoicesPaid_outpoint
- (*SendonionRequest)(nil), // 106: cln.SendonionRequest
- (*SendonionResponse)(nil), // 107: cln.SendonionResponse
- (*SendonionFirstHop)(nil), // 108: cln.SendonionFirst_hop
- (*ListsendpaysRequest)(nil), // 109: cln.ListsendpaysRequest
- (*ListsendpaysResponse)(nil), // 110: cln.ListsendpaysResponse
- (*ListsendpaysPayments)(nil), // 111: cln.ListsendpaysPayments
- (*ListtransactionsRequest)(nil), // 112: cln.ListtransactionsRequest
- (*ListtransactionsResponse)(nil), // 113: cln.ListtransactionsResponse
- (*ListtransactionsTransactions)(nil), // 114: cln.ListtransactionsTransactions
- (*ListtransactionsTransactionsInputs)(nil), // 115: cln.ListtransactionsTransactionsInputs
- (*ListtransactionsTransactionsOutputs)(nil), // 116: cln.ListtransactionsTransactionsOutputs
- (*PayRequest)(nil), // 117: cln.PayRequest
- (*PayResponse)(nil), // 118: cln.PayResponse
- (*ListnodesRequest)(nil), // 119: cln.ListnodesRequest
- (*ListnodesResponse)(nil), // 120: cln.ListnodesResponse
- (*ListnodesNodes)(nil), // 121: cln.ListnodesNodes
- (*ListnodesNodesAddresses)(nil), // 122: cln.ListnodesNodesAddresses
- (*WaitanyinvoiceRequest)(nil), // 123: cln.WaitanyinvoiceRequest
- (*WaitanyinvoiceResponse)(nil), // 124: cln.WaitanyinvoiceResponse
- (*WaitanyinvoicePaidOutpoint)(nil), // 125: cln.WaitanyinvoicePaid_outpoint
- (*WaitinvoiceRequest)(nil), // 126: cln.WaitinvoiceRequest
- (*WaitinvoiceResponse)(nil), // 127: cln.WaitinvoiceResponse
- (*WaitinvoicePaidOutpoint)(nil), // 128: cln.WaitinvoicePaid_outpoint
- (*WaitsendpayRequest)(nil), // 129: cln.WaitsendpayRequest
- (*WaitsendpayResponse)(nil), // 130: cln.WaitsendpayResponse
- (*NewaddrRequest)(nil), // 131: cln.NewaddrRequest
- (*NewaddrResponse)(nil), // 132: cln.NewaddrResponse
- (*WithdrawRequest)(nil), // 133: cln.WithdrawRequest
- (*WithdrawResponse)(nil), // 134: cln.WithdrawResponse
- (*KeysendRequest)(nil), // 135: cln.KeysendRequest
- (*KeysendResponse)(nil), // 136: cln.KeysendResponse
- (*FundpsbtRequest)(nil), // 137: cln.FundpsbtRequest
- (*FundpsbtResponse)(nil), // 138: cln.FundpsbtResponse
- (*FundpsbtReservations)(nil), // 139: cln.FundpsbtReservations
- (*SendpsbtRequest)(nil), // 140: cln.SendpsbtRequest
- (*SendpsbtResponse)(nil), // 141: cln.SendpsbtResponse
- (*SignpsbtRequest)(nil), // 142: cln.SignpsbtRequest
- (*SignpsbtResponse)(nil), // 143: cln.SignpsbtResponse
- (*UtxopsbtRequest)(nil), // 144: cln.UtxopsbtRequest
- (*UtxopsbtResponse)(nil), // 145: cln.UtxopsbtResponse
- (*UtxopsbtReservations)(nil), // 146: cln.UtxopsbtReservations
- (*TxdiscardRequest)(nil), // 147: cln.TxdiscardRequest
- (*TxdiscardResponse)(nil), // 148: cln.TxdiscardResponse
- (*TxprepareRequest)(nil), // 149: cln.TxprepareRequest
- (*TxprepareResponse)(nil), // 150: cln.TxprepareResponse
- (*TxsendRequest)(nil), // 151: cln.TxsendRequest
- (*TxsendResponse)(nil), // 152: cln.TxsendResponse
- (*ListpeerchannelsRequest)(nil), // 153: cln.ListpeerchannelsRequest
- (*ListpeerchannelsResponse)(nil), // 154: cln.ListpeerchannelsResponse
- (*ListpeerchannelsChannels)(nil), // 155: cln.ListpeerchannelsChannels
- (*ListpeerchannelsChannelsUpdates)(nil), // 156: cln.ListpeerchannelsChannelsUpdates
- (*ListpeerchannelsChannelsUpdatesLocal)(nil), // 157: cln.ListpeerchannelsChannelsUpdatesLocal
- (*ListpeerchannelsChannelsUpdatesRemote)(nil), // 158: cln.ListpeerchannelsChannelsUpdatesRemote
- (*ListpeerchannelsChannelsFeerate)(nil), // 159: cln.ListpeerchannelsChannelsFeerate
- (*ListpeerchannelsChannelsInflight)(nil), // 160: cln.ListpeerchannelsChannelsInflight
- (*ListpeerchannelsChannelsFunding)(nil), // 161: cln.ListpeerchannelsChannelsFunding
- (*ListpeerchannelsChannelsAlias)(nil), // 162: cln.ListpeerchannelsChannelsAlias
- (*ListpeerchannelsChannelsHtlcs)(nil), // 163: cln.ListpeerchannelsChannelsHtlcs
- (*ListclosedchannelsRequest)(nil), // 164: cln.ListclosedchannelsRequest
- (*ListclosedchannelsResponse)(nil), // 165: cln.ListclosedchannelsResponse
- (*ListclosedchannelsClosedchannels)(nil), // 166: cln.ListclosedchannelsClosedchannels
- (*ListclosedchannelsClosedchannelsAlias)(nil), // 167: cln.ListclosedchannelsClosedchannelsAlias
- (*DecodepayRequest)(nil), // 168: cln.DecodepayRequest
- (*DecodepayResponse)(nil), // 169: cln.DecodepayResponse
- (*DecodepayFallbacks)(nil), // 170: cln.DecodepayFallbacks
- (*DecodepayExtra)(nil), // 171: cln.DecodepayExtra
- (*DecodeRequest)(nil), // 172: cln.DecodeRequest
- (*DecodeResponse)(nil), // 173: cln.DecodeResponse
- (*DecodeOfferPaths)(nil), // 174: cln.DecodeOffer_paths
- (*DecodeOfferRecurrencePaywindow)(nil), // 175: cln.DecodeOffer_recurrencePaywindow
- (*DecodeInvoicePathsPath)(nil), // 176: cln.DecodeInvoice_pathsPath
- (*DecodeInvoiceFallbacks)(nil), // 177: cln.DecodeInvoice_fallbacks
- (*DecodeFallbacks)(nil), // 178: cln.DecodeFallbacks
- (*DecodeExtra)(nil), // 179: cln.DecodeExtra
- (*DecodeRestrictions)(nil), // 180: cln.DecodeRestrictions
- (*DisconnectRequest)(nil), // 181: cln.DisconnectRequest
- (*DisconnectResponse)(nil), // 182: cln.DisconnectResponse
- (*FeeratesRequest)(nil), // 183: cln.FeeratesRequest
- (*FeeratesResponse)(nil), // 184: cln.FeeratesResponse
- (*FeeratesPerkb)(nil), // 185: cln.FeeratesPerkb
- (*FeeratesPerkbEstimates)(nil), // 186: cln.FeeratesPerkbEstimates
- (*FeeratesPerkw)(nil), // 187: cln.FeeratesPerkw
- (*FeeratesPerkwEstimates)(nil), // 188: cln.FeeratesPerkwEstimates
- (*FeeratesOnchainFeeEstimates)(nil), // 189: cln.FeeratesOnchain_fee_estimates
- (*FetchinvoiceRequest)(nil), // 190: cln.FetchinvoiceRequest
- (*FetchinvoiceResponse)(nil), // 191: cln.FetchinvoiceResponse
- (*FetchinvoiceChanges)(nil), // 192: cln.FetchinvoiceChanges
- (*FetchinvoiceNextPeriod)(nil), // 193: cln.FetchinvoiceNext_period
- (*FundchannelRequest)(nil), // 194: cln.FundchannelRequest
- (*FundchannelResponse)(nil), // 195: cln.FundchannelResponse
- (*FundchannelChannelType)(nil), // 196: cln.FundchannelChannel_type
- (*GetrouteRequest)(nil), // 197: cln.GetrouteRequest
- (*GetrouteResponse)(nil), // 198: cln.GetrouteResponse
- (*GetrouteRoute)(nil), // 199: cln.GetrouteRoute
- (*ListforwardsRequest)(nil), // 200: cln.ListforwardsRequest
- (*ListforwardsResponse)(nil), // 201: cln.ListforwardsResponse
- (*ListforwardsForwards)(nil), // 202: cln.ListforwardsForwards
- (*ListoffersRequest)(nil), // 203: cln.ListoffersRequest
- (*ListoffersResponse)(nil), // 204: cln.ListoffersResponse
- (*ListoffersOffers)(nil), // 205: cln.ListoffersOffers
- (*ListpaysRequest)(nil), // 206: cln.ListpaysRequest
- (*ListpaysResponse)(nil), // 207: cln.ListpaysResponse
- (*ListpaysPays)(nil), // 208: cln.ListpaysPays
- (*ListhtlcsRequest)(nil), // 209: cln.ListhtlcsRequest
- (*ListhtlcsResponse)(nil), // 210: cln.ListhtlcsResponse
- (*ListhtlcsHtlcs)(nil), // 211: cln.ListhtlcsHtlcs
- (*OfferRequest)(nil), // 212: cln.OfferRequest
- (*OfferResponse)(nil), // 213: cln.OfferResponse
- (*PingRequest)(nil), // 214: cln.PingRequest
- (*PingResponse)(nil), // 215: cln.PingResponse
- (*SendcustommsgRequest)(nil), // 216: cln.SendcustommsgRequest
- (*SendcustommsgResponse)(nil), // 217: cln.SendcustommsgResponse
- (*SetchannelRequest)(nil), // 218: cln.SetchannelRequest
- (*SetchannelResponse)(nil), // 219: cln.SetchannelResponse
- (*SetchannelChannels)(nil), // 220: cln.SetchannelChannels
- (*SigninvoiceRequest)(nil), // 221: cln.SigninvoiceRequest
- (*SigninvoiceResponse)(nil), // 222: cln.SigninvoiceResponse
- (*SignmessageRequest)(nil), // 223: cln.SignmessageRequest
- (*SignmessageResponse)(nil), // 224: cln.SignmessageResponse
- (*WaitblockheightRequest)(nil), // 225: cln.WaitblockheightRequest
- (*WaitblockheightResponse)(nil), // 226: cln.WaitblockheightResponse
- (*WaitRequest)(nil), // 227: cln.WaitRequest
- (*WaitResponse)(nil), // 228: cln.WaitResponse
- (*StopRequest)(nil), // 229: cln.StopRequest
- (*StopResponse)(nil), // 230: cln.StopResponse
- (*PreapprovekeysendRequest)(nil), // 231: cln.PreapprovekeysendRequest
- (*PreapprovekeysendResponse)(nil), // 232: cln.PreapprovekeysendResponse
- (*PreapproveinvoiceRequest)(nil), // 233: cln.PreapproveinvoiceRequest
- (*PreapproveinvoiceResponse)(nil), // 234: cln.PreapproveinvoiceResponse
- (*StaticbackupRequest)(nil), // 235: cln.StaticbackupRequest
- (*StaticbackupResponse)(nil), // 236: cln.StaticbackupResponse
- (*BkprlistincomeRequest)(nil), // 237: cln.BkprlistincomeRequest
- (*BkprlistincomeResponse)(nil), // 238: cln.BkprlistincomeResponse
- (*BkprlistincomeIncomeEvents)(nil), // 239: cln.BkprlistincomeIncome_events
- (*Amount)(nil), // 240: cln.Amount
- (ChannelSide)(0), // 241: cln.ChannelSide
- (HtlcState)(0), // 242: cln.HtlcState
- (ChannelState)(0), // 243: cln.ChannelState
- (*Outpoint)(nil), // 244: cln.Outpoint
- (*Feerate)(nil), // 245: cln.Feerate
- (*AmountOrAny)(nil), // 246: cln.AmountOrAny
- (*AmountOrAll)(nil), // 247: cln.AmountOrAll
- (*RoutehintList)(nil), // 248: cln.RoutehintList
- (*TlvStream)(nil), // 249: cln.TlvStream
- (*OutputDesc)(nil), // 250: cln.OutputDesc
- (ChannelTypeName)(0), // 251: cln.ChannelTypeName
+ (GetinfoAddress_GetinfoAddressType)(0), // 0: cln.GetinfoAddress.GetinfoAddressType
+ (GetinfoBinding_GetinfoBindingType)(0), // 1: cln.GetinfoBinding.GetinfoBindingType
+ (ListpeersRequest_ListpeersLevel)(0), // 2: cln.ListpeersRequest.ListpeersLevel
+ (ListpeersPeersLog_ListpeersPeersLogType)(0), // 3: cln.ListpeersPeersLog.ListpeersPeersLogType
+ (ListfundsOutputs_ListfundsOutputsStatus)(0), // 4: cln.ListfundsOutputs.ListfundsOutputsStatus
+ (SendpayResponse_SendpayStatus)(0), // 5: cln.SendpayResponse.SendpayStatus
+ (CloseResponse_CloseType)(0), // 6: cln.CloseResponse.CloseType
+ (ConnectResponse_ConnectDirection)(0), // 7: cln.ConnectResponse.ConnectDirection
+ (ConnectAddress_ConnectAddressType)(0), // 8: cln.ConnectAddress.ConnectAddressType
+ (CreateinvoiceResponse_CreateinvoiceStatus)(0), // 9: cln.CreateinvoiceResponse.CreateinvoiceStatus
+ (DatastoreRequest_DatastoreMode)(0), // 10: cln.DatastoreRequest.DatastoreMode
+ (DelinvoiceRequest_DelinvoiceStatus)(0), // 11: cln.DelinvoiceRequest.DelinvoiceStatus
+ (DelinvoiceResponse_DelinvoiceStatus)(0), // 12: cln.DelinvoiceResponse.DelinvoiceStatus
+ (RecoverResponse_RecoverResult)(0), // 13: cln.RecoverResponse.RecoverResult
+ (ListinvoicesRequest_ListinvoicesIndex)(0), // 14: cln.ListinvoicesRequest.ListinvoicesIndex
+ (ListinvoicesInvoices_ListinvoicesInvoicesStatus)(0), // 15: cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
+ (SendonionResponse_SendonionStatus)(0), // 16: cln.SendonionResponse.SendonionStatus
+ (ListsendpaysRequest_ListsendpaysStatus)(0), // 17: cln.ListsendpaysRequest.ListsendpaysStatus
+ (ListsendpaysRequest_ListsendpaysIndex)(0), // 18: cln.ListsendpaysRequest.ListsendpaysIndex
+ (ListsendpaysPayments_ListsendpaysPaymentsStatus)(0), // 19: cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
+ (PayResponse_PayStatus)(0), // 20: cln.PayResponse.PayStatus
+ (ListnodesNodesAddresses_ListnodesNodesAddressesType)(0), // 21: cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
+ (WaitanyinvoiceResponse_WaitanyinvoiceStatus)(0), // 22: cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
+ (WaitinvoiceResponse_WaitinvoiceStatus)(0), // 23: cln.WaitinvoiceResponse.WaitinvoiceStatus
+ (WaitsendpayResponse_WaitsendpayStatus)(0), // 24: cln.WaitsendpayResponse.WaitsendpayStatus
+ (NewaddrRequest_NewaddrAddresstype)(0), // 25: cln.NewaddrRequest.NewaddrAddresstype
+ (KeysendResponse_KeysendStatus)(0), // 26: cln.KeysendResponse.KeysendStatus
+ (ListpeerchannelsChannels_ListpeerchannelsChannelsState)(0), // 27: cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
+ (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection)(0), // 28: cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
+ (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause)(0), // 29: cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
+ (DecodepayFallbacks_DecodepayFallbacksType)(0), // 30: cln.DecodepayFallbacks.DecodepayFallbacksType
+ (DecodeResponse_DecodeType)(0), // 31: cln.DecodeResponse.DecodeType
+ (DecodeFallbacks_DecodeFallbacksType)(0), // 32: cln.DecodeFallbacks.DecodeFallbacksType
+ (DelpayRequest_DelpayStatus)(0), // 33: cln.DelpayRequest.DelpayStatus
+ (DelpayPayments_DelpayPaymentsStatus)(0), // 34: cln.DelpayPayments.DelpayPaymentsStatus
+ (DelforwardRequest_DelforwardStatus)(0), // 35: cln.DelforwardRequest.DelforwardStatus
+ (FeeratesRequest_FeeratesStyle)(0), // 36: cln.FeeratesRequest.FeeratesStyle
+ (GetlogRequest_GetlogLevel)(0), // 37: cln.GetlogRequest.GetlogLevel
+ (GetlogLog_GetlogLogType)(0), // 38: cln.GetlogLog.GetlogLogType
+ (FunderupdateRequest_FunderupdatePolicy)(0), // 39: cln.FunderupdateRequest.FunderupdatePolicy
+ (FunderupdateResponse_FunderupdatePolicy)(0), // 40: cln.FunderupdateResponse.FunderupdatePolicy
+ (GetrouteRoute_GetrouteRouteStyle)(0), // 41: cln.GetrouteRoute.GetrouteRouteStyle
+ (ListforwardsRequest_ListforwardsStatus)(0), // 42: cln.ListforwardsRequest.ListforwardsStatus
+ (ListforwardsRequest_ListforwardsIndex)(0), // 43: cln.ListforwardsRequest.ListforwardsIndex
+ (ListforwardsForwards_ListforwardsForwardsStatus)(0), // 44: cln.ListforwardsForwards.ListforwardsForwardsStatus
+ (ListforwardsForwards_ListforwardsForwardsStyle)(0), // 45: cln.ListforwardsForwards.ListforwardsForwardsStyle
+ (ListpaysRequest_ListpaysStatus)(0), // 46: cln.ListpaysRequest.ListpaysStatus
+ (ListpaysPays_ListpaysPaysStatus)(0), // 47: cln.ListpaysPays.ListpaysPaysStatus
+ (ListhtlcsHtlcs_ListhtlcsHtlcsDirection)(0), // 48: cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
+ (MultifundchannelFailed_MultifundchannelFailedMethod)(0), // 49: cln.MultifundchannelFailed.MultifundchannelFailedMethod
+ (RenepaystatusPaystatus_RenepaystatusPaystatusStatus)(0), // 50: cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus
+ (RenepayResponse_RenepayStatus)(0), // 51: cln.RenepayResponse.RenepayStatus
+ (SendinvoiceResponse_SendinvoiceStatus)(0), // 52: cln.SendinvoiceResponse.SendinvoiceStatus
+ (WaitRequest_WaitSubsystem)(0), // 53: cln.WaitRequest.WaitSubsystem
+ (WaitRequest_WaitIndexname)(0), // 54: cln.WaitRequest.WaitIndexname
+ (WaitResponse_WaitSubsystem)(0), // 55: cln.WaitResponse.WaitSubsystem
+ (WaitDetails_WaitDetailsStatus)(0), // 56: cln.WaitDetails.WaitDetailsStatus
+ (ListconfigsConfigsConf_ListconfigsConfigsConfSource)(0), // 57: cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource
+ (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr)(0), // 58: cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str
+ (StopResponse_StopResult)(0), // 59: cln.StopResponse.StopResult
+ (HelpResponse_HelpFormathint)(0), // 60: cln.HelpResponse.HelpFormathint
+ (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat)(0), // 61: cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format
+ (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType)(0), // 62: cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType
+ (PeerConnectNotification_PeerConnectDirection)(0), // 63: cln.PeerConnectNotification.PeerConnectDirection
+ (PeerConnectAddress_PeerConnectAddressType)(0), // 64: cln.PeerConnectAddress.PeerConnectAddressType
+ (*GetinfoRequest)(nil), // 65: cln.GetinfoRequest
+ (*GetinfoResponse)(nil), // 66: cln.GetinfoResponse
+ (*GetinfoOurFeatures)(nil), // 67: cln.GetinfoOur_features
+ (*GetinfoAddress)(nil), // 68: cln.GetinfoAddress
+ (*GetinfoBinding)(nil), // 69: cln.GetinfoBinding
+ (*ListpeersRequest)(nil), // 70: cln.ListpeersRequest
+ (*ListpeersResponse)(nil), // 71: cln.ListpeersResponse
+ (*ListpeersPeers)(nil), // 72: cln.ListpeersPeers
+ (*ListpeersPeersLog)(nil), // 73: cln.ListpeersPeersLog
+ (*ListfundsRequest)(nil), // 74: cln.ListfundsRequest
+ (*ListfundsResponse)(nil), // 75: cln.ListfundsResponse
+ (*ListfundsOutputs)(nil), // 76: cln.ListfundsOutputs
+ (*ListfundsChannels)(nil), // 77: cln.ListfundsChannels
+ (*SendpayRequest)(nil), // 78: cln.SendpayRequest
+ (*SendpayResponse)(nil), // 79: cln.SendpayResponse
+ (*SendpayRoute)(nil), // 80: cln.SendpayRoute
+ (*ListchannelsRequest)(nil), // 81: cln.ListchannelsRequest
+ (*ListchannelsResponse)(nil), // 82: cln.ListchannelsResponse
+ (*ListchannelsChannels)(nil), // 83: cln.ListchannelsChannels
+ (*AddgossipRequest)(nil), // 84: cln.AddgossipRequest
+ (*AddgossipResponse)(nil), // 85: cln.AddgossipResponse
+ (*AddpsbtoutputRequest)(nil), // 86: cln.AddpsbtoutputRequest
+ (*AddpsbtoutputResponse)(nil), // 87: cln.AddpsbtoutputResponse
+ (*AutocleaninvoiceRequest)(nil), // 88: cln.AutocleaninvoiceRequest
+ (*AutocleaninvoiceResponse)(nil), // 89: cln.AutocleaninvoiceResponse
+ (*AutocleanonceRequest)(nil), // 90: cln.AutocleanonceRequest
+ (*AutocleanonceResponse)(nil), // 91: cln.AutocleanonceResponse
+ (*AutocleanonceAutoclean)(nil), // 92: cln.AutocleanonceAutoclean
+ (*AutocleanonceAutocleanSucceededforwards)(nil), // 93: cln.AutocleanonceAutocleanSucceededforwards
+ (*AutocleanonceAutocleanFailedforwards)(nil), // 94: cln.AutocleanonceAutocleanFailedforwards
+ (*AutocleanonceAutocleanSucceededpays)(nil), // 95: cln.AutocleanonceAutocleanSucceededpays
+ (*AutocleanonceAutocleanFailedpays)(nil), // 96: cln.AutocleanonceAutocleanFailedpays
+ (*AutocleanonceAutocleanPaidinvoices)(nil), // 97: cln.AutocleanonceAutocleanPaidinvoices
+ (*AutocleanonceAutocleanExpiredinvoices)(nil), // 98: cln.AutocleanonceAutocleanExpiredinvoices
+ (*AutocleanstatusRequest)(nil), // 99: cln.AutocleanstatusRequest
+ (*AutocleanstatusResponse)(nil), // 100: cln.AutocleanstatusResponse
+ (*AutocleanstatusAutoclean)(nil), // 101: cln.AutocleanstatusAutoclean
+ (*AutocleanstatusAutocleanSucceededforwards)(nil), // 102: cln.AutocleanstatusAutocleanSucceededforwards
+ (*AutocleanstatusAutocleanFailedforwards)(nil), // 103: cln.AutocleanstatusAutocleanFailedforwards
+ (*AutocleanstatusAutocleanSucceededpays)(nil), // 104: cln.AutocleanstatusAutocleanSucceededpays
+ (*AutocleanstatusAutocleanFailedpays)(nil), // 105: cln.AutocleanstatusAutocleanFailedpays
+ (*AutocleanstatusAutocleanPaidinvoices)(nil), // 106: cln.AutocleanstatusAutocleanPaidinvoices
+ (*AutocleanstatusAutocleanExpiredinvoices)(nil), // 107: cln.AutocleanstatusAutocleanExpiredinvoices
+ (*CheckmessageRequest)(nil), // 108: cln.CheckmessageRequest
+ (*CheckmessageResponse)(nil), // 109: cln.CheckmessageResponse
+ (*CloseRequest)(nil), // 110: cln.CloseRequest
+ (*CloseResponse)(nil), // 111: cln.CloseResponse
+ (*ConnectRequest)(nil), // 112: cln.ConnectRequest
+ (*ConnectResponse)(nil), // 113: cln.ConnectResponse
+ (*ConnectAddress)(nil), // 114: cln.ConnectAddress
+ (*CreateinvoiceRequest)(nil), // 115: cln.CreateinvoiceRequest
+ (*CreateinvoiceResponse)(nil), // 116: cln.CreateinvoiceResponse
+ (*CreateinvoicePaidOutpoint)(nil), // 117: cln.CreateinvoicePaid_outpoint
+ (*DatastoreRequest)(nil), // 118: cln.DatastoreRequest
+ (*DatastoreResponse)(nil), // 119: cln.DatastoreResponse
+ (*DatastoreusageRequest)(nil), // 120: cln.DatastoreusageRequest
+ (*DatastoreusageResponse)(nil), // 121: cln.DatastoreusageResponse
+ (*DatastoreusageDatastoreusage)(nil), // 122: cln.DatastoreusageDatastoreusage
+ (*CreateonionRequest)(nil), // 123: cln.CreateonionRequest
+ (*CreateonionResponse)(nil), // 124: cln.CreateonionResponse
+ (*CreateonionHops)(nil), // 125: cln.CreateonionHops
+ (*DeldatastoreRequest)(nil), // 126: cln.DeldatastoreRequest
+ (*DeldatastoreResponse)(nil), // 127: cln.DeldatastoreResponse
+ (*DelinvoiceRequest)(nil), // 128: cln.DelinvoiceRequest
+ (*DelinvoiceResponse)(nil), // 129: cln.DelinvoiceResponse
+ (*DevforgetchannelRequest)(nil), // 130: cln.DevforgetchannelRequest
+ (*DevforgetchannelResponse)(nil), // 131: cln.DevforgetchannelResponse
+ (*EmergencyrecoverRequest)(nil), // 132: cln.EmergencyrecoverRequest
+ (*EmergencyrecoverResponse)(nil), // 133: cln.EmergencyrecoverResponse
+ (*RecoverRequest)(nil), // 134: cln.RecoverRequest
+ (*RecoverResponse)(nil), // 135: cln.RecoverResponse
+ (*RecoverchannelRequest)(nil), // 136: cln.RecoverchannelRequest
+ (*RecoverchannelResponse)(nil), // 137: cln.RecoverchannelResponse
+ (*InvoiceRequest)(nil), // 138: cln.InvoiceRequest
+ (*InvoiceResponse)(nil), // 139: cln.InvoiceResponse
+ (*InvoicerequestRequest)(nil), // 140: cln.InvoicerequestRequest
+ (*InvoicerequestResponse)(nil), // 141: cln.InvoicerequestResponse
+ (*DisableinvoicerequestRequest)(nil), // 142: cln.DisableinvoicerequestRequest
+ (*DisableinvoicerequestResponse)(nil), // 143: cln.DisableinvoicerequestResponse
+ (*ListinvoicerequestsRequest)(nil), // 144: cln.ListinvoicerequestsRequest
+ (*ListinvoicerequestsResponse)(nil), // 145: cln.ListinvoicerequestsResponse
+ (*ListinvoicerequestsInvoicerequests)(nil), // 146: cln.ListinvoicerequestsInvoicerequests
+ (*ListdatastoreRequest)(nil), // 147: cln.ListdatastoreRequest
+ (*ListdatastoreResponse)(nil), // 148: cln.ListdatastoreResponse
+ (*ListdatastoreDatastore)(nil), // 149: cln.ListdatastoreDatastore
+ (*ListinvoicesRequest)(nil), // 150: cln.ListinvoicesRequest
+ (*ListinvoicesResponse)(nil), // 151: cln.ListinvoicesResponse
+ (*ListinvoicesInvoices)(nil), // 152: cln.ListinvoicesInvoices
+ (*ListinvoicesInvoicesPaidOutpoint)(nil), // 153: cln.ListinvoicesInvoicesPaid_outpoint
+ (*SendonionRequest)(nil), // 154: cln.SendonionRequest
+ (*SendonionResponse)(nil), // 155: cln.SendonionResponse
+ (*SendonionFirstHop)(nil), // 156: cln.SendonionFirst_hop
+ (*ListsendpaysRequest)(nil), // 157: cln.ListsendpaysRequest
+ (*ListsendpaysResponse)(nil), // 158: cln.ListsendpaysResponse
+ (*ListsendpaysPayments)(nil), // 159: cln.ListsendpaysPayments
+ (*ListtransactionsRequest)(nil), // 160: cln.ListtransactionsRequest
+ (*ListtransactionsResponse)(nil), // 161: cln.ListtransactionsResponse
+ (*ListtransactionsTransactions)(nil), // 162: cln.ListtransactionsTransactions
+ (*ListtransactionsTransactionsInputs)(nil), // 163: cln.ListtransactionsTransactionsInputs
+ (*ListtransactionsTransactionsOutputs)(nil), // 164: cln.ListtransactionsTransactionsOutputs
+ (*MakesecretRequest)(nil), // 165: cln.MakesecretRequest
+ (*MakesecretResponse)(nil), // 166: cln.MakesecretResponse
+ (*PayRequest)(nil), // 167: cln.PayRequest
+ (*PayResponse)(nil), // 168: cln.PayResponse
+ (*ListnodesRequest)(nil), // 169: cln.ListnodesRequest
+ (*ListnodesResponse)(nil), // 170: cln.ListnodesResponse
+ (*ListnodesNodes)(nil), // 171: cln.ListnodesNodes
+ (*ListnodesNodesOptionWillFund)(nil), // 172: cln.ListnodesNodesOption_will_fund
+ (*ListnodesNodesAddresses)(nil), // 173: cln.ListnodesNodesAddresses
+ (*WaitanyinvoiceRequest)(nil), // 174: cln.WaitanyinvoiceRequest
+ (*WaitanyinvoiceResponse)(nil), // 175: cln.WaitanyinvoiceResponse
+ (*WaitanyinvoicePaidOutpoint)(nil), // 176: cln.WaitanyinvoicePaid_outpoint
+ (*WaitinvoiceRequest)(nil), // 177: cln.WaitinvoiceRequest
+ (*WaitinvoiceResponse)(nil), // 178: cln.WaitinvoiceResponse
+ (*WaitinvoicePaidOutpoint)(nil), // 179: cln.WaitinvoicePaid_outpoint
+ (*WaitsendpayRequest)(nil), // 180: cln.WaitsendpayRequest
+ (*WaitsendpayResponse)(nil), // 181: cln.WaitsendpayResponse
+ (*NewaddrRequest)(nil), // 182: cln.NewaddrRequest
+ (*NewaddrResponse)(nil), // 183: cln.NewaddrResponse
+ (*WithdrawRequest)(nil), // 184: cln.WithdrawRequest
+ (*WithdrawResponse)(nil), // 185: cln.WithdrawResponse
+ (*KeysendRequest)(nil), // 186: cln.KeysendRequest
+ (*KeysendResponse)(nil), // 187: cln.KeysendResponse
+ (*FundpsbtRequest)(nil), // 188: cln.FundpsbtRequest
+ (*FundpsbtResponse)(nil), // 189: cln.FundpsbtResponse
+ (*FundpsbtReservations)(nil), // 190: cln.FundpsbtReservations
+ (*SendpsbtRequest)(nil), // 191: cln.SendpsbtRequest
+ (*SendpsbtResponse)(nil), // 192: cln.SendpsbtResponse
+ (*SignpsbtRequest)(nil), // 193: cln.SignpsbtRequest
+ (*SignpsbtResponse)(nil), // 194: cln.SignpsbtResponse
+ (*UtxopsbtRequest)(nil), // 195: cln.UtxopsbtRequest
+ (*UtxopsbtResponse)(nil), // 196: cln.UtxopsbtResponse
+ (*UtxopsbtReservations)(nil), // 197: cln.UtxopsbtReservations
+ (*TxdiscardRequest)(nil), // 198: cln.TxdiscardRequest
+ (*TxdiscardResponse)(nil), // 199: cln.TxdiscardResponse
+ (*TxprepareRequest)(nil), // 200: cln.TxprepareRequest
+ (*TxprepareResponse)(nil), // 201: cln.TxprepareResponse
+ (*TxsendRequest)(nil), // 202: cln.TxsendRequest
+ (*TxsendResponse)(nil), // 203: cln.TxsendResponse
+ (*ListpeerchannelsRequest)(nil), // 204: cln.ListpeerchannelsRequest
+ (*ListpeerchannelsResponse)(nil), // 205: cln.ListpeerchannelsResponse
+ (*ListpeerchannelsChannels)(nil), // 206: cln.ListpeerchannelsChannels
+ (*ListpeerchannelsChannelsUpdates)(nil), // 207: cln.ListpeerchannelsChannelsUpdates
+ (*ListpeerchannelsChannelsUpdatesLocal)(nil), // 208: cln.ListpeerchannelsChannelsUpdatesLocal
+ (*ListpeerchannelsChannelsUpdatesRemote)(nil), // 209: cln.ListpeerchannelsChannelsUpdatesRemote
+ (*ListpeerchannelsChannelsFeerate)(nil), // 210: cln.ListpeerchannelsChannelsFeerate
+ (*ListpeerchannelsChannelsInflight)(nil), // 211: cln.ListpeerchannelsChannelsInflight
+ (*ListpeerchannelsChannelsFunding)(nil), // 212: cln.ListpeerchannelsChannelsFunding
+ (*ListpeerchannelsChannelsAlias)(nil), // 213: cln.ListpeerchannelsChannelsAlias
+ (*ListpeerchannelsChannelsHtlcs)(nil), // 214: cln.ListpeerchannelsChannelsHtlcs
+ (*ListclosedchannelsRequest)(nil), // 215: cln.ListclosedchannelsRequest
+ (*ListclosedchannelsResponse)(nil), // 216: cln.ListclosedchannelsResponse
+ (*ListclosedchannelsClosedchannels)(nil), // 217: cln.ListclosedchannelsClosedchannels
+ (*ListclosedchannelsClosedchannelsAlias)(nil), // 218: cln.ListclosedchannelsClosedchannelsAlias
+ (*DecodepayRequest)(nil), // 219: cln.DecodepayRequest
+ (*DecodepayResponse)(nil), // 220: cln.DecodepayResponse
+ (*DecodepayFallbacks)(nil), // 221: cln.DecodepayFallbacks
+ (*DecodepayExtra)(nil), // 222: cln.DecodepayExtra
+ (*DecodeRequest)(nil), // 223: cln.DecodeRequest
+ (*DecodeResponse)(nil), // 224: cln.DecodeResponse
+ (*DecodeOfferPaths)(nil), // 225: cln.DecodeOffer_paths
+ (*DecodeOfferRecurrencePaywindow)(nil), // 226: cln.DecodeOffer_recurrencePaywindow
+ (*DecodeInvoicePathsPath)(nil), // 227: cln.DecodeInvoice_pathsPath
+ (*DecodeInvoiceFallbacks)(nil), // 228: cln.DecodeInvoice_fallbacks
+ (*DecodeFallbacks)(nil), // 229: cln.DecodeFallbacks
+ (*DecodeExtra)(nil), // 230: cln.DecodeExtra
+ (*DecodeRestrictions)(nil), // 231: cln.DecodeRestrictions
+ (*DelpayRequest)(nil), // 232: cln.DelpayRequest
+ (*DelpayResponse)(nil), // 233: cln.DelpayResponse
+ (*DelpayPayments)(nil), // 234: cln.DelpayPayments
+ (*DelforwardRequest)(nil), // 235: cln.DelforwardRequest
+ (*DelforwardResponse)(nil), // 236: cln.DelforwardResponse
+ (*DisableofferRequest)(nil), // 237: cln.DisableofferRequest
+ (*DisableofferResponse)(nil), // 238: cln.DisableofferResponse
+ (*DisconnectRequest)(nil), // 239: cln.DisconnectRequest
+ (*DisconnectResponse)(nil), // 240: cln.DisconnectResponse
+ (*FeeratesRequest)(nil), // 241: cln.FeeratesRequest
+ (*FeeratesResponse)(nil), // 242: cln.FeeratesResponse
+ (*FeeratesPerkb)(nil), // 243: cln.FeeratesPerkb
+ (*FeeratesPerkbEstimates)(nil), // 244: cln.FeeratesPerkbEstimates
+ (*FeeratesPerkw)(nil), // 245: cln.FeeratesPerkw
+ (*FeeratesPerkwEstimates)(nil), // 246: cln.FeeratesPerkwEstimates
+ (*FeeratesOnchainFeeEstimates)(nil), // 247: cln.FeeratesOnchain_fee_estimates
+ (*FetchinvoiceRequest)(nil), // 248: cln.FetchinvoiceRequest
+ (*FetchinvoiceResponse)(nil), // 249: cln.FetchinvoiceResponse
+ (*FetchinvoiceChanges)(nil), // 250: cln.FetchinvoiceChanges
+ (*FetchinvoiceNextPeriod)(nil), // 251: cln.FetchinvoiceNext_period
+ (*FundchannelCancelRequest)(nil), // 252: cln.Fundchannel_cancelRequest
+ (*FundchannelCancelResponse)(nil), // 253: cln.Fundchannel_cancelResponse
+ (*FundchannelCompleteRequest)(nil), // 254: cln.Fundchannel_completeRequest
+ (*FundchannelCompleteResponse)(nil), // 255: cln.Fundchannel_completeResponse
+ (*FundchannelRequest)(nil), // 256: cln.FundchannelRequest
+ (*FundchannelResponse)(nil), // 257: cln.FundchannelResponse
+ (*FundchannelChannelType)(nil), // 258: cln.FundchannelChannel_type
+ (*FundchannelStartRequest)(nil), // 259: cln.Fundchannel_startRequest
+ (*FundchannelStartResponse)(nil), // 260: cln.Fundchannel_startResponse
+ (*FundchannelStartChannelType)(nil), // 261: cln.Fundchannel_startChannel_type
+ (*GetlogRequest)(nil), // 262: cln.GetlogRequest
+ (*GetlogResponse)(nil), // 263: cln.GetlogResponse
+ (*GetlogLog)(nil), // 264: cln.GetlogLog
+ (*FunderupdateRequest)(nil), // 265: cln.FunderupdateRequest
+ (*FunderupdateResponse)(nil), // 266: cln.FunderupdateResponse
+ (*GetrouteRequest)(nil), // 267: cln.GetrouteRequest
+ (*GetrouteResponse)(nil), // 268: cln.GetrouteResponse
+ (*GetrouteRoute)(nil), // 269: cln.GetrouteRoute
+ (*ListforwardsRequest)(nil), // 270: cln.ListforwardsRequest
+ (*ListforwardsResponse)(nil), // 271: cln.ListforwardsResponse
+ (*ListforwardsForwards)(nil), // 272: cln.ListforwardsForwards
+ (*ListoffersRequest)(nil), // 273: cln.ListoffersRequest
+ (*ListoffersResponse)(nil), // 274: cln.ListoffersResponse
+ (*ListoffersOffers)(nil), // 275: cln.ListoffersOffers
+ (*ListpaysRequest)(nil), // 276: cln.ListpaysRequest
+ (*ListpaysResponse)(nil), // 277: cln.ListpaysResponse
+ (*ListpaysPays)(nil), // 278: cln.ListpaysPays
+ (*ListhtlcsRequest)(nil), // 279: cln.ListhtlcsRequest
+ (*ListhtlcsResponse)(nil), // 280: cln.ListhtlcsResponse
+ (*ListhtlcsHtlcs)(nil), // 281: cln.ListhtlcsHtlcs
+ (*MultifundchannelRequest)(nil), // 282: cln.MultifundchannelRequest
+ (*MultifundchannelResponse)(nil), // 283: cln.MultifundchannelResponse
+ (*MultifundchannelDestinations)(nil), // 284: cln.MultifundchannelDestinations
+ (*MultifundchannelChannelIds)(nil), // 285: cln.MultifundchannelChannel_ids
+ (*MultifundchannelChannelIdsChannelType)(nil), // 286: cln.MultifundchannelChannel_idsChannel_type
+ (*MultifundchannelFailed)(nil), // 287: cln.MultifundchannelFailed
+ (*MultifundchannelFailedError)(nil), // 288: cln.MultifundchannelFailedError
+ (*MultiwithdrawRequest)(nil), // 289: cln.MultiwithdrawRequest
+ (*MultiwithdrawResponse)(nil), // 290: cln.MultiwithdrawResponse
+ (*OfferRequest)(nil), // 291: cln.OfferRequest
+ (*OfferResponse)(nil), // 292: cln.OfferResponse
+ (*OpenchannelAbortRequest)(nil), // 293: cln.Openchannel_abortRequest
+ (*OpenchannelAbortResponse)(nil), // 294: cln.Openchannel_abortResponse
+ (*OpenchannelBumpRequest)(nil), // 295: cln.Openchannel_bumpRequest
+ (*OpenchannelBumpResponse)(nil), // 296: cln.Openchannel_bumpResponse
+ (*OpenchannelBumpChannelType)(nil), // 297: cln.Openchannel_bumpChannel_type
+ (*OpenchannelInitRequest)(nil), // 298: cln.Openchannel_initRequest
+ (*OpenchannelInitResponse)(nil), // 299: cln.Openchannel_initResponse
+ (*OpenchannelInitChannelType)(nil), // 300: cln.Openchannel_initChannel_type
+ (*OpenchannelSignedRequest)(nil), // 301: cln.Openchannel_signedRequest
+ (*OpenchannelSignedResponse)(nil), // 302: cln.Openchannel_signedResponse
+ (*OpenchannelUpdateRequest)(nil), // 303: cln.Openchannel_updateRequest
+ (*OpenchannelUpdateResponse)(nil), // 304: cln.Openchannel_updateResponse
+ (*OpenchannelUpdateChannelType)(nil), // 305: cln.Openchannel_updateChannel_type
+ (*PingRequest)(nil), // 306: cln.PingRequest
+ (*PingResponse)(nil), // 307: cln.PingResponse
+ (*PluginRequest)(nil), // 308: cln.PluginRequest
+ (*PluginResponse)(nil), // 309: cln.PluginResponse
+ (*PluginPlugins)(nil), // 310: cln.PluginPlugins
+ (*RenepaystatusRequest)(nil), // 311: cln.RenepaystatusRequest
+ (*RenepaystatusResponse)(nil), // 312: cln.RenepaystatusResponse
+ (*RenepaystatusPaystatus)(nil), // 313: cln.RenepaystatusPaystatus
+ (*RenepayRequest)(nil), // 314: cln.RenepayRequest
+ (*RenepayResponse)(nil), // 315: cln.RenepayResponse
+ (*ReserveinputsRequest)(nil), // 316: cln.ReserveinputsRequest
+ (*ReserveinputsResponse)(nil), // 317: cln.ReserveinputsResponse
+ (*ReserveinputsReservations)(nil), // 318: cln.ReserveinputsReservations
+ (*SendcustommsgRequest)(nil), // 319: cln.SendcustommsgRequest
+ (*SendcustommsgResponse)(nil), // 320: cln.SendcustommsgResponse
+ (*SendinvoiceRequest)(nil), // 321: cln.SendinvoiceRequest
+ (*SendinvoiceResponse)(nil), // 322: cln.SendinvoiceResponse
+ (*SendonionmessageRequest)(nil), // 323: cln.SendonionmessageRequest
+ (*SendonionmessageResponse)(nil), // 324: cln.SendonionmessageResponse
+ (*SendonionmessageHops)(nil), // 325: cln.SendonionmessageHops
+ (*SetchannelRequest)(nil), // 326: cln.SetchannelRequest
+ (*SetchannelResponse)(nil), // 327: cln.SetchannelResponse
+ (*SetchannelChannels)(nil), // 328: cln.SetchannelChannels
+ (*SetconfigRequest)(nil), // 329: cln.SetconfigRequest
+ (*SetconfigResponse)(nil), // 330: cln.SetconfigResponse
+ (*SetconfigConfig)(nil), // 331: cln.SetconfigConfig
+ (*SetpsbtversionRequest)(nil), // 332: cln.SetpsbtversionRequest
+ (*SetpsbtversionResponse)(nil), // 333: cln.SetpsbtversionResponse
+ (*SigninvoiceRequest)(nil), // 334: cln.SigninvoiceRequest
+ (*SigninvoiceResponse)(nil), // 335: cln.SigninvoiceResponse
+ (*SignmessageRequest)(nil), // 336: cln.SignmessageRequest
+ (*SignmessageResponse)(nil), // 337: cln.SignmessageResponse
+ (*SpliceInitRequest)(nil), // 338: cln.Splice_initRequest
+ (*SpliceInitResponse)(nil), // 339: cln.Splice_initResponse
+ (*SpliceSignedRequest)(nil), // 340: cln.Splice_signedRequest
+ (*SpliceSignedResponse)(nil), // 341: cln.Splice_signedResponse
+ (*SpliceUpdateRequest)(nil), // 342: cln.Splice_updateRequest
+ (*SpliceUpdateResponse)(nil), // 343: cln.Splice_updateResponse
+ (*UnreserveinputsRequest)(nil), // 344: cln.UnreserveinputsRequest
+ (*UnreserveinputsResponse)(nil), // 345: cln.UnreserveinputsResponse
+ (*UnreserveinputsReservations)(nil), // 346: cln.UnreserveinputsReservations
+ (*UpgradewalletRequest)(nil), // 347: cln.UpgradewalletRequest
+ (*UpgradewalletResponse)(nil), // 348: cln.UpgradewalletResponse
+ (*WaitblockheightRequest)(nil), // 349: cln.WaitblockheightRequest
+ (*WaitblockheightResponse)(nil), // 350: cln.WaitblockheightResponse
+ (*WaitRequest)(nil), // 351: cln.WaitRequest
+ (*WaitResponse)(nil), // 352: cln.WaitResponse
+ (*WaitDetails)(nil), // 353: cln.WaitDetails
+ (*ListconfigsRequest)(nil), // 354: cln.ListconfigsRequest
+ (*ListconfigsResponse)(nil), // 355: cln.ListconfigsResponse
+ (*ListconfigsConfigs)(nil), // 356: cln.ListconfigsConfigs
+ (*ListconfigsConfigsConf)(nil), // 357: cln.ListconfigsConfigsConf
+ (*ListconfigsConfigsDeveloper)(nil), // 358: cln.ListconfigsConfigsDeveloper
+ (*ListconfigsConfigsClearplugins)(nil), // 359: cln.ListconfigsConfigsClearplugins
+ (*ListconfigsConfigsDisablempp)(nil), // 360: cln.ListconfigsConfigsDisablempp
+ (*ListconfigsConfigsMainnet)(nil), // 361: cln.ListconfigsConfigsMainnet
+ (*ListconfigsConfigsRegtest)(nil), // 362: cln.ListconfigsConfigsRegtest
+ (*ListconfigsConfigsSignet)(nil), // 363: cln.ListconfigsConfigsSignet
+ (*ListconfigsConfigsTestnet)(nil), // 364: cln.ListconfigsConfigsTestnet
+ (*ListconfigsConfigsImportantplugin)(nil), // 365: cln.ListconfigsConfigsImportantplugin
+ (*ListconfigsConfigsPlugin)(nil), // 366: cln.ListconfigsConfigsPlugin
+ (*ListconfigsConfigsPlugindir)(nil), // 367: cln.ListconfigsConfigsPlugindir
+ (*ListconfigsConfigsLightningdir)(nil), // 368: cln.ListconfigsConfigsLightningdir
+ (*ListconfigsConfigsNetwork)(nil), // 369: cln.ListconfigsConfigsNetwork
+ (*ListconfigsConfigsAllowdeprecatedapis)(nil), // 370: cln.ListconfigsConfigsAllowdeprecatedapis
+ (*ListconfigsConfigsRpcfile)(nil), // 371: cln.ListconfigsConfigsRpcfile
+ (*ListconfigsConfigsDisableplugin)(nil), // 372: cln.ListconfigsConfigsDisableplugin
+ (*ListconfigsConfigsAlwaysuseproxy)(nil), // 373: cln.ListconfigsConfigsAlwaysuseproxy
+ (*ListconfigsConfigsDaemon)(nil), // 374: cln.ListconfigsConfigsDaemon
+ (*ListconfigsConfigsWallet)(nil), // 375: cln.ListconfigsConfigsWallet
+ (*ListconfigsConfigsLargechannels)(nil), // 376: cln.ListconfigsConfigsLargechannels
+ (*ListconfigsConfigsExperimentaldualfund)(nil), // 377: cln.ListconfigsConfigsExperimentaldualfund
+ (*ListconfigsConfigsExperimentalsplicing)(nil), // 378: cln.ListconfigsConfigsExperimentalsplicing
+ (*ListconfigsConfigsExperimentalonionmessages)(nil), // 379: cln.ListconfigsConfigsExperimentalonionmessages
+ (*ListconfigsConfigsExperimentaloffers)(nil), // 380: cln.ListconfigsConfigsExperimentaloffers
+ (*ListconfigsConfigsExperimentalshutdownwrongfunding)(nil), // 381: cln.ListconfigsConfigsExperimentalshutdownwrongfunding
+ (*ListconfigsConfigsExperimentalpeerstorage)(nil), // 382: cln.ListconfigsConfigsExperimentalpeerstorage
+ (*ListconfigsConfigsExperimentalanchors)(nil), // 383: cln.ListconfigsConfigsExperimentalanchors
+ (*ListconfigsConfigsDatabaseupgrade)(nil), // 384: cln.ListconfigsConfigsDatabaseupgrade
+ (*ListconfigsConfigsRgb)(nil), // 385: cln.ListconfigsConfigsRgb
+ (*ListconfigsConfigsAlias)(nil), // 386: cln.ListconfigsConfigsAlias
+ (*ListconfigsConfigsPidfile)(nil), // 387: cln.ListconfigsConfigsPidfile
+ (*ListconfigsConfigsIgnorefeelimits)(nil), // 388: cln.ListconfigsConfigsIgnorefeelimits
+ (*ListconfigsConfigsWatchtimeblocks)(nil), // 389: cln.ListconfigsConfigsWatchtimeblocks
+ (*ListconfigsConfigsMaxlocktimeblocks)(nil), // 390: cln.ListconfigsConfigsMaxlocktimeblocks
+ (*ListconfigsConfigsFundingconfirms)(nil), // 391: cln.ListconfigsConfigsFundingconfirms
+ (*ListconfigsConfigsCltvdelta)(nil), // 392: cln.ListconfigsConfigsCltvdelta
+ (*ListconfigsConfigsCltvfinal)(nil), // 393: cln.ListconfigsConfigsCltvfinal
+ (*ListconfigsConfigsCommittime)(nil), // 394: cln.ListconfigsConfigsCommittime
+ (*ListconfigsConfigsFeebase)(nil), // 395: cln.ListconfigsConfigsFeebase
+ (*ListconfigsConfigsRescan)(nil), // 396: cln.ListconfigsConfigsRescan
+ (*ListconfigsConfigsFeepersatoshi)(nil), // 397: cln.ListconfigsConfigsFeepersatoshi
+ (*ListconfigsConfigsMaxconcurrenthtlcs)(nil), // 398: cln.ListconfigsConfigsMaxconcurrenthtlcs
+ (*ListconfigsConfigsHtlcminimummsat)(nil), // 399: cln.ListconfigsConfigsHtlcminimummsat
+ (*ListconfigsConfigsHtlcmaximummsat)(nil), // 400: cln.ListconfigsConfigsHtlcmaximummsat
+ (*ListconfigsConfigsMaxdusthtlcexposuremsat)(nil), // 401: cln.ListconfigsConfigsMaxdusthtlcexposuremsat
+ (*ListconfigsConfigsMincapacitysat)(nil), // 402: cln.ListconfigsConfigsMincapacitysat
+ (*ListconfigsConfigsAddr)(nil), // 403: cln.ListconfigsConfigsAddr
+ (*ListconfigsConfigsAnnounceaddr)(nil), // 404: cln.ListconfigsConfigsAnnounceaddr
+ (*ListconfigsConfigsBindaddr)(nil), // 405: cln.ListconfigsConfigsBindaddr
+ (*ListconfigsConfigsOffline)(nil), // 406: cln.ListconfigsConfigsOffline
+ (*ListconfigsConfigsAutolisten)(nil), // 407: cln.ListconfigsConfigsAutolisten
+ (*ListconfigsConfigsProxy)(nil), // 408: cln.ListconfigsConfigsProxy
+ (*ListconfigsConfigsDisabledns)(nil), // 409: cln.ListconfigsConfigsDisabledns
+ (*ListconfigsConfigsAnnounceaddrdiscovered)(nil), // 410: cln.ListconfigsConfigsAnnounceaddrdiscovered
+ (*ListconfigsConfigsAnnounceaddrdiscoveredport)(nil), // 411: cln.ListconfigsConfigsAnnounceaddrdiscoveredport
+ (*ListconfigsConfigsEncryptedhsm)(nil), // 412: cln.ListconfigsConfigsEncryptedhsm
+ (*ListconfigsConfigsRpcfilemode)(nil), // 413: cln.ListconfigsConfigsRpcfilemode
+ (*ListconfigsConfigsLoglevel)(nil), // 414: cln.ListconfigsConfigsLoglevel
+ (*ListconfigsConfigsLogprefix)(nil), // 415: cln.ListconfigsConfigsLogprefix
+ (*ListconfigsConfigsLogfile)(nil), // 416: cln.ListconfigsConfigsLogfile
+ (*ListconfigsConfigsLogtimestamps)(nil), // 417: cln.ListconfigsConfigsLogtimestamps
+ (*ListconfigsConfigsForcefeerates)(nil), // 418: cln.ListconfigsConfigsForcefeerates
+ (*ListconfigsConfigsSubdaemon)(nil), // 419: cln.ListconfigsConfigsSubdaemon
+ (*ListconfigsConfigsFetchinvoicenoconnect)(nil), // 420: cln.ListconfigsConfigsFetchinvoicenoconnect
+ (*ListconfigsConfigsAccepthtlctlvtypes)(nil), // 421: cln.ListconfigsConfigsAccepthtlctlvtypes
+ (*ListconfigsConfigsTorservicepassword)(nil), // 422: cln.ListconfigsConfigsTorservicepassword
+ (*ListconfigsConfigsAnnounceaddrdns)(nil), // 423: cln.ListconfigsConfigsAnnounceaddrdns
+ (*ListconfigsConfigsRequireconfirmedinputs)(nil), // 424: cln.ListconfigsConfigsRequireconfirmedinputs
+ (*ListconfigsConfigsCommitfee)(nil), // 425: cln.ListconfigsConfigsCommitfee
+ (*ListconfigsConfigsCommitfeerateoffset)(nil), // 426: cln.ListconfigsConfigsCommitfeerateoffset
+ (*ListconfigsPlugins)(nil), // 427: cln.ListconfigsPlugins
+ (*ListconfigsPluginsOptions)(nil), // 428: cln.ListconfigsPluginsOptions
+ (*ListconfigsImportantplugins)(nil), // 429: cln.ListconfigsImportantplugins
+ (*ListconfigsImportantpluginsOptions)(nil), // 430: cln.ListconfigsImportantpluginsOptions
+ (*StopRequest)(nil), // 431: cln.StopRequest
+ (*StopResponse)(nil), // 432: cln.StopResponse
+ (*HelpRequest)(nil), // 433: cln.HelpRequest
+ (*HelpResponse)(nil), // 434: cln.HelpResponse
+ (*HelpHelp)(nil), // 435: cln.HelpHelp
+ (*PreapprovekeysendRequest)(nil), // 436: cln.PreapprovekeysendRequest
+ (*PreapprovekeysendResponse)(nil), // 437: cln.PreapprovekeysendResponse
+ (*PreapproveinvoiceRequest)(nil), // 438: cln.PreapproveinvoiceRequest
+ (*PreapproveinvoiceResponse)(nil), // 439: cln.PreapproveinvoiceResponse
+ (*StaticbackupRequest)(nil), // 440: cln.StaticbackupRequest
+ (*StaticbackupResponse)(nil), // 441: cln.StaticbackupResponse
+ (*BkprchannelsapyRequest)(nil), // 442: cln.BkprchannelsapyRequest
+ (*BkprchannelsapyResponse)(nil), // 443: cln.BkprchannelsapyResponse
+ (*BkprchannelsapyChannelsApy)(nil), // 444: cln.BkprchannelsapyChannels_apy
+ (*BkprdumpincomecsvRequest)(nil), // 445: cln.BkprdumpincomecsvRequest
+ (*BkprdumpincomecsvResponse)(nil), // 446: cln.BkprdumpincomecsvResponse
+ (*BkprinspectRequest)(nil), // 447: cln.BkprinspectRequest
+ (*BkprinspectResponse)(nil), // 448: cln.BkprinspectResponse
+ (*BkprinspectTxs)(nil), // 449: cln.BkprinspectTxs
+ (*BkprinspectTxsOutputs)(nil), // 450: cln.BkprinspectTxsOutputs
+ (*BkprlistaccounteventsRequest)(nil), // 451: cln.BkprlistaccounteventsRequest
+ (*BkprlistaccounteventsResponse)(nil), // 452: cln.BkprlistaccounteventsResponse
+ (*BkprlistaccounteventsEvents)(nil), // 453: cln.BkprlistaccounteventsEvents
+ (*BkprlistbalancesRequest)(nil), // 454: cln.BkprlistbalancesRequest
+ (*BkprlistbalancesResponse)(nil), // 455: cln.BkprlistbalancesResponse
+ (*BkprlistbalancesAccounts)(nil), // 456: cln.BkprlistbalancesAccounts
+ (*BkprlistbalancesAccountsBalances)(nil), // 457: cln.BkprlistbalancesAccountsBalances
+ (*BkprlistincomeRequest)(nil), // 458: cln.BkprlistincomeRequest
+ (*BkprlistincomeResponse)(nil), // 459: cln.BkprlistincomeResponse
+ (*BkprlistincomeIncomeEvents)(nil), // 460: cln.BkprlistincomeIncome_events
+ (*BlacklistruneRequest)(nil), // 461: cln.BlacklistruneRequest
+ (*BlacklistruneResponse)(nil), // 462: cln.BlacklistruneResponse
+ (*BlacklistruneBlacklist)(nil), // 463: cln.BlacklistruneBlacklist
+ (*CheckruneRequest)(nil), // 464: cln.CheckruneRequest
+ (*CheckruneResponse)(nil), // 465: cln.CheckruneResponse
+ (*CreateruneRequest)(nil), // 466: cln.CreateruneRequest
+ (*CreateruneResponse)(nil), // 467: cln.CreateruneResponse
+ (*ShowrunesRequest)(nil), // 468: cln.ShowrunesRequest
+ (*ShowrunesResponse)(nil), // 469: cln.ShowrunesResponse
+ (*ShowrunesRunes)(nil), // 470: cln.ShowrunesRunes
+ (*ShowrunesRunesRestrictions)(nil), // 471: cln.ShowrunesRunesRestrictions
+ (*ShowrunesRunesRestrictionsAlternatives)(nil), // 472: cln.ShowrunesRunesRestrictionsAlternatives
+ (*StreamBlockAddedRequest)(nil), // 473: cln.StreamBlockAddedRequest
+ (*BlockAddedNotification)(nil), // 474: cln.BlockAddedNotification
+ (*StreamChannelOpenFailedRequest)(nil), // 475: cln.StreamChannelOpenFailedRequest
+ (*ChannelOpenFailedNotification)(nil), // 476: cln.ChannelOpenFailedNotification
+ (*StreamChannelOpenedRequest)(nil), // 477: cln.StreamChannelOpenedRequest
+ (*ChannelOpenedNotification)(nil), // 478: cln.ChannelOpenedNotification
+ (*StreamConnectRequest)(nil), // 479: cln.StreamConnectRequest
+ (*PeerConnectNotification)(nil), // 480: cln.PeerConnectNotification
+ (*PeerConnectAddress)(nil), // 481: cln.PeerConnectAddress
+ (*StreamCustomMsgRequest)(nil), // 482: cln.StreamCustomMsgRequest
+ (*CustomMsgNotification)(nil), // 483: cln.CustomMsgNotification
+ (*Amount)(nil), // 484: cln.Amount
+ (ChannelState)(0), // 485: cln.ChannelState
+ (AutocleanSubsystem)(0), // 486: cln.AutocleanSubsystem
+ (*Outpoint)(nil), // 487: cln.Outpoint
+ (*Feerate)(nil), // 488: cln.Feerate
+ (*AmountOrAny)(nil), // 489: cln.AmountOrAny
+ (*AmountOrAll)(nil), // 490: cln.AmountOrAll
+ (*RoutehintList)(nil), // 491: cln.RoutehintList
+ (*TlvStream)(nil), // 492: cln.TlvStream
+ (*OutputDesc)(nil), // 493: cln.OutputDesc
+ (ChannelSide)(0), // 494: cln.ChannelSide
+ (HtlcState)(0), // 495: cln.HtlcState
+ (*DecodeRoutehintList)(nil), // 496: cln.DecodeRoutehintList
+ (ChannelTypeName)(0), // 497: cln.ChannelTypeName
+ (PluginSubcommand)(0), // 498: cln.PluginSubcommand
}
var file_node_proto_depIdxs = []int32{
- 46, // 0: cln.GetinfoResponse.our_features:type_name -> cln.GetinfoOur_features
- 240, // 1: cln.GetinfoResponse.fees_collected_msat:type_name -> cln.Amount
- 47, // 2: cln.GetinfoResponse.address:type_name -> cln.GetinfoAddress
- 48, // 3: cln.GetinfoResponse.binding:type_name -> cln.GetinfoBinding
+ 67, // 0: cln.GetinfoResponse.our_features:type_name -> cln.GetinfoOur_features
+ 484, // 1: cln.GetinfoResponse.fees_collected_msat:type_name -> cln.Amount
+ 68, // 2: cln.GetinfoResponse.address:type_name -> cln.GetinfoAddress
+ 69, // 3: cln.GetinfoResponse.binding:type_name -> cln.GetinfoBinding
0, // 4: cln.GetinfoAddress.item_type:type_name -> cln.GetinfoAddress.GetinfoAddressType
1, // 5: cln.GetinfoBinding.item_type:type_name -> cln.GetinfoBinding.GetinfoBindingType
- 51, // 6: cln.ListpeersResponse.peers:type_name -> cln.ListpeersPeers
- 52, // 7: cln.ListpeersPeers.log:type_name -> cln.ListpeersPeersLog
- 53, // 8: cln.ListpeersPeers.channels:type_name -> cln.ListpeersPeersChannels
- 2, // 9: cln.ListpeersPeersLog.item_type:type_name -> cln.ListpeersPeersLog.ListpeersPeersLogType
- 3, // 10: cln.ListpeersPeersChannels.state:type_name -> cln.ListpeersPeersChannels.ListpeersPeersChannelsState
- 54, // 11: cln.ListpeersPeersChannels.feerate:type_name -> cln.ListpeersPeersChannelsFeerate
- 55, // 12: cln.ListpeersPeersChannels.inflight:type_name -> cln.ListpeersPeersChannelsInflight
- 241, // 13: cln.ListpeersPeersChannels.opener:type_name -> cln.ChannelSide
- 241, // 14: cln.ListpeersPeersChannels.closer:type_name -> cln.ChannelSide
- 56, // 15: cln.ListpeersPeersChannels.funding:type_name -> cln.ListpeersPeersChannelsFunding
- 240, // 16: cln.ListpeersPeersChannels.to_us_msat:type_name -> cln.Amount
- 240, // 17: cln.ListpeersPeersChannels.min_to_us_msat:type_name -> cln.Amount
- 240, // 18: cln.ListpeersPeersChannels.max_to_us_msat:type_name -> cln.Amount
- 240, // 19: cln.ListpeersPeersChannels.total_msat:type_name -> cln.Amount
- 240, // 20: cln.ListpeersPeersChannels.fee_base_msat:type_name -> cln.Amount
- 240, // 21: cln.ListpeersPeersChannels.dust_limit_msat:type_name -> cln.Amount
- 240, // 22: cln.ListpeersPeersChannels.max_total_htlc_in_msat:type_name -> cln.Amount
- 240, // 23: cln.ListpeersPeersChannels.their_reserve_msat:type_name -> cln.Amount
- 240, // 24: cln.ListpeersPeersChannels.our_reserve_msat:type_name -> cln.Amount
- 240, // 25: cln.ListpeersPeersChannels.spendable_msat:type_name -> cln.Amount
- 240, // 26: cln.ListpeersPeersChannels.receivable_msat:type_name -> cln.Amount
- 240, // 27: cln.ListpeersPeersChannels.minimum_htlc_in_msat:type_name -> cln.Amount
- 240, // 28: cln.ListpeersPeersChannels.minimum_htlc_out_msat:type_name -> cln.Amount
- 240, // 29: cln.ListpeersPeersChannels.maximum_htlc_out_msat:type_name -> cln.Amount
- 57, // 30: cln.ListpeersPeersChannels.alias:type_name -> cln.ListpeersPeersChannelsAlias
- 240, // 31: cln.ListpeersPeersChannels.in_offered_msat:type_name -> cln.Amount
- 240, // 32: cln.ListpeersPeersChannels.in_fulfilled_msat:type_name -> cln.Amount
- 240, // 33: cln.ListpeersPeersChannels.out_offered_msat:type_name -> cln.Amount
- 240, // 34: cln.ListpeersPeersChannels.out_fulfilled_msat:type_name -> cln.Amount
- 58, // 35: cln.ListpeersPeersChannels.htlcs:type_name -> cln.ListpeersPeersChannelsHtlcs
- 240, // 36: cln.ListpeersPeersChannelsInflight.total_funding_msat:type_name -> cln.Amount
- 240, // 37: cln.ListpeersPeersChannelsInflight.our_funding_msat:type_name -> cln.Amount
- 240, // 38: cln.ListpeersPeersChannelsFunding.pushed_msat:type_name -> cln.Amount
- 240, // 39: cln.ListpeersPeersChannelsFunding.local_funds_msat:type_name -> cln.Amount
- 240, // 40: cln.ListpeersPeersChannelsFunding.remote_funds_msat:type_name -> cln.Amount
- 240, // 41: cln.ListpeersPeersChannelsFunding.fee_paid_msat:type_name -> cln.Amount
- 240, // 42: cln.ListpeersPeersChannelsFunding.fee_rcvd_msat:type_name -> cln.Amount
- 4, // 43: cln.ListpeersPeersChannelsHtlcs.direction:type_name -> cln.ListpeersPeersChannelsHtlcs.ListpeersPeersChannelsHtlcsDirection
- 240, // 44: cln.ListpeersPeersChannelsHtlcs.amount_msat:type_name -> cln.Amount
- 242, // 45: cln.ListpeersPeersChannelsHtlcs.state:type_name -> cln.HtlcState
- 61, // 46: cln.ListfundsResponse.outputs:type_name -> cln.ListfundsOutputs
- 62, // 47: cln.ListfundsResponse.channels:type_name -> cln.ListfundsChannels
- 240, // 48: cln.ListfundsOutputs.amount_msat:type_name -> cln.Amount
- 5, // 49: cln.ListfundsOutputs.status:type_name -> cln.ListfundsOutputs.ListfundsOutputsStatus
- 240, // 50: cln.ListfundsChannels.our_amount_msat:type_name -> cln.Amount
- 240, // 51: cln.ListfundsChannels.amount_msat:type_name -> cln.Amount
- 243, // 52: cln.ListfundsChannels.state:type_name -> cln.ChannelState
- 65, // 53: cln.SendpayRequest.route:type_name -> cln.SendpayRoute
- 240, // 54: cln.SendpayRequest.amount_msat:type_name -> cln.Amount
- 6, // 55: cln.SendpayResponse.status:type_name -> cln.SendpayResponse.SendpayStatus
- 240, // 56: cln.SendpayResponse.amount_msat:type_name -> cln.Amount
- 240, // 57: cln.SendpayResponse.amount_sent_msat:type_name -> cln.Amount
- 240, // 58: cln.SendpayRoute.amount_msat:type_name -> cln.Amount
- 68, // 59: cln.ListchannelsResponse.channels:type_name -> cln.ListchannelsChannels
- 240, // 60: cln.ListchannelsChannels.amount_msat:type_name -> cln.Amount
- 240, // 61: cln.ListchannelsChannels.htlc_minimum_msat:type_name -> cln.Amount
- 240, // 62: cln.ListchannelsChannels.htlc_maximum_msat:type_name -> cln.Amount
- 244, // 63: cln.CloseRequest.wrong_funding:type_name -> cln.Outpoint
- 245, // 64: cln.CloseRequest.feerange:type_name -> cln.Feerate
- 7, // 65: cln.CloseResponse.item_type:type_name -> cln.CloseResponse.CloseType
- 8, // 66: cln.ConnectResponse.direction:type_name -> cln.ConnectResponse.ConnectDirection
- 79, // 67: cln.ConnectResponse.address:type_name -> cln.ConnectAddress
- 9, // 68: cln.ConnectAddress.item_type:type_name -> cln.ConnectAddress.ConnectAddressType
- 240, // 69: cln.CreateinvoiceResponse.amount_msat:type_name -> cln.Amount
- 10, // 70: cln.CreateinvoiceResponse.status:type_name -> cln.CreateinvoiceResponse.CreateinvoiceStatus
- 240, // 71: cln.CreateinvoiceResponse.amount_received_msat:type_name -> cln.Amount
- 82, // 72: cln.CreateinvoiceResponse.paid_outpoint:type_name -> cln.CreateinvoicePaid_outpoint
- 11, // 73: cln.DatastoreRequest.mode:type_name -> cln.DatastoreRequest.DatastoreMode
- 87, // 74: cln.DatastoreusageResponse.datastoreusage:type_name -> cln.DatastoreusageDatastoreusage
- 90, // 75: cln.CreateonionRequest.hops:type_name -> cln.CreateonionHops
- 12, // 76: cln.DelinvoiceRequest.status:type_name -> cln.DelinvoiceRequest.DelinvoiceStatus
- 240, // 77: cln.DelinvoiceResponse.amount_msat:type_name -> cln.Amount
- 13, // 78: cln.DelinvoiceResponse.status:type_name -> cln.DelinvoiceResponse.DelinvoiceStatus
- 246, // 79: cln.InvoiceRequest.amount_msat:type_name -> cln.AmountOrAny
- 101, // 80: cln.ListdatastoreResponse.datastore:type_name -> cln.ListdatastoreDatastore
- 14, // 81: cln.ListinvoicesRequest.index:type_name -> cln.ListinvoicesRequest.ListinvoicesIndex
- 104, // 82: cln.ListinvoicesResponse.invoices:type_name -> cln.ListinvoicesInvoices
- 15, // 83: cln.ListinvoicesInvoices.status:type_name -> cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
- 240, // 84: cln.ListinvoicesInvoices.amount_msat:type_name -> cln.Amount
- 240, // 85: cln.ListinvoicesInvoices.amount_received_msat:type_name -> cln.Amount
- 105, // 86: cln.ListinvoicesInvoices.paid_outpoint:type_name -> cln.ListinvoicesInvoicesPaid_outpoint
- 108, // 87: cln.SendonionRequest.first_hop:type_name -> cln.SendonionFirst_hop
- 240, // 88: cln.SendonionRequest.amount_msat:type_name -> cln.Amount
- 16, // 89: cln.SendonionResponse.status:type_name -> cln.SendonionResponse.SendonionStatus
- 240, // 90: cln.SendonionResponse.amount_msat:type_name -> cln.Amount
- 240, // 91: cln.SendonionResponse.amount_sent_msat:type_name -> cln.Amount
- 240, // 92: cln.SendonionFirst_hop.amount_msat:type_name -> cln.Amount
- 17, // 93: cln.ListsendpaysRequest.status:type_name -> cln.ListsendpaysRequest.ListsendpaysStatus
- 18, // 94: cln.ListsendpaysRequest.index:type_name -> cln.ListsendpaysRequest.ListsendpaysIndex
- 111, // 95: cln.ListsendpaysResponse.payments:type_name -> cln.ListsendpaysPayments
- 19, // 96: cln.ListsendpaysPayments.status:type_name -> cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
- 240, // 97: cln.ListsendpaysPayments.amount_msat:type_name -> cln.Amount
- 240, // 98: cln.ListsendpaysPayments.amount_sent_msat:type_name -> cln.Amount
- 114, // 99: cln.ListtransactionsResponse.transactions:type_name -> cln.ListtransactionsTransactions
- 115, // 100: cln.ListtransactionsTransactions.inputs:type_name -> cln.ListtransactionsTransactionsInputs
- 116, // 101: cln.ListtransactionsTransactions.outputs:type_name -> cln.ListtransactionsTransactionsOutputs
- 240, // 102: cln.ListtransactionsTransactionsOutputs.amount_msat:type_name -> cln.Amount
- 240, // 103: cln.PayRequest.amount_msat:type_name -> cln.Amount
- 240, // 104: cln.PayRequest.exemptfee:type_name -> cln.Amount
- 240, // 105: cln.PayRequest.maxfee:type_name -> cln.Amount
- 240, // 106: cln.PayResponse.amount_msat:type_name -> cln.Amount
- 240, // 107: cln.PayResponse.amount_sent_msat:type_name -> cln.Amount
- 20, // 108: cln.PayResponse.status:type_name -> cln.PayResponse.PayStatus
- 121, // 109: cln.ListnodesResponse.nodes:type_name -> cln.ListnodesNodes
- 122, // 110: cln.ListnodesNodes.addresses:type_name -> cln.ListnodesNodesAddresses
- 21, // 111: cln.ListnodesNodesAddresses.item_type:type_name -> cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
- 22, // 112: cln.WaitanyinvoiceResponse.status:type_name -> cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
- 240, // 113: cln.WaitanyinvoiceResponse.amount_msat:type_name -> cln.Amount
- 240, // 114: cln.WaitanyinvoiceResponse.amount_received_msat:type_name -> cln.Amount
- 125, // 115: cln.WaitanyinvoiceResponse.paid_outpoint:type_name -> cln.WaitanyinvoicePaid_outpoint
- 23, // 116: cln.WaitinvoiceResponse.status:type_name -> cln.WaitinvoiceResponse.WaitinvoiceStatus
- 240, // 117: cln.WaitinvoiceResponse.amount_msat:type_name -> cln.Amount
- 240, // 118: cln.WaitinvoiceResponse.amount_received_msat:type_name -> cln.Amount
- 128, // 119: cln.WaitinvoiceResponse.paid_outpoint:type_name -> cln.WaitinvoicePaid_outpoint
- 24, // 120: cln.WaitsendpayResponse.status:type_name -> cln.WaitsendpayResponse.WaitsendpayStatus
- 240, // 121: cln.WaitsendpayResponse.amount_msat:type_name -> cln.Amount
- 240, // 122: cln.WaitsendpayResponse.amount_sent_msat:type_name -> cln.Amount
- 25, // 123: cln.NewaddrRequest.addresstype:type_name -> cln.NewaddrRequest.NewaddrAddresstype
- 247, // 124: cln.WithdrawRequest.satoshi:type_name -> cln.AmountOrAll
- 245, // 125: cln.WithdrawRequest.feerate:type_name -> cln.Feerate
- 244, // 126: cln.WithdrawRequest.utxos:type_name -> cln.Outpoint
- 240, // 127: cln.KeysendRequest.amount_msat:type_name -> cln.Amount
- 240, // 128: cln.KeysendRequest.exemptfee:type_name -> cln.Amount
- 248, // 129: cln.KeysendRequest.routehints:type_name -> cln.RoutehintList
- 249, // 130: cln.KeysendRequest.extratlvs:type_name -> cln.TlvStream
- 240, // 131: cln.KeysendResponse.amount_msat:type_name -> cln.Amount
- 240, // 132: cln.KeysendResponse.amount_sent_msat:type_name -> cln.Amount
- 26, // 133: cln.KeysendResponse.status:type_name -> cln.KeysendResponse.KeysendStatus
- 247, // 134: cln.FundpsbtRequest.satoshi:type_name -> cln.AmountOrAll
- 245, // 135: cln.FundpsbtRequest.feerate:type_name -> cln.Feerate
- 240, // 136: cln.FundpsbtResponse.excess_msat:type_name -> cln.Amount
- 139, // 137: cln.FundpsbtResponse.reservations:type_name -> cln.FundpsbtReservations
- 240, // 138: cln.UtxopsbtRequest.satoshi:type_name -> cln.Amount
- 245, // 139: cln.UtxopsbtRequest.feerate:type_name -> cln.Feerate
- 244, // 140: cln.UtxopsbtRequest.utxos:type_name -> cln.Outpoint
- 240, // 141: cln.UtxopsbtResponse.excess_msat:type_name -> cln.Amount
- 146, // 142: cln.UtxopsbtResponse.reservations:type_name -> cln.UtxopsbtReservations
- 250, // 143: cln.TxprepareRequest.outputs:type_name -> cln.OutputDesc
- 245, // 144: cln.TxprepareRequest.feerate:type_name -> cln.Feerate
- 244, // 145: cln.TxprepareRequest.utxos:type_name -> cln.Outpoint
- 155, // 146: cln.ListpeerchannelsResponse.channels:type_name -> cln.ListpeerchannelsChannels
- 27, // 147: cln.ListpeerchannelsChannels.state:type_name -> cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
- 156, // 148: cln.ListpeerchannelsChannels.updates:type_name -> cln.ListpeerchannelsChannelsUpdates
- 159, // 149: cln.ListpeerchannelsChannels.feerate:type_name -> cln.ListpeerchannelsChannelsFeerate
- 160, // 150: cln.ListpeerchannelsChannels.inflight:type_name -> cln.ListpeerchannelsChannelsInflight
- 241, // 151: cln.ListpeerchannelsChannels.opener:type_name -> cln.ChannelSide
- 241, // 152: cln.ListpeerchannelsChannels.closer:type_name -> cln.ChannelSide
- 161, // 153: cln.ListpeerchannelsChannels.funding:type_name -> cln.ListpeerchannelsChannelsFunding
- 240, // 154: cln.ListpeerchannelsChannels.to_us_msat:type_name -> cln.Amount
- 240, // 155: cln.ListpeerchannelsChannels.min_to_us_msat:type_name -> cln.Amount
- 240, // 156: cln.ListpeerchannelsChannels.max_to_us_msat:type_name -> cln.Amount
- 240, // 157: cln.ListpeerchannelsChannels.total_msat:type_name -> cln.Amount
- 240, // 158: cln.ListpeerchannelsChannels.fee_base_msat:type_name -> cln.Amount
- 240, // 159: cln.ListpeerchannelsChannels.dust_limit_msat:type_name -> cln.Amount
- 240, // 160: cln.ListpeerchannelsChannels.max_total_htlc_in_msat:type_name -> cln.Amount
- 240, // 161: cln.ListpeerchannelsChannels.their_reserve_msat:type_name -> cln.Amount
- 240, // 162: cln.ListpeerchannelsChannels.our_reserve_msat:type_name -> cln.Amount
- 240, // 163: cln.ListpeerchannelsChannels.spendable_msat:type_name -> cln.Amount
- 240, // 164: cln.ListpeerchannelsChannels.receivable_msat:type_name -> cln.Amount
- 240, // 165: cln.ListpeerchannelsChannels.minimum_htlc_in_msat:type_name -> cln.Amount
- 240, // 166: cln.ListpeerchannelsChannels.minimum_htlc_out_msat:type_name -> cln.Amount
- 240, // 167: cln.ListpeerchannelsChannels.maximum_htlc_out_msat:type_name -> cln.Amount
- 162, // 168: cln.ListpeerchannelsChannels.alias:type_name -> cln.ListpeerchannelsChannelsAlias
- 240, // 169: cln.ListpeerchannelsChannels.in_offered_msat:type_name -> cln.Amount
- 240, // 170: cln.ListpeerchannelsChannels.in_fulfilled_msat:type_name -> cln.Amount
- 240, // 171: cln.ListpeerchannelsChannels.out_offered_msat:type_name -> cln.Amount
- 240, // 172: cln.ListpeerchannelsChannels.out_fulfilled_msat:type_name -> cln.Amount
- 163, // 173: cln.ListpeerchannelsChannels.htlcs:type_name -> cln.ListpeerchannelsChannelsHtlcs
- 157, // 174: cln.ListpeerchannelsChannelsUpdates.local:type_name -> cln.ListpeerchannelsChannelsUpdatesLocal
- 158, // 175: cln.ListpeerchannelsChannelsUpdates.remote:type_name -> cln.ListpeerchannelsChannelsUpdatesRemote
- 240, // 176: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_minimum_msat:type_name -> cln.Amount
- 240, // 177: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_maximum_msat:type_name -> cln.Amount
- 240, // 178: cln.ListpeerchannelsChannelsUpdatesLocal.fee_base_msat:type_name -> cln.Amount
- 240, // 179: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_minimum_msat:type_name -> cln.Amount
- 240, // 180: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_maximum_msat:type_name -> cln.Amount
- 240, // 181: cln.ListpeerchannelsChannelsUpdatesRemote.fee_base_msat:type_name -> cln.Amount
- 240, // 182: cln.ListpeerchannelsChannelsInflight.total_funding_msat:type_name -> cln.Amount
- 240, // 183: cln.ListpeerchannelsChannelsInflight.our_funding_msat:type_name -> cln.Amount
- 240, // 184: cln.ListpeerchannelsChannelsFunding.pushed_msat:type_name -> cln.Amount
- 240, // 185: cln.ListpeerchannelsChannelsFunding.local_funds_msat:type_name -> cln.Amount
- 240, // 186: cln.ListpeerchannelsChannelsFunding.remote_funds_msat:type_name -> cln.Amount
- 240, // 187: cln.ListpeerchannelsChannelsFunding.fee_paid_msat:type_name -> cln.Amount
- 240, // 188: cln.ListpeerchannelsChannelsFunding.fee_rcvd_msat:type_name -> cln.Amount
- 28, // 189: cln.ListpeerchannelsChannelsHtlcs.direction:type_name -> cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
- 240, // 190: cln.ListpeerchannelsChannelsHtlcs.amount_msat:type_name -> cln.Amount
- 242, // 191: cln.ListpeerchannelsChannelsHtlcs.state:type_name -> cln.HtlcState
- 166, // 192: cln.ListclosedchannelsResponse.closedchannels:type_name -> cln.ListclosedchannelsClosedchannels
- 167, // 193: cln.ListclosedchannelsClosedchannels.alias:type_name -> cln.ListclosedchannelsClosedchannelsAlias
- 241, // 194: cln.ListclosedchannelsClosedchannels.opener:type_name -> cln.ChannelSide
- 241, // 195: cln.ListclosedchannelsClosedchannels.closer:type_name -> cln.ChannelSide
- 240, // 196: cln.ListclosedchannelsClosedchannels.funding_fee_paid_msat:type_name -> cln.Amount
- 240, // 197: cln.ListclosedchannelsClosedchannels.funding_fee_rcvd_msat:type_name -> cln.Amount
- 240, // 198: cln.ListclosedchannelsClosedchannels.funding_pushed_msat:type_name -> cln.Amount
- 240, // 199: cln.ListclosedchannelsClosedchannels.total_msat:type_name -> cln.Amount
- 240, // 200: cln.ListclosedchannelsClosedchannels.final_to_us_msat:type_name -> cln.Amount
- 240, // 201: cln.ListclosedchannelsClosedchannels.min_to_us_msat:type_name -> cln.Amount
- 240, // 202: cln.ListclosedchannelsClosedchannels.max_to_us_msat:type_name -> cln.Amount
- 240, // 203: cln.ListclosedchannelsClosedchannels.last_commitment_fee_msat:type_name -> cln.Amount
- 29, // 204: cln.ListclosedchannelsClosedchannels.close_cause:type_name -> cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
- 240, // 205: cln.DecodepayResponse.amount_msat:type_name -> cln.Amount
- 170, // 206: cln.DecodepayResponse.fallbacks:type_name -> cln.DecodepayFallbacks
- 171, // 207: cln.DecodepayResponse.extra:type_name -> cln.DecodepayExtra
- 30, // 208: cln.DecodepayFallbacks.item_type:type_name -> cln.DecodepayFallbacks.DecodepayFallbacksType
- 31, // 209: cln.DecodeResponse.item_type:type_name -> cln.DecodeResponse.DecodeType
- 240, // 210: cln.DecodeResponse.offer_amount_msat:type_name -> cln.Amount
- 174, // 211: cln.DecodeResponse.offer_paths:type_name -> cln.DecodeOffer_paths
- 240, // 212: cln.DecodeResponse.invreq_amount_msat:type_name -> cln.Amount
- 240, // 213: cln.DecodeResponse.invoice_amount_msat:type_name -> cln.Amount
- 177, // 214: cln.DecodeResponse.invoice_fallbacks:type_name -> cln.DecodeInvoice_fallbacks
- 178, // 215: cln.DecodeResponse.fallbacks:type_name -> cln.DecodeFallbacks
- 179, // 216: cln.DecodeResponse.extra:type_name -> cln.DecodeExtra
- 180, // 217: cln.DecodeResponse.restrictions:type_name -> cln.DecodeRestrictions
- 32, // 218: cln.FeeratesRequest.style:type_name -> cln.FeeratesRequest.FeeratesStyle
- 185, // 219: cln.FeeratesResponse.perkb:type_name -> cln.FeeratesPerkb
- 187, // 220: cln.FeeratesResponse.perkw:type_name -> cln.FeeratesPerkw
- 189, // 221: cln.FeeratesResponse.onchain_fee_estimates:type_name -> cln.FeeratesOnchain_fee_estimates
- 186, // 222: cln.FeeratesPerkb.estimates:type_name -> cln.FeeratesPerkbEstimates
- 188, // 223: cln.FeeratesPerkw.estimates:type_name -> cln.FeeratesPerkwEstimates
- 240, // 224: cln.FetchinvoiceRequest.amount_msat:type_name -> cln.Amount
- 192, // 225: cln.FetchinvoiceResponse.changes:type_name -> cln.FetchinvoiceChanges
- 193, // 226: cln.FetchinvoiceResponse.next_period:type_name -> cln.FetchinvoiceNext_period
- 240, // 227: cln.FetchinvoiceChanges.amount_msat:type_name -> cln.Amount
- 247, // 228: cln.FundchannelRequest.amount:type_name -> cln.AmountOrAll
- 245, // 229: cln.FundchannelRequest.feerate:type_name -> cln.Feerate
- 240, // 230: cln.FundchannelRequest.push_msat:type_name -> cln.Amount
- 240, // 231: cln.FundchannelRequest.request_amt:type_name -> cln.Amount
- 244, // 232: cln.FundchannelRequest.utxos:type_name -> cln.Outpoint
- 240, // 233: cln.FundchannelRequest.reserve:type_name -> cln.Amount
- 196, // 234: cln.FundchannelResponse.channel_type:type_name -> cln.FundchannelChannel_type
- 251, // 235: cln.FundchannelChannel_type.names:type_name -> cln.ChannelTypeName
- 240, // 236: cln.GetrouteRequest.amount_msat:type_name -> cln.Amount
- 199, // 237: cln.GetrouteResponse.route:type_name -> cln.GetrouteRoute
- 240, // 238: cln.GetrouteRoute.amount_msat:type_name -> cln.Amount
- 33, // 239: cln.GetrouteRoute.style:type_name -> cln.GetrouteRoute.GetrouteRouteStyle
- 34, // 240: cln.ListforwardsRequest.status:type_name -> cln.ListforwardsRequest.ListforwardsStatus
- 35, // 241: cln.ListforwardsRequest.index:type_name -> cln.ListforwardsRequest.ListforwardsIndex
- 202, // 242: cln.ListforwardsResponse.forwards:type_name -> cln.ListforwardsForwards
- 240, // 243: cln.ListforwardsForwards.in_msat:type_name -> cln.Amount
- 36, // 244: cln.ListforwardsForwards.status:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStatus
- 37, // 245: cln.ListforwardsForwards.style:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStyle
- 240, // 246: cln.ListforwardsForwards.fee_msat:type_name -> cln.Amount
- 240, // 247: cln.ListforwardsForwards.out_msat:type_name -> cln.Amount
- 205, // 248: cln.ListoffersResponse.offers:type_name -> cln.ListoffersOffers
- 38, // 249: cln.ListpaysRequest.status:type_name -> cln.ListpaysRequest.ListpaysStatus
- 208, // 250: cln.ListpaysResponse.pays:type_name -> cln.ListpaysPays
- 39, // 251: cln.ListpaysPays.status:type_name -> cln.ListpaysPays.ListpaysPaysStatus
- 240, // 252: cln.ListpaysPays.amount_msat:type_name -> cln.Amount
- 240, // 253: cln.ListpaysPays.amount_sent_msat:type_name -> cln.Amount
- 211, // 254: cln.ListhtlcsResponse.htlcs:type_name -> cln.ListhtlcsHtlcs
- 240, // 255: cln.ListhtlcsHtlcs.amount_msat:type_name -> cln.Amount
- 40, // 256: cln.ListhtlcsHtlcs.direction:type_name -> cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
- 242, // 257: cln.ListhtlcsHtlcs.state:type_name -> cln.HtlcState
- 240, // 258: cln.SetchannelRequest.feebase:type_name -> cln.Amount
- 240, // 259: cln.SetchannelRequest.htlcmin:type_name -> cln.Amount
- 240, // 260: cln.SetchannelRequest.htlcmax:type_name -> cln.Amount
- 220, // 261: cln.SetchannelResponse.channels:type_name -> cln.SetchannelChannels
- 240, // 262: cln.SetchannelChannels.fee_base_msat:type_name -> cln.Amount
- 240, // 263: cln.SetchannelChannels.minimum_htlc_out_msat:type_name -> cln.Amount
- 240, // 264: cln.SetchannelChannels.maximum_htlc_out_msat:type_name -> cln.Amount
- 41, // 265: cln.WaitRequest.subsystem:type_name -> cln.WaitRequest.WaitSubsystem
- 42, // 266: cln.WaitRequest.indexname:type_name -> cln.WaitRequest.WaitIndexname
- 43, // 267: cln.WaitResponse.subsystem:type_name -> cln.WaitResponse.WaitSubsystem
- 240, // 268: cln.PreapprovekeysendRequest.amount_msat:type_name -> cln.Amount
- 239, // 269: cln.BkprlistincomeResponse.income_events:type_name -> cln.BkprlistincomeIncome_events
- 240, // 270: cln.BkprlistincomeIncome_events.credit_msat:type_name -> cln.Amount
- 240, // 271: cln.BkprlistincomeIncome_events.debit_msat:type_name -> cln.Amount
- 44, // 272: cln.Node.Getinfo:input_type -> cln.GetinfoRequest
- 49, // 273: cln.Node.ListPeers:input_type -> cln.ListpeersRequest
- 59, // 274: cln.Node.ListFunds:input_type -> cln.ListfundsRequest
- 63, // 275: cln.Node.SendPay:input_type -> cln.SendpayRequest
- 66, // 276: cln.Node.ListChannels:input_type -> cln.ListchannelsRequest
- 69, // 277: cln.Node.AddGossip:input_type -> cln.AddgossipRequest
- 71, // 278: cln.Node.AutoCleanInvoice:input_type -> cln.AutocleaninvoiceRequest
- 73, // 279: cln.Node.CheckMessage:input_type -> cln.CheckmessageRequest
- 75, // 280: cln.Node.Close:input_type -> cln.CloseRequest
- 77, // 281: cln.Node.ConnectPeer:input_type -> cln.ConnectRequest
- 80, // 282: cln.Node.CreateInvoice:input_type -> cln.CreateinvoiceRequest
- 83, // 283: cln.Node.Datastore:input_type -> cln.DatastoreRequest
- 85, // 284: cln.Node.DatastoreUsage:input_type -> cln.DatastoreusageRequest
- 88, // 285: cln.Node.CreateOnion:input_type -> cln.CreateonionRequest
- 91, // 286: cln.Node.DelDatastore:input_type -> cln.DeldatastoreRequest
- 93, // 287: cln.Node.DelExpiredInvoice:input_type -> cln.DelexpiredinvoiceRequest
- 95, // 288: cln.Node.DelInvoice:input_type -> cln.DelinvoiceRequest
- 97, // 289: cln.Node.Invoice:input_type -> cln.InvoiceRequest
- 99, // 290: cln.Node.ListDatastore:input_type -> cln.ListdatastoreRequest
- 102, // 291: cln.Node.ListInvoices:input_type -> cln.ListinvoicesRequest
- 106, // 292: cln.Node.SendOnion:input_type -> cln.SendonionRequest
- 109, // 293: cln.Node.ListSendPays:input_type -> cln.ListsendpaysRequest
- 112, // 294: cln.Node.ListTransactions:input_type -> cln.ListtransactionsRequest
- 117, // 295: cln.Node.Pay:input_type -> cln.PayRequest
- 119, // 296: cln.Node.ListNodes:input_type -> cln.ListnodesRequest
- 123, // 297: cln.Node.WaitAnyInvoice:input_type -> cln.WaitanyinvoiceRequest
- 126, // 298: cln.Node.WaitInvoice:input_type -> cln.WaitinvoiceRequest
- 129, // 299: cln.Node.WaitSendPay:input_type -> cln.WaitsendpayRequest
- 131, // 300: cln.Node.NewAddr:input_type -> cln.NewaddrRequest
- 133, // 301: cln.Node.Withdraw:input_type -> cln.WithdrawRequest
- 135, // 302: cln.Node.KeySend:input_type -> cln.KeysendRequest
- 137, // 303: cln.Node.FundPsbt:input_type -> cln.FundpsbtRequest
- 140, // 304: cln.Node.SendPsbt:input_type -> cln.SendpsbtRequest
- 142, // 305: cln.Node.SignPsbt:input_type -> cln.SignpsbtRequest
- 144, // 306: cln.Node.UtxoPsbt:input_type -> cln.UtxopsbtRequest
- 147, // 307: cln.Node.TxDiscard:input_type -> cln.TxdiscardRequest
- 149, // 308: cln.Node.TxPrepare:input_type -> cln.TxprepareRequest
- 151, // 309: cln.Node.TxSend:input_type -> cln.TxsendRequest
- 153, // 310: cln.Node.ListPeerChannels:input_type -> cln.ListpeerchannelsRequest
- 164, // 311: cln.Node.ListClosedChannels:input_type -> cln.ListclosedchannelsRequest
- 168, // 312: cln.Node.DecodePay:input_type -> cln.DecodepayRequest
- 172, // 313: cln.Node.Decode:input_type -> cln.DecodeRequest
- 181, // 314: cln.Node.Disconnect:input_type -> cln.DisconnectRequest
- 183, // 315: cln.Node.Feerates:input_type -> cln.FeeratesRequest
- 190, // 316: cln.Node.FetchInvoice:input_type -> cln.FetchinvoiceRequest
- 194, // 317: cln.Node.FundChannel:input_type -> cln.FundchannelRequest
- 197, // 318: cln.Node.GetRoute:input_type -> cln.GetrouteRequest
- 200, // 319: cln.Node.ListForwards:input_type -> cln.ListforwardsRequest
- 203, // 320: cln.Node.ListOffers:input_type -> cln.ListoffersRequest
- 206, // 321: cln.Node.ListPays:input_type -> cln.ListpaysRequest
- 209, // 322: cln.Node.ListHtlcs:input_type -> cln.ListhtlcsRequest
- 212, // 323: cln.Node.Offer:input_type -> cln.OfferRequest
- 214, // 324: cln.Node.Ping:input_type -> cln.PingRequest
- 216, // 325: cln.Node.SendCustomMsg:input_type -> cln.SendcustommsgRequest
- 218, // 326: cln.Node.SetChannel:input_type -> cln.SetchannelRequest
- 221, // 327: cln.Node.SignInvoice:input_type -> cln.SigninvoiceRequest
- 223, // 328: cln.Node.SignMessage:input_type -> cln.SignmessageRequest
- 225, // 329: cln.Node.WaitBlockHeight:input_type -> cln.WaitblockheightRequest
- 227, // 330: cln.Node.Wait:input_type -> cln.WaitRequest
- 229, // 331: cln.Node.Stop:input_type -> cln.StopRequest
- 231, // 332: cln.Node.PreApproveKeysend:input_type -> cln.PreapprovekeysendRequest
- 233, // 333: cln.Node.PreApproveInvoice:input_type -> cln.PreapproveinvoiceRequest
- 235, // 334: cln.Node.StaticBackup:input_type -> cln.StaticbackupRequest
- 237, // 335: cln.Node.BkprListIncome:input_type -> cln.BkprlistincomeRequest
- 45, // 336: cln.Node.Getinfo:output_type -> cln.GetinfoResponse
- 50, // 337: cln.Node.ListPeers:output_type -> cln.ListpeersResponse
- 60, // 338: cln.Node.ListFunds:output_type -> cln.ListfundsResponse
- 64, // 339: cln.Node.SendPay:output_type -> cln.SendpayResponse
- 67, // 340: cln.Node.ListChannels:output_type -> cln.ListchannelsResponse
- 70, // 341: cln.Node.AddGossip:output_type -> cln.AddgossipResponse
- 72, // 342: cln.Node.AutoCleanInvoice:output_type -> cln.AutocleaninvoiceResponse
- 74, // 343: cln.Node.CheckMessage:output_type -> cln.CheckmessageResponse
- 76, // 344: cln.Node.Close:output_type -> cln.CloseResponse
- 78, // 345: cln.Node.ConnectPeer:output_type -> cln.ConnectResponse
- 81, // 346: cln.Node.CreateInvoice:output_type -> cln.CreateinvoiceResponse
- 84, // 347: cln.Node.Datastore:output_type -> cln.DatastoreResponse
- 86, // 348: cln.Node.DatastoreUsage:output_type -> cln.DatastoreusageResponse
- 89, // 349: cln.Node.CreateOnion:output_type -> cln.CreateonionResponse
- 92, // 350: cln.Node.DelDatastore:output_type -> cln.DeldatastoreResponse
- 94, // 351: cln.Node.DelExpiredInvoice:output_type -> cln.DelexpiredinvoiceResponse
- 96, // 352: cln.Node.DelInvoice:output_type -> cln.DelinvoiceResponse
- 98, // 353: cln.Node.Invoice:output_type -> cln.InvoiceResponse
- 100, // 354: cln.Node.ListDatastore:output_type -> cln.ListdatastoreResponse
- 103, // 355: cln.Node.ListInvoices:output_type -> cln.ListinvoicesResponse
- 107, // 356: cln.Node.SendOnion:output_type -> cln.SendonionResponse
- 110, // 357: cln.Node.ListSendPays:output_type -> cln.ListsendpaysResponse
- 113, // 358: cln.Node.ListTransactions:output_type -> cln.ListtransactionsResponse
- 118, // 359: cln.Node.Pay:output_type -> cln.PayResponse
- 120, // 360: cln.Node.ListNodes:output_type -> cln.ListnodesResponse
- 124, // 361: cln.Node.WaitAnyInvoice:output_type -> cln.WaitanyinvoiceResponse
- 127, // 362: cln.Node.WaitInvoice:output_type -> cln.WaitinvoiceResponse
- 130, // 363: cln.Node.WaitSendPay:output_type -> cln.WaitsendpayResponse
- 132, // 364: cln.Node.NewAddr:output_type -> cln.NewaddrResponse
- 134, // 365: cln.Node.Withdraw:output_type -> cln.WithdrawResponse
- 136, // 366: cln.Node.KeySend:output_type -> cln.KeysendResponse
- 138, // 367: cln.Node.FundPsbt:output_type -> cln.FundpsbtResponse
- 141, // 368: cln.Node.SendPsbt:output_type -> cln.SendpsbtResponse
- 143, // 369: cln.Node.SignPsbt:output_type -> cln.SignpsbtResponse
- 145, // 370: cln.Node.UtxoPsbt:output_type -> cln.UtxopsbtResponse
- 148, // 371: cln.Node.TxDiscard:output_type -> cln.TxdiscardResponse
- 150, // 372: cln.Node.TxPrepare:output_type -> cln.TxprepareResponse
- 152, // 373: cln.Node.TxSend:output_type -> cln.TxsendResponse
- 154, // 374: cln.Node.ListPeerChannels:output_type -> cln.ListpeerchannelsResponse
- 165, // 375: cln.Node.ListClosedChannels:output_type -> cln.ListclosedchannelsResponse
- 169, // 376: cln.Node.DecodePay:output_type -> cln.DecodepayResponse
- 173, // 377: cln.Node.Decode:output_type -> cln.DecodeResponse
- 182, // 378: cln.Node.Disconnect:output_type -> cln.DisconnectResponse
- 184, // 379: cln.Node.Feerates:output_type -> cln.FeeratesResponse
- 191, // 380: cln.Node.FetchInvoice:output_type -> cln.FetchinvoiceResponse
- 195, // 381: cln.Node.FundChannel:output_type -> cln.FundchannelResponse
- 198, // 382: cln.Node.GetRoute:output_type -> cln.GetrouteResponse
- 201, // 383: cln.Node.ListForwards:output_type -> cln.ListforwardsResponse
- 204, // 384: cln.Node.ListOffers:output_type -> cln.ListoffersResponse
- 207, // 385: cln.Node.ListPays:output_type -> cln.ListpaysResponse
- 210, // 386: cln.Node.ListHtlcs:output_type -> cln.ListhtlcsResponse
- 213, // 387: cln.Node.Offer:output_type -> cln.OfferResponse
- 215, // 388: cln.Node.Ping:output_type -> cln.PingResponse
- 217, // 389: cln.Node.SendCustomMsg:output_type -> cln.SendcustommsgResponse
- 219, // 390: cln.Node.SetChannel:output_type -> cln.SetchannelResponse
- 222, // 391: cln.Node.SignInvoice:output_type -> cln.SigninvoiceResponse
- 224, // 392: cln.Node.SignMessage:output_type -> cln.SignmessageResponse
- 226, // 393: cln.Node.WaitBlockHeight:output_type -> cln.WaitblockheightResponse
- 228, // 394: cln.Node.Wait:output_type -> cln.WaitResponse
- 230, // 395: cln.Node.Stop:output_type -> cln.StopResponse
- 232, // 396: cln.Node.PreApproveKeysend:output_type -> cln.PreapprovekeysendResponse
- 234, // 397: cln.Node.PreApproveInvoice:output_type -> cln.PreapproveinvoiceResponse
- 236, // 398: cln.Node.StaticBackup:output_type -> cln.StaticbackupResponse
- 238, // 399: cln.Node.BkprListIncome:output_type -> cln.BkprlistincomeResponse
- 336, // [336:400] is the sub-list for method output_type
- 272, // [272:336] is the sub-list for method input_type
- 272, // [272:272] is the sub-list for extension type_name
- 272, // [272:272] is the sub-list for extension extendee
- 0, // [0:272] is the sub-list for field type_name
+ 2, // 6: cln.ListpeersRequest.level:type_name -> cln.ListpeersRequest.ListpeersLevel
+ 72, // 7: cln.ListpeersResponse.peers:type_name -> cln.ListpeersPeers
+ 73, // 8: cln.ListpeersPeers.log:type_name -> cln.ListpeersPeersLog
+ 3, // 9: cln.ListpeersPeersLog.item_type:type_name -> cln.ListpeersPeersLog.ListpeersPeersLogType
+ 76, // 10: cln.ListfundsResponse.outputs:type_name -> cln.ListfundsOutputs
+ 77, // 11: cln.ListfundsResponse.channels:type_name -> cln.ListfundsChannels
+ 484, // 12: cln.ListfundsOutputs.amount_msat:type_name -> cln.Amount
+ 4, // 13: cln.ListfundsOutputs.status:type_name -> cln.ListfundsOutputs.ListfundsOutputsStatus
+ 484, // 14: cln.ListfundsChannels.our_amount_msat:type_name -> cln.Amount
+ 484, // 15: cln.ListfundsChannels.amount_msat:type_name -> cln.Amount
+ 485, // 16: cln.ListfundsChannels.state:type_name -> cln.ChannelState
+ 80, // 17: cln.SendpayRequest.route:type_name -> cln.SendpayRoute
+ 484, // 18: cln.SendpayRequest.amount_msat:type_name -> cln.Amount
+ 5, // 19: cln.SendpayResponse.status:type_name -> cln.SendpayResponse.SendpayStatus
+ 484, // 20: cln.SendpayResponse.amount_msat:type_name -> cln.Amount
+ 484, // 21: cln.SendpayResponse.amount_sent_msat:type_name -> cln.Amount
+ 484, // 22: cln.SendpayRoute.amount_msat:type_name -> cln.Amount
+ 83, // 23: cln.ListchannelsResponse.channels:type_name -> cln.ListchannelsChannels
+ 484, // 24: cln.ListchannelsChannels.amount_msat:type_name -> cln.Amount
+ 484, // 25: cln.ListchannelsChannels.htlc_minimum_msat:type_name -> cln.Amount
+ 484, // 26: cln.ListchannelsChannels.htlc_maximum_msat:type_name -> cln.Amount
+ 484, // 27: cln.AddpsbtoutputRequest.satoshi:type_name -> cln.Amount
+ 486, // 28: cln.AutocleanonceRequest.subsystem:type_name -> cln.AutocleanSubsystem
+ 92, // 29: cln.AutocleanonceResponse.autoclean:type_name -> cln.AutocleanonceAutoclean
+ 93, // 30: cln.AutocleanonceAutoclean.succeededforwards:type_name -> cln.AutocleanonceAutocleanSucceededforwards
+ 94, // 31: cln.AutocleanonceAutoclean.failedforwards:type_name -> cln.AutocleanonceAutocleanFailedforwards
+ 95, // 32: cln.AutocleanonceAutoclean.succeededpays:type_name -> cln.AutocleanonceAutocleanSucceededpays
+ 96, // 33: cln.AutocleanonceAutoclean.failedpays:type_name -> cln.AutocleanonceAutocleanFailedpays
+ 97, // 34: cln.AutocleanonceAutoclean.paidinvoices:type_name -> cln.AutocleanonceAutocleanPaidinvoices
+ 98, // 35: cln.AutocleanonceAutoclean.expiredinvoices:type_name -> cln.AutocleanonceAutocleanExpiredinvoices
+ 486, // 36: cln.AutocleanstatusRequest.subsystem:type_name -> cln.AutocleanSubsystem
+ 101, // 37: cln.AutocleanstatusResponse.autoclean:type_name -> cln.AutocleanstatusAutoclean
+ 102, // 38: cln.AutocleanstatusAutoclean.succeededforwards:type_name -> cln.AutocleanstatusAutocleanSucceededforwards
+ 103, // 39: cln.AutocleanstatusAutoclean.failedforwards:type_name -> cln.AutocleanstatusAutocleanFailedforwards
+ 104, // 40: cln.AutocleanstatusAutoclean.succeededpays:type_name -> cln.AutocleanstatusAutocleanSucceededpays
+ 105, // 41: cln.AutocleanstatusAutoclean.failedpays:type_name -> cln.AutocleanstatusAutocleanFailedpays
+ 106, // 42: cln.AutocleanstatusAutoclean.paidinvoices:type_name -> cln.AutocleanstatusAutocleanPaidinvoices
+ 107, // 43: cln.AutocleanstatusAutoclean.expiredinvoices:type_name -> cln.AutocleanstatusAutocleanExpiredinvoices
+ 487, // 44: cln.CloseRequest.wrong_funding:type_name -> cln.Outpoint
+ 488, // 45: cln.CloseRequest.feerange:type_name -> cln.Feerate
+ 6, // 46: cln.CloseResponse.item_type:type_name -> cln.CloseResponse.CloseType
+ 7, // 47: cln.ConnectResponse.direction:type_name -> cln.ConnectResponse.ConnectDirection
+ 114, // 48: cln.ConnectResponse.address:type_name -> cln.ConnectAddress
+ 8, // 49: cln.ConnectAddress.item_type:type_name -> cln.ConnectAddress.ConnectAddressType
+ 484, // 50: cln.CreateinvoiceResponse.amount_msat:type_name -> cln.Amount
+ 9, // 51: cln.CreateinvoiceResponse.status:type_name -> cln.CreateinvoiceResponse.CreateinvoiceStatus
+ 484, // 52: cln.CreateinvoiceResponse.amount_received_msat:type_name -> cln.Amount
+ 117, // 53: cln.CreateinvoiceResponse.paid_outpoint:type_name -> cln.CreateinvoicePaid_outpoint
+ 10, // 54: cln.DatastoreRequest.mode:type_name -> cln.DatastoreRequest.DatastoreMode
+ 122, // 55: cln.DatastoreusageResponse.datastoreusage:type_name -> cln.DatastoreusageDatastoreusage
+ 125, // 56: cln.CreateonionRequest.hops:type_name -> cln.CreateonionHops
+ 11, // 57: cln.DelinvoiceRequest.status:type_name -> cln.DelinvoiceRequest.DelinvoiceStatus
+ 484, // 58: cln.DelinvoiceResponse.amount_msat:type_name -> cln.Amount
+ 12, // 59: cln.DelinvoiceResponse.status:type_name -> cln.DelinvoiceResponse.DelinvoiceStatus
+ 484, // 60: cln.DelinvoiceResponse.amount_received_msat:type_name -> cln.Amount
+ 13, // 61: cln.RecoverResponse.result:type_name -> cln.RecoverResponse.RecoverResult
+ 489, // 62: cln.InvoiceRequest.amount_msat:type_name -> cln.AmountOrAny
+ 484, // 63: cln.InvoicerequestRequest.amount:type_name -> cln.Amount
+ 146, // 64: cln.ListinvoicerequestsResponse.invoicerequests:type_name -> cln.ListinvoicerequestsInvoicerequests
+ 149, // 65: cln.ListdatastoreResponse.datastore:type_name -> cln.ListdatastoreDatastore
+ 14, // 66: cln.ListinvoicesRequest.index:type_name -> cln.ListinvoicesRequest.ListinvoicesIndex
+ 152, // 67: cln.ListinvoicesResponse.invoices:type_name -> cln.ListinvoicesInvoices
+ 15, // 68: cln.ListinvoicesInvoices.status:type_name -> cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
+ 484, // 69: cln.ListinvoicesInvoices.amount_msat:type_name -> cln.Amount
+ 484, // 70: cln.ListinvoicesInvoices.amount_received_msat:type_name -> cln.Amount
+ 153, // 71: cln.ListinvoicesInvoices.paid_outpoint:type_name -> cln.ListinvoicesInvoicesPaid_outpoint
+ 156, // 72: cln.SendonionRequest.first_hop:type_name -> cln.SendonionFirst_hop
+ 484, // 73: cln.SendonionRequest.amount_msat:type_name -> cln.Amount
+ 16, // 74: cln.SendonionResponse.status:type_name -> cln.SendonionResponse.SendonionStatus
+ 484, // 75: cln.SendonionResponse.amount_msat:type_name -> cln.Amount
+ 484, // 76: cln.SendonionResponse.amount_sent_msat:type_name -> cln.Amount
+ 484, // 77: cln.SendonionFirst_hop.amount_msat:type_name -> cln.Amount
+ 17, // 78: cln.ListsendpaysRequest.status:type_name -> cln.ListsendpaysRequest.ListsendpaysStatus
+ 18, // 79: cln.ListsendpaysRequest.index:type_name -> cln.ListsendpaysRequest.ListsendpaysIndex
+ 159, // 80: cln.ListsendpaysResponse.payments:type_name -> cln.ListsendpaysPayments
+ 19, // 81: cln.ListsendpaysPayments.status:type_name -> cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
+ 484, // 82: cln.ListsendpaysPayments.amount_msat:type_name -> cln.Amount
+ 484, // 83: cln.ListsendpaysPayments.amount_sent_msat:type_name -> cln.Amount
+ 162, // 84: cln.ListtransactionsResponse.transactions:type_name -> cln.ListtransactionsTransactions
+ 163, // 85: cln.ListtransactionsTransactions.inputs:type_name -> cln.ListtransactionsTransactionsInputs
+ 164, // 86: cln.ListtransactionsTransactions.outputs:type_name -> cln.ListtransactionsTransactionsOutputs
+ 484, // 87: cln.ListtransactionsTransactionsOutputs.amount_msat:type_name -> cln.Amount
+ 484, // 88: cln.PayRequest.exemptfee:type_name -> cln.Amount
+ 484, // 89: cln.PayRequest.maxfee:type_name -> cln.Amount
+ 484, // 90: cln.PayRequest.amount_msat:type_name -> cln.Amount
+ 484, // 91: cln.PayRequest.partial_msat:type_name -> cln.Amount
+ 484, // 92: cln.PayResponse.amount_msat:type_name -> cln.Amount
+ 484, // 93: cln.PayResponse.amount_sent_msat:type_name -> cln.Amount
+ 20, // 94: cln.PayResponse.status:type_name -> cln.PayResponse.PayStatus
+ 171, // 95: cln.ListnodesResponse.nodes:type_name -> cln.ListnodesNodes
+ 173, // 96: cln.ListnodesNodes.addresses:type_name -> cln.ListnodesNodesAddresses
+ 172, // 97: cln.ListnodesNodes.option_will_fund:type_name -> cln.ListnodesNodesOption_will_fund
+ 484, // 98: cln.ListnodesNodesOption_will_fund.lease_fee_base_msat:type_name -> cln.Amount
+ 484, // 99: cln.ListnodesNodesOption_will_fund.channel_fee_max_base_msat:type_name -> cln.Amount
+ 21, // 100: cln.ListnodesNodesAddresses.item_type:type_name -> cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
+ 22, // 101: cln.WaitanyinvoiceResponse.status:type_name -> cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
+ 484, // 102: cln.WaitanyinvoiceResponse.amount_msat:type_name -> cln.Amount
+ 484, // 103: cln.WaitanyinvoiceResponse.amount_received_msat:type_name -> cln.Amount
+ 176, // 104: cln.WaitanyinvoiceResponse.paid_outpoint:type_name -> cln.WaitanyinvoicePaid_outpoint
+ 23, // 105: cln.WaitinvoiceResponse.status:type_name -> cln.WaitinvoiceResponse.WaitinvoiceStatus
+ 484, // 106: cln.WaitinvoiceResponse.amount_msat:type_name -> cln.Amount
+ 484, // 107: cln.WaitinvoiceResponse.amount_received_msat:type_name -> cln.Amount
+ 179, // 108: cln.WaitinvoiceResponse.paid_outpoint:type_name -> cln.WaitinvoicePaid_outpoint
+ 24, // 109: cln.WaitsendpayResponse.status:type_name -> cln.WaitsendpayResponse.WaitsendpayStatus
+ 484, // 110: cln.WaitsendpayResponse.amount_msat:type_name -> cln.Amount
+ 484, // 111: cln.WaitsendpayResponse.amount_sent_msat:type_name -> cln.Amount
+ 25, // 112: cln.NewaddrRequest.addresstype:type_name -> cln.NewaddrRequest.NewaddrAddresstype
+ 490, // 113: cln.WithdrawRequest.satoshi:type_name -> cln.AmountOrAll
+ 487, // 114: cln.WithdrawRequest.utxos:type_name -> cln.Outpoint
+ 488, // 115: cln.WithdrawRequest.feerate:type_name -> cln.Feerate
+ 484, // 116: cln.KeysendRequest.exemptfee:type_name -> cln.Amount
+ 491, // 117: cln.KeysendRequest.routehints:type_name -> cln.RoutehintList
+ 492, // 118: cln.KeysendRequest.extratlvs:type_name -> cln.TlvStream
+ 484, // 119: cln.KeysendRequest.amount_msat:type_name -> cln.Amount
+ 484, // 120: cln.KeysendResponse.amount_msat:type_name -> cln.Amount
+ 484, // 121: cln.KeysendResponse.amount_sent_msat:type_name -> cln.Amount
+ 26, // 122: cln.KeysendResponse.status:type_name -> cln.KeysendResponse.KeysendStatus
+ 490, // 123: cln.FundpsbtRequest.satoshi:type_name -> cln.AmountOrAll
+ 488, // 124: cln.FundpsbtRequest.feerate:type_name -> cln.Feerate
+ 484, // 125: cln.FundpsbtResponse.excess_msat:type_name -> cln.Amount
+ 190, // 126: cln.FundpsbtResponse.reservations:type_name -> cln.FundpsbtReservations
+ 490, // 127: cln.UtxopsbtRequest.satoshi:type_name -> cln.AmountOrAll
+ 488, // 128: cln.UtxopsbtRequest.feerate:type_name -> cln.Feerate
+ 487, // 129: cln.UtxopsbtRequest.utxos:type_name -> cln.Outpoint
+ 484, // 130: cln.UtxopsbtResponse.excess_msat:type_name -> cln.Amount
+ 197, // 131: cln.UtxopsbtResponse.reservations:type_name -> cln.UtxopsbtReservations
+ 488, // 132: cln.TxprepareRequest.feerate:type_name -> cln.Feerate
+ 487, // 133: cln.TxprepareRequest.utxos:type_name -> cln.Outpoint
+ 493, // 134: cln.TxprepareRequest.outputs:type_name -> cln.OutputDesc
+ 206, // 135: cln.ListpeerchannelsResponse.channels:type_name -> cln.ListpeerchannelsChannels
+ 27, // 136: cln.ListpeerchannelsChannels.state:type_name -> cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
+ 210, // 137: cln.ListpeerchannelsChannels.feerate:type_name -> cln.ListpeerchannelsChannelsFeerate
+ 211, // 138: cln.ListpeerchannelsChannels.inflight:type_name -> cln.ListpeerchannelsChannelsInflight
+ 494, // 139: cln.ListpeerchannelsChannels.opener:type_name -> cln.ChannelSide
+ 494, // 140: cln.ListpeerchannelsChannels.closer:type_name -> cln.ChannelSide
+ 212, // 141: cln.ListpeerchannelsChannels.funding:type_name -> cln.ListpeerchannelsChannelsFunding
+ 484, // 142: cln.ListpeerchannelsChannels.to_us_msat:type_name -> cln.Amount
+ 484, // 143: cln.ListpeerchannelsChannels.min_to_us_msat:type_name -> cln.Amount
+ 484, // 144: cln.ListpeerchannelsChannels.max_to_us_msat:type_name -> cln.Amount
+ 484, // 145: cln.ListpeerchannelsChannels.total_msat:type_name -> cln.Amount
+ 484, // 146: cln.ListpeerchannelsChannels.fee_base_msat:type_name -> cln.Amount
+ 484, // 147: cln.ListpeerchannelsChannels.dust_limit_msat:type_name -> cln.Amount
+ 484, // 148: cln.ListpeerchannelsChannels.max_total_htlc_in_msat:type_name -> cln.Amount
+ 484, // 149: cln.ListpeerchannelsChannels.their_reserve_msat:type_name -> cln.Amount
+ 484, // 150: cln.ListpeerchannelsChannels.our_reserve_msat:type_name -> cln.Amount
+ 484, // 151: cln.ListpeerchannelsChannels.spendable_msat:type_name -> cln.Amount
+ 484, // 152: cln.ListpeerchannelsChannels.receivable_msat:type_name -> cln.Amount
+ 484, // 153: cln.ListpeerchannelsChannels.minimum_htlc_in_msat:type_name -> cln.Amount
+ 484, // 154: cln.ListpeerchannelsChannels.minimum_htlc_out_msat:type_name -> cln.Amount
+ 484, // 155: cln.ListpeerchannelsChannels.maximum_htlc_out_msat:type_name -> cln.Amount
+ 213, // 156: cln.ListpeerchannelsChannels.alias:type_name -> cln.ListpeerchannelsChannelsAlias
+ 484, // 157: cln.ListpeerchannelsChannels.in_offered_msat:type_name -> cln.Amount
+ 484, // 158: cln.ListpeerchannelsChannels.in_fulfilled_msat:type_name -> cln.Amount
+ 484, // 159: cln.ListpeerchannelsChannels.out_offered_msat:type_name -> cln.Amount
+ 484, // 160: cln.ListpeerchannelsChannels.out_fulfilled_msat:type_name -> cln.Amount
+ 214, // 161: cln.ListpeerchannelsChannels.htlcs:type_name -> cln.ListpeerchannelsChannelsHtlcs
+ 207, // 162: cln.ListpeerchannelsChannels.updates:type_name -> cln.ListpeerchannelsChannelsUpdates
+ 484, // 163: cln.ListpeerchannelsChannels.last_tx_fee_msat:type_name -> cln.Amount
+ 208, // 164: cln.ListpeerchannelsChannelsUpdates.local:type_name -> cln.ListpeerchannelsChannelsUpdatesLocal
+ 209, // 165: cln.ListpeerchannelsChannelsUpdates.remote:type_name -> cln.ListpeerchannelsChannelsUpdatesRemote
+ 484, // 166: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_minimum_msat:type_name -> cln.Amount
+ 484, // 167: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_maximum_msat:type_name -> cln.Amount
+ 484, // 168: cln.ListpeerchannelsChannelsUpdatesLocal.fee_base_msat:type_name -> cln.Amount
+ 484, // 169: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_minimum_msat:type_name -> cln.Amount
+ 484, // 170: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_maximum_msat:type_name -> cln.Amount
+ 484, // 171: cln.ListpeerchannelsChannelsUpdatesRemote.fee_base_msat:type_name -> cln.Amount
+ 484, // 172: cln.ListpeerchannelsChannelsInflight.total_funding_msat:type_name -> cln.Amount
+ 484, // 173: cln.ListpeerchannelsChannelsInflight.our_funding_msat:type_name -> cln.Amount
+ 484, // 174: cln.ListpeerchannelsChannelsFunding.pushed_msat:type_name -> cln.Amount
+ 484, // 175: cln.ListpeerchannelsChannelsFunding.local_funds_msat:type_name -> cln.Amount
+ 484, // 176: cln.ListpeerchannelsChannelsFunding.remote_funds_msat:type_name -> cln.Amount
+ 484, // 177: cln.ListpeerchannelsChannelsFunding.fee_paid_msat:type_name -> cln.Amount
+ 484, // 178: cln.ListpeerchannelsChannelsFunding.fee_rcvd_msat:type_name -> cln.Amount
+ 28, // 179: cln.ListpeerchannelsChannelsHtlcs.direction:type_name -> cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
+ 484, // 180: cln.ListpeerchannelsChannelsHtlcs.amount_msat:type_name -> cln.Amount
+ 495, // 181: cln.ListpeerchannelsChannelsHtlcs.state:type_name -> cln.HtlcState
+ 217, // 182: cln.ListclosedchannelsResponse.closedchannels:type_name -> cln.ListclosedchannelsClosedchannels
+ 218, // 183: cln.ListclosedchannelsClosedchannels.alias:type_name -> cln.ListclosedchannelsClosedchannelsAlias
+ 494, // 184: cln.ListclosedchannelsClosedchannels.opener:type_name -> cln.ChannelSide
+ 494, // 185: cln.ListclosedchannelsClosedchannels.closer:type_name -> cln.ChannelSide
+ 484, // 186: cln.ListclosedchannelsClosedchannels.funding_fee_paid_msat:type_name -> cln.Amount
+ 484, // 187: cln.ListclosedchannelsClosedchannels.funding_fee_rcvd_msat:type_name -> cln.Amount
+ 484, // 188: cln.ListclosedchannelsClosedchannels.funding_pushed_msat:type_name -> cln.Amount
+ 484, // 189: cln.ListclosedchannelsClosedchannels.total_msat:type_name -> cln.Amount
+ 484, // 190: cln.ListclosedchannelsClosedchannels.final_to_us_msat:type_name -> cln.Amount
+ 484, // 191: cln.ListclosedchannelsClosedchannels.min_to_us_msat:type_name -> cln.Amount
+ 484, // 192: cln.ListclosedchannelsClosedchannels.max_to_us_msat:type_name -> cln.Amount
+ 484, // 193: cln.ListclosedchannelsClosedchannels.last_commitment_fee_msat:type_name -> cln.Amount
+ 29, // 194: cln.ListclosedchannelsClosedchannels.close_cause:type_name -> cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
+ 484, // 195: cln.DecodepayResponse.amount_msat:type_name -> cln.Amount
+ 221, // 196: cln.DecodepayResponse.fallbacks:type_name -> cln.DecodepayFallbacks
+ 222, // 197: cln.DecodepayResponse.extra:type_name -> cln.DecodepayExtra
+ 496, // 198: cln.DecodepayResponse.routes:type_name -> cln.DecodeRoutehintList
+ 30, // 199: cln.DecodepayFallbacks.item_type:type_name -> cln.DecodepayFallbacks.DecodepayFallbacksType
+ 31, // 200: cln.DecodeResponse.item_type:type_name -> cln.DecodeResponse.DecodeType
+ 484, // 201: cln.DecodeResponse.offer_amount_msat:type_name -> cln.Amount
+ 225, // 202: cln.DecodeResponse.offer_paths:type_name -> cln.DecodeOffer_paths
+ 484, // 203: cln.DecodeResponse.invreq_amount_msat:type_name -> cln.Amount
+ 484, // 204: cln.DecodeResponse.invoice_amount_msat:type_name -> cln.Amount
+ 228, // 205: cln.DecodeResponse.invoice_fallbacks:type_name -> cln.DecodeInvoice_fallbacks
+ 229, // 206: cln.DecodeResponse.fallbacks:type_name -> cln.DecodeFallbacks
+ 230, // 207: cln.DecodeResponse.extra:type_name -> cln.DecodeExtra
+ 231, // 208: cln.DecodeResponse.restrictions:type_name -> cln.DecodeRestrictions
+ 484, // 209: cln.DecodeResponse.amount_msat:type_name -> cln.Amount
+ 496, // 210: cln.DecodeResponse.routes:type_name -> cln.DecodeRoutehintList
+ 32, // 211: cln.DecodeFallbacks.item_type:type_name -> cln.DecodeFallbacks.DecodeFallbacksType
+ 33, // 212: cln.DelpayRequest.status:type_name -> cln.DelpayRequest.DelpayStatus
+ 234, // 213: cln.DelpayResponse.payments:type_name -> cln.DelpayPayments
+ 34, // 214: cln.DelpayPayments.status:type_name -> cln.DelpayPayments.DelpayPaymentsStatus
+ 484, // 215: cln.DelpayPayments.amount_sent_msat:type_name -> cln.Amount
+ 484, // 216: cln.DelpayPayments.amount_msat:type_name -> cln.Amount
+ 35, // 217: cln.DelforwardRequest.status:type_name -> cln.DelforwardRequest.DelforwardStatus
+ 36, // 218: cln.FeeratesRequest.style:type_name -> cln.FeeratesRequest.FeeratesStyle
+ 243, // 219: cln.FeeratesResponse.perkb:type_name -> cln.FeeratesPerkb
+ 245, // 220: cln.FeeratesResponse.perkw:type_name -> cln.FeeratesPerkw
+ 247, // 221: cln.FeeratesResponse.onchain_fee_estimates:type_name -> cln.FeeratesOnchain_fee_estimates
+ 244, // 222: cln.FeeratesPerkb.estimates:type_name -> cln.FeeratesPerkbEstimates
+ 246, // 223: cln.FeeratesPerkw.estimates:type_name -> cln.FeeratesPerkwEstimates
+ 484, // 224: cln.FetchinvoiceRequest.amount_msat:type_name -> cln.Amount
+ 250, // 225: cln.FetchinvoiceResponse.changes:type_name -> cln.FetchinvoiceChanges
+ 251, // 226: cln.FetchinvoiceResponse.next_period:type_name -> cln.FetchinvoiceNext_period
+ 484, // 227: cln.FetchinvoiceChanges.amount_msat:type_name -> cln.Amount
+ 490, // 228: cln.FundchannelRequest.amount:type_name -> cln.AmountOrAll
+ 488, // 229: cln.FundchannelRequest.feerate:type_name -> cln.Feerate
+ 484, // 230: cln.FundchannelRequest.push_msat:type_name -> cln.Amount
+ 484, // 231: cln.FundchannelRequest.request_amt:type_name -> cln.Amount
+ 487, // 232: cln.FundchannelRequest.utxos:type_name -> cln.Outpoint
+ 484, // 233: cln.FundchannelRequest.reserve:type_name -> cln.Amount
+ 258, // 234: cln.FundchannelResponse.channel_type:type_name -> cln.FundchannelChannel_type
+ 497, // 235: cln.FundchannelChannel_type.names:type_name -> cln.ChannelTypeName
+ 484, // 236: cln.Fundchannel_startRequest.amount:type_name -> cln.Amount
+ 488, // 237: cln.Fundchannel_startRequest.feerate:type_name -> cln.Feerate
+ 484, // 238: cln.Fundchannel_startRequest.push_msat:type_name -> cln.Amount
+ 484, // 239: cln.Fundchannel_startRequest.reserve:type_name -> cln.Amount
+ 261, // 240: cln.Fundchannel_startResponse.channel_type:type_name -> cln.Fundchannel_startChannel_type
+ 497, // 241: cln.Fundchannel_startChannel_type.names:type_name -> cln.ChannelTypeName
+ 37, // 242: cln.GetlogRequest.level:type_name -> cln.GetlogRequest.GetlogLevel
+ 264, // 243: cln.GetlogResponse.log:type_name -> cln.GetlogLog
+ 38, // 244: cln.GetlogLog.item_type:type_name -> cln.GetlogLog.GetlogLogType
+ 39, // 245: cln.FunderupdateRequest.policy:type_name -> cln.FunderupdateRequest.FunderupdatePolicy
+ 484, // 246: cln.FunderupdateRequest.policy_mod:type_name -> cln.Amount
+ 484, // 247: cln.FunderupdateRequest.min_their_funding_msat:type_name -> cln.Amount
+ 484, // 248: cln.FunderupdateRequest.max_their_funding_msat:type_name -> cln.Amount
+ 484, // 249: cln.FunderupdateRequest.per_channel_min_msat:type_name -> cln.Amount
+ 484, // 250: cln.FunderupdateRequest.per_channel_max_msat:type_name -> cln.Amount
+ 484, // 251: cln.FunderupdateRequest.reserve_tank_msat:type_name -> cln.Amount
+ 484, // 252: cln.FunderupdateRequest.lease_fee_base_msat:type_name -> cln.Amount
+ 484, // 253: cln.FunderupdateRequest.channel_fee_max_base_msat:type_name -> cln.Amount
+ 40, // 254: cln.FunderupdateResponse.policy:type_name -> cln.FunderupdateResponse.FunderupdatePolicy
+ 484, // 255: cln.FunderupdateResponse.min_their_funding_msat:type_name -> cln.Amount
+ 484, // 256: cln.FunderupdateResponse.max_their_funding_msat:type_name -> cln.Amount
+ 484, // 257: cln.FunderupdateResponse.per_channel_min_msat:type_name -> cln.Amount
+ 484, // 258: cln.FunderupdateResponse.per_channel_max_msat:type_name -> cln.Amount
+ 484, // 259: cln.FunderupdateResponse.reserve_tank_msat:type_name -> cln.Amount
+ 484, // 260: cln.FunderupdateResponse.lease_fee_base_msat:type_name -> cln.Amount
+ 484, // 261: cln.FunderupdateResponse.channel_fee_max_base_msat:type_name -> cln.Amount
+ 484, // 262: cln.GetrouteRequest.amount_msat:type_name -> cln.Amount
+ 269, // 263: cln.GetrouteResponse.route:type_name -> cln.GetrouteRoute
+ 484, // 264: cln.GetrouteRoute.amount_msat:type_name -> cln.Amount
+ 41, // 265: cln.GetrouteRoute.style:type_name -> cln.GetrouteRoute.GetrouteRouteStyle
+ 42, // 266: cln.ListforwardsRequest.status:type_name -> cln.ListforwardsRequest.ListforwardsStatus
+ 43, // 267: cln.ListforwardsRequest.index:type_name -> cln.ListforwardsRequest.ListforwardsIndex
+ 272, // 268: cln.ListforwardsResponse.forwards:type_name -> cln.ListforwardsForwards
+ 484, // 269: cln.ListforwardsForwards.in_msat:type_name -> cln.Amount
+ 44, // 270: cln.ListforwardsForwards.status:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStatus
+ 484, // 271: cln.ListforwardsForwards.fee_msat:type_name -> cln.Amount
+ 484, // 272: cln.ListforwardsForwards.out_msat:type_name -> cln.Amount
+ 45, // 273: cln.ListforwardsForwards.style:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStyle
+ 275, // 274: cln.ListoffersResponse.offers:type_name -> cln.ListoffersOffers
+ 46, // 275: cln.ListpaysRequest.status:type_name -> cln.ListpaysRequest.ListpaysStatus
+ 278, // 276: cln.ListpaysResponse.pays:type_name -> cln.ListpaysPays
+ 47, // 277: cln.ListpaysPays.status:type_name -> cln.ListpaysPays.ListpaysPaysStatus
+ 484, // 278: cln.ListpaysPays.amount_msat:type_name -> cln.Amount
+ 484, // 279: cln.ListpaysPays.amount_sent_msat:type_name -> cln.Amount
+ 281, // 280: cln.ListhtlcsResponse.htlcs:type_name -> cln.ListhtlcsHtlcs
+ 484, // 281: cln.ListhtlcsHtlcs.amount_msat:type_name -> cln.Amount
+ 48, // 282: cln.ListhtlcsHtlcs.direction:type_name -> cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
+ 495, // 283: cln.ListhtlcsHtlcs.state:type_name -> cln.HtlcState
+ 284, // 284: cln.MultifundchannelRequest.destinations:type_name -> cln.MultifundchannelDestinations
+ 488, // 285: cln.MultifundchannelRequest.feerate:type_name -> cln.Feerate
+ 487, // 286: cln.MultifundchannelRequest.utxos:type_name -> cln.Outpoint
+ 488, // 287: cln.MultifundchannelRequest.commitment_feerate:type_name -> cln.Feerate
+ 285, // 288: cln.MultifundchannelResponse.channel_ids:type_name -> cln.MultifundchannelChannel_ids
+ 287, // 289: cln.MultifundchannelResponse.failed:type_name -> cln.MultifundchannelFailed
+ 490, // 290: cln.MultifundchannelDestinations.amount:type_name -> cln.AmountOrAll
+ 484, // 291: cln.MultifundchannelDestinations.push_msat:type_name -> cln.Amount
+ 484, // 292: cln.MultifundchannelDestinations.request_amt:type_name -> cln.Amount
+ 484, // 293: cln.MultifundchannelDestinations.reserve:type_name -> cln.Amount
+ 286, // 294: cln.MultifundchannelChannel_ids.channel_type:type_name -> cln.MultifundchannelChannel_idsChannel_type
+ 497, // 295: cln.MultifundchannelChannel_idsChannel_type.names:type_name -> cln.ChannelTypeName
+ 49, // 296: cln.MultifundchannelFailed.method:type_name -> cln.MultifundchannelFailed.MultifundchannelFailedMethod
+ 288, // 297: cln.MultifundchannelFailed.error:type_name -> cln.MultifundchannelFailedError
+ 493, // 298: cln.MultiwithdrawRequest.outputs:type_name -> cln.OutputDesc
+ 488, // 299: cln.MultiwithdrawRequest.feerate:type_name -> cln.Feerate
+ 487, // 300: cln.MultiwithdrawRequest.utxos:type_name -> cln.Outpoint
+ 488, // 301: cln.Openchannel_bumpRequest.funding_feerate:type_name -> cln.Feerate
+ 484, // 302: cln.Openchannel_bumpRequest.amount:type_name -> cln.Amount
+ 297, // 303: cln.Openchannel_bumpResponse.channel_type:type_name -> cln.Openchannel_bumpChannel_type
+ 497, // 304: cln.Openchannel_bumpChannel_type.names:type_name -> cln.ChannelTypeName
+ 488, // 305: cln.Openchannel_initRequest.commitment_feerate:type_name -> cln.Feerate
+ 488, // 306: cln.Openchannel_initRequest.funding_feerate:type_name -> cln.Feerate
+ 484, // 307: cln.Openchannel_initRequest.request_amt:type_name -> cln.Amount
+ 484, // 308: cln.Openchannel_initRequest.amount:type_name -> cln.Amount
+ 300, // 309: cln.Openchannel_initResponse.channel_type:type_name -> cln.Openchannel_initChannel_type
+ 497, // 310: cln.Openchannel_initChannel_type.names:type_name -> cln.ChannelTypeName
+ 305, // 311: cln.Openchannel_updateResponse.channel_type:type_name -> cln.Openchannel_updateChannel_type
+ 497, // 312: cln.Openchannel_updateChannel_type.names:type_name -> cln.ChannelTypeName
+ 498, // 313: cln.PluginRequest.subcommand:type_name -> cln.PluginSubcommand
+ 498, // 314: cln.PluginResponse.command:type_name -> cln.PluginSubcommand
+ 310, // 315: cln.PluginResponse.plugins:type_name -> cln.PluginPlugins
+ 313, // 316: cln.RenepaystatusResponse.paystatus:type_name -> cln.RenepaystatusPaystatus
+ 484, // 317: cln.RenepaystatusPaystatus.amount_msat:type_name -> cln.Amount
+ 484, // 318: cln.RenepaystatusPaystatus.amount_sent_msat:type_name -> cln.Amount
+ 50, // 319: cln.RenepaystatusPaystatus.status:type_name -> cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus
+ 484, // 320: cln.RenepayRequest.amount_msat:type_name -> cln.Amount
+ 484, // 321: cln.RenepayRequest.maxfee:type_name -> cln.Amount
+ 484, // 322: cln.RenepayResponse.amount_msat:type_name -> cln.Amount
+ 484, // 323: cln.RenepayResponse.amount_sent_msat:type_name -> cln.Amount
+ 51, // 324: cln.RenepayResponse.status:type_name -> cln.RenepayResponse.RenepayStatus
+ 318, // 325: cln.ReserveinputsResponse.reservations:type_name -> cln.ReserveinputsReservations
+ 484, // 326: cln.SendinvoiceRequest.amount_msat:type_name -> cln.Amount
+ 52, // 327: cln.SendinvoiceResponse.status:type_name -> cln.SendinvoiceResponse.SendinvoiceStatus
+ 484, // 328: cln.SendinvoiceResponse.amount_msat:type_name -> cln.Amount
+ 484, // 329: cln.SendinvoiceResponse.amount_received_msat:type_name -> cln.Amount
+ 325, // 330: cln.SendonionmessageRequest.hops:type_name -> cln.SendonionmessageHops
+ 484, // 331: cln.SetchannelRequest.feebase:type_name -> cln.Amount
+ 484, // 332: cln.SetchannelRequest.htlcmin:type_name -> cln.Amount
+ 484, // 333: cln.SetchannelRequest.htlcmax:type_name -> cln.Amount
+ 328, // 334: cln.SetchannelResponse.channels:type_name -> cln.SetchannelChannels
+ 484, // 335: cln.SetchannelChannels.fee_base_msat:type_name -> cln.Amount
+ 484, // 336: cln.SetchannelChannels.minimum_htlc_out_msat:type_name -> cln.Amount
+ 484, // 337: cln.SetchannelChannels.maximum_htlc_out_msat:type_name -> cln.Amount
+ 331, // 338: cln.SetconfigResponse.config:type_name -> cln.SetconfigConfig
+ 484, // 339: cln.SetconfigConfig.value_msat:type_name -> cln.Amount
+ 346, // 340: cln.UnreserveinputsResponse.reservations:type_name -> cln.UnreserveinputsReservations
+ 488, // 341: cln.UpgradewalletRequest.feerate:type_name -> cln.Feerate
+ 53, // 342: cln.WaitRequest.subsystem:type_name -> cln.WaitRequest.WaitSubsystem
+ 54, // 343: cln.WaitRequest.indexname:type_name -> cln.WaitRequest.WaitIndexname
+ 55, // 344: cln.WaitResponse.subsystem:type_name -> cln.WaitResponse.WaitSubsystem
+ 353, // 345: cln.WaitResponse.details:type_name -> cln.WaitDetails
+ 56, // 346: cln.WaitDetails.status:type_name -> cln.WaitDetails.WaitDetailsStatus
+ 484, // 347: cln.WaitDetails.in_msat:type_name -> cln.Amount
+ 356, // 348: cln.ListconfigsResponse.configs:type_name -> cln.ListconfigsConfigs
+ 427, // 349: cln.ListconfigsResponse.plugins:type_name -> cln.ListconfigsPlugins
+ 429, // 350: cln.ListconfigsResponse.important_plugins:type_name -> cln.ListconfigsImportantplugins
+ 484, // 351: cln.ListconfigsResponse.htlc_minimum_msat:type_name -> cln.Amount
+ 484, // 352: cln.ListconfigsResponse.htlc_maximum_msat:type_name -> cln.Amount
+ 484, // 353: cln.ListconfigsResponse.max_dust_htlc_exposure_msat:type_name -> cln.Amount
+ 484, // 354: cln.ListconfigsResponse.min_emergency_msat:type_name -> cln.Amount
+ 357, // 355: cln.ListconfigsConfigs.conf:type_name -> cln.ListconfigsConfigsConf
+ 358, // 356: cln.ListconfigsConfigs.developer:type_name -> cln.ListconfigsConfigsDeveloper
+ 359, // 357: cln.ListconfigsConfigs.clear_plugins:type_name -> cln.ListconfigsConfigsClearplugins
+ 360, // 358: cln.ListconfigsConfigs.disable_mpp:type_name -> cln.ListconfigsConfigsDisablempp
+ 361, // 359: cln.ListconfigsConfigs.mainnet:type_name -> cln.ListconfigsConfigsMainnet
+ 362, // 360: cln.ListconfigsConfigs.regtest:type_name -> cln.ListconfigsConfigsRegtest
+ 363, // 361: cln.ListconfigsConfigs.signet:type_name -> cln.ListconfigsConfigsSignet
+ 364, // 362: cln.ListconfigsConfigs.testnet:type_name -> cln.ListconfigsConfigsTestnet
+ 365, // 363: cln.ListconfigsConfigs.important_plugin:type_name -> cln.ListconfigsConfigsImportantplugin
+ 366, // 364: cln.ListconfigsConfigs.plugin:type_name -> cln.ListconfigsConfigsPlugin
+ 367, // 365: cln.ListconfigsConfigs.plugin_dir:type_name -> cln.ListconfigsConfigsPlugindir
+ 368, // 366: cln.ListconfigsConfigs.lightning_dir:type_name -> cln.ListconfigsConfigsLightningdir
+ 369, // 367: cln.ListconfigsConfigs.network:type_name -> cln.ListconfigsConfigsNetwork
+ 370, // 368: cln.ListconfigsConfigs.allow_deprecated_apis:type_name -> cln.ListconfigsConfigsAllowdeprecatedapis
+ 371, // 369: cln.ListconfigsConfigs.rpc_file:type_name -> cln.ListconfigsConfigsRpcfile
+ 372, // 370: cln.ListconfigsConfigs.disable_plugin:type_name -> cln.ListconfigsConfigsDisableplugin
+ 373, // 371: cln.ListconfigsConfigs.always_use_proxy:type_name -> cln.ListconfigsConfigsAlwaysuseproxy
+ 374, // 372: cln.ListconfigsConfigs.daemon:type_name -> cln.ListconfigsConfigsDaemon
+ 375, // 373: cln.ListconfigsConfigs.wallet:type_name -> cln.ListconfigsConfigsWallet
+ 376, // 374: cln.ListconfigsConfigs.large_channels:type_name -> cln.ListconfigsConfigsLargechannels
+ 377, // 375: cln.ListconfigsConfigs.experimental_dual_fund:type_name -> cln.ListconfigsConfigsExperimentaldualfund
+ 378, // 376: cln.ListconfigsConfigs.experimental_splicing:type_name -> cln.ListconfigsConfigsExperimentalsplicing
+ 379, // 377: cln.ListconfigsConfigs.experimental_onion_messages:type_name -> cln.ListconfigsConfigsExperimentalonionmessages
+ 380, // 378: cln.ListconfigsConfigs.experimental_offers:type_name -> cln.ListconfigsConfigsExperimentaloffers
+ 381, // 379: cln.ListconfigsConfigs.experimental_shutdown_wrong_funding:type_name -> cln.ListconfigsConfigsExperimentalshutdownwrongfunding
+ 382, // 380: cln.ListconfigsConfigs.experimental_peer_storage:type_name -> cln.ListconfigsConfigsExperimentalpeerstorage
+ 383, // 381: cln.ListconfigsConfigs.experimental_anchors:type_name -> cln.ListconfigsConfigsExperimentalanchors
+ 384, // 382: cln.ListconfigsConfigs.database_upgrade:type_name -> cln.ListconfigsConfigsDatabaseupgrade
+ 385, // 383: cln.ListconfigsConfigs.rgb:type_name -> cln.ListconfigsConfigsRgb
+ 386, // 384: cln.ListconfigsConfigs.alias:type_name -> cln.ListconfigsConfigsAlias
+ 387, // 385: cln.ListconfigsConfigs.pid_file:type_name -> cln.ListconfigsConfigsPidfile
+ 388, // 386: cln.ListconfigsConfigs.ignore_fee_limits:type_name -> cln.ListconfigsConfigsIgnorefeelimits
+ 389, // 387: cln.ListconfigsConfigs.watchtime_blocks:type_name -> cln.ListconfigsConfigsWatchtimeblocks
+ 390, // 388: cln.ListconfigsConfigs.max_locktime_blocks:type_name -> cln.ListconfigsConfigsMaxlocktimeblocks
+ 391, // 389: cln.ListconfigsConfigs.funding_confirms:type_name -> cln.ListconfigsConfigsFundingconfirms
+ 392, // 390: cln.ListconfigsConfigs.cltv_delta:type_name -> cln.ListconfigsConfigsCltvdelta
+ 393, // 391: cln.ListconfigsConfigs.cltv_final:type_name -> cln.ListconfigsConfigsCltvfinal
+ 394, // 392: cln.ListconfigsConfigs.commit_time:type_name -> cln.ListconfigsConfigsCommittime
+ 395, // 393: cln.ListconfigsConfigs.fee_base:type_name -> cln.ListconfigsConfigsFeebase
+ 396, // 394: cln.ListconfigsConfigs.rescan:type_name -> cln.ListconfigsConfigsRescan
+ 397, // 395: cln.ListconfigsConfigs.fee_per_satoshi:type_name -> cln.ListconfigsConfigsFeepersatoshi
+ 398, // 396: cln.ListconfigsConfigs.max_concurrent_htlcs:type_name -> cln.ListconfigsConfigsMaxconcurrenthtlcs
+ 399, // 397: cln.ListconfigsConfigs.htlc_minimum_msat:type_name -> cln.ListconfigsConfigsHtlcminimummsat
+ 400, // 398: cln.ListconfigsConfigs.htlc_maximum_msat:type_name -> cln.ListconfigsConfigsHtlcmaximummsat
+ 401, // 399: cln.ListconfigsConfigs.max_dust_htlc_exposure_msat:type_name -> cln.ListconfigsConfigsMaxdusthtlcexposuremsat
+ 402, // 400: cln.ListconfigsConfigs.min_capacity_sat:type_name -> cln.ListconfigsConfigsMincapacitysat
+ 403, // 401: cln.ListconfigsConfigs.addr:type_name -> cln.ListconfigsConfigsAddr
+ 404, // 402: cln.ListconfigsConfigs.announce_addr:type_name -> cln.ListconfigsConfigsAnnounceaddr
+ 405, // 403: cln.ListconfigsConfigs.bind_addr:type_name -> cln.ListconfigsConfigsBindaddr
+ 406, // 404: cln.ListconfigsConfigs.offline:type_name -> cln.ListconfigsConfigsOffline
+ 407, // 405: cln.ListconfigsConfigs.autolisten:type_name -> cln.ListconfigsConfigsAutolisten
+ 408, // 406: cln.ListconfigsConfigs.proxy:type_name -> cln.ListconfigsConfigsProxy
+ 409, // 407: cln.ListconfigsConfigs.disable_dns:type_name -> cln.ListconfigsConfigsDisabledns
+ 410, // 408: cln.ListconfigsConfigs.announce_addr_discovered:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscovered
+ 411, // 409: cln.ListconfigsConfigs.announce_addr_discovered_port:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscoveredport
+ 412, // 410: cln.ListconfigsConfigs.encrypted_hsm:type_name -> cln.ListconfigsConfigsEncryptedhsm
+ 413, // 411: cln.ListconfigsConfigs.rpc_file_mode:type_name -> cln.ListconfigsConfigsRpcfilemode
+ 414, // 412: cln.ListconfigsConfigs.log_level:type_name -> cln.ListconfigsConfigsLoglevel
+ 415, // 413: cln.ListconfigsConfigs.log_prefix:type_name -> cln.ListconfigsConfigsLogprefix
+ 416, // 414: cln.ListconfigsConfigs.log_file:type_name -> cln.ListconfigsConfigsLogfile
+ 417, // 415: cln.ListconfigsConfigs.log_timestamps:type_name -> cln.ListconfigsConfigsLogtimestamps
+ 418, // 416: cln.ListconfigsConfigs.force_feerates:type_name -> cln.ListconfigsConfigsForcefeerates
+ 419, // 417: cln.ListconfigsConfigs.subdaemon:type_name -> cln.ListconfigsConfigsSubdaemon
+ 420, // 418: cln.ListconfigsConfigs.fetchinvoice_noconnect:type_name -> cln.ListconfigsConfigsFetchinvoicenoconnect
+ 421, // 419: cln.ListconfigsConfigs.accept_htlc_tlv_types:type_name -> cln.ListconfigsConfigsAccepthtlctlvtypes
+ 422, // 420: cln.ListconfigsConfigs.tor_service_password:type_name -> cln.ListconfigsConfigsTorservicepassword
+ 423, // 421: cln.ListconfigsConfigs.announce_addr_dns:type_name -> cln.ListconfigsConfigsAnnounceaddrdns
+ 424, // 422: cln.ListconfigsConfigs.require_confirmed_inputs:type_name -> cln.ListconfigsConfigsRequireconfirmedinputs
+ 425, // 423: cln.ListconfigsConfigs.commit_fee:type_name -> cln.ListconfigsConfigsCommitfee
+ 426, // 424: cln.ListconfigsConfigs.commit_feerate_offset:type_name -> cln.ListconfigsConfigsCommitfeerateoffset
+ 57, // 425: cln.ListconfigsConfigsConf.source:type_name -> cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource
+ 484, // 426: cln.ListconfigsConfigsHtlcminimummsat.value_msat:type_name -> cln.Amount
+ 484, // 427: cln.ListconfigsConfigsHtlcmaximummsat.value_msat:type_name -> cln.Amount
+ 484, // 428: cln.ListconfigsConfigsMaxdusthtlcexposuremsat.value_msat:type_name -> cln.Amount
+ 58, // 429: cln.ListconfigsConfigsAnnounceaddrdiscovered.value_str:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str
+ 428, // 430: cln.ListconfigsPlugins.options:type_name -> cln.ListconfigsPluginsOptions
+ 430, // 431: cln.ListconfigsImportantplugins.options:type_name -> cln.ListconfigsImportantpluginsOptions
+ 59, // 432: cln.StopResponse.result:type_name -> cln.StopResponse.StopResult
+ 435, // 433: cln.HelpResponse.help:type_name -> cln.HelpHelp
+ 60, // 434: cln.HelpResponse.format_hint:type_name -> cln.HelpResponse.HelpFormathint
+ 484, // 435: cln.PreapprovekeysendRequest.amount_msat:type_name -> cln.Amount
+ 444, // 436: cln.BkprchannelsapyResponse.channels_apy:type_name -> cln.BkprchannelsapyChannels_apy
+ 484, // 437: cln.BkprchannelsapyChannels_apy.routed_out_msat:type_name -> cln.Amount
+ 484, // 438: cln.BkprchannelsapyChannels_apy.routed_in_msat:type_name -> cln.Amount
+ 484, // 439: cln.BkprchannelsapyChannels_apy.lease_fee_paid_msat:type_name -> cln.Amount
+ 484, // 440: cln.BkprchannelsapyChannels_apy.lease_fee_earned_msat:type_name -> cln.Amount
+ 484, // 441: cln.BkprchannelsapyChannels_apy.pushed_out_msat:type_name -> cln.Amount
+ 484, // 442: cln.BkprchannelsapyChannels_apy.pushed_in_msat:type_name -> cln.Amount
+ 484, // 443: cln.BkprchannelsapyChannels_apy.our_start_balance_msat:type_name -> cln.Amount
+ 484, // 444: cln.BkprchannelsapyChannels_apy.channel_start_balance_msat:type_name -> cln.Amount
+ 484, // 445: cln.BkprchannelsapyChannels_apy.fees_out_msat:type_name -> cln.Amount
+ 484, // 446: cln.BkprchannelsapyChannels_apy.fees_in_msat:type_name -> cln.Amount
+ 61, // 447: cln.BkprdumpincomecsvResponse.csv_format:type_name -> cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format
+ 449, // 448: cln.BkprinspectResponse.txs:type_name -> cln.BkprinspectTxs
+ 484, // 449: cln.BkprinspectTxs.fees_paid_msat:type_name -> cln.Amount
+ 450, // 450: cln.BkprinspectTxs.outputs:type_name -> cln.BkprinspectTxsOutputs
+ 484, // 451: cln.BkprinspectTxsOutputs.output_value_msat:type_name -> cln.Amount
+ 484, // 452: cln.BkprinspectTxsOutputs.credit_msat:type_name -> cln.Amount
+ 484, // 453: cln.BkprinspectTxsOutputs.debit_msat:type_name -> cln.Amount
+ 453, // 454: cln.BkprlistaccounteventsResponse.events:type_name -> cln.BkprlistaccounteventsEvents
+ 62, // 455: cln.BkprlistaccounteventsEvents.item_type:type_name -> cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType
+ 484, // 456: cln.BkprlistaccounteventsEvents.credit_msat:type_name -> cln.Amount
+ 484, // 457: cln.BkprlistaccounteventsEvents.debit_msat:type_name -> cln.Amount
+ 484, // 458: cln.BkprlistaccounteventsEvents.fees_msat:type_name -> cln.Amount
+ 456, // 459: cln.BkprlistbalancesResponse.accounts:type_name -> cln.BkprlistbalancesAccounts
+ 457, // 460: cln.BkprlistbalancesAccounts.balances:type_name -> cln.BkprlistbalancesAccountsBalances
+ 484, // 461: cln.BkprlistbalancesAccountsBalances.balance_msat:type_name -> cln.Amount
+ 460, // 462: cln.BkprlistincomeResponse.income_events:type_name -> cln.BkprlistincomeIncome_events
+ 484, // 463: cln.BkprlistincomeIncome_events.credit_msat:type_name -> cln.Amount
+ 484, // 464: cln.BkprlistincomeIncome_events.debit_msat:type_name -> cln.Amount
+ 463, // 465: cln.BlacklistruneResponse.blacklist:type_name -> cln.BlacklistruneBlacklist
+ 470, // 466: cln.ShowrunesResponse.runes:type_name -> cln.ShowrunesRunes
+ 471, // 467: cln.ShowrunesRunes.restrictions:type_name -> cln.ShowrunesRunesRestrictions
+ 472, // 468: cln.ShowrunesRunesRestrictions.alternatives:type_name -> cln.ShowrunesRunesRestrictionsAlternatives
+ 484, // 469: cln.ChannelOpenedNotification.funding_msat:type_name -> cln.Amount
+ 63, // 470: cln.PeerConnectNotification.direction:type_name -> cln.PeerConnectNotification.PeerConnectDirection
+ 481, // 471: cln.PeerConnectNotification.address:type_name -> cln.PeerConnectAddress
+ 64, // 472: cln.PeerConnectAddress.item_type:type_name -> cln.PeerConnectAddress.PeerConnectAddressType
+ 65, // 473: cln.Node.Getinfo:input_type -> cln.GetinfoRequest
+ 70, // 474: cln.Node.ListPeers:input_type -> cln.ListpeersRequest
+ 74, // 475: cln.Node.ListFunds:input_type -> cln.ListfundsRequest
+ 78, // 476: cln.Node.SendPay:input_type -> cln.SendpayRequest
+ 81, // 477: cln.Node.ListChannels:input_type -> cln.ListchannelsRequest
+ 84, // 478: cln.Node.AddGossip:input_type -> cln.AddgossipRequest
+ 86, // 479: cln.Node.AddPsbtOutput:input_type -> cln.AddpsbtoutputRequest
+ 88, // 480: cln.Node.AutoCleanInvoice:input_type -> cln.AutocleaninvoiceRequest
+ 90, // 481: cln.Node.AutoCleanOnce:input_type -> cln.AutocleanonceRequest
+ 99, // 482: cln.Node.AutoCleanStatus:input_type -> cln.AutocleanstatusRequest
+ 108, // 483: cln.Node.CheckMessage:input_type -> cln.CheckmessageRequest
+ 110, // 484: cln.Node.Close:input_type -> cln.CloseRequest
+ 112, // 485: cln.Node.ConnectPeer:input_type -> cln.ConnectRequest
+ 115, // 486: cln.Node.CreateInvoice:input_type -> cln.CreateinvoiceRequest
+ 118, // 487: cln.Node.Datastore:input_type -> cln.DatastoreRequest
+ 120, // 488: cln.Node.DatastoreUsage:input_type -> cln.DatastoreusageRequest
+ 123, // 489: cln.Node.CreateOnion:input_type -> cln.CreateonionRequest
+ 126, // 490: cln.Node.DelDatastore:input_type -> cln.DeldatastoreRequest
+ 128, // 491: cln.Node.DelInvoice:input_type -> cln.DelinvoiceRequest
+ 130, // 492: cln.Node.DevForgetChannel:input_type -> cln.DevforgetchannelRequest
+ 132, // 493: cln.Node.EmergencyRecover:input_type -> cln.EmergencyrecoverRequest
+ 134, // 494: cln.Node.Recover:input_type -> cln.RecoverRequest
+ 136, // 495: cln.Node.RecoverChannel:input_type -> cln.RecoverchannelRequest
+ 138, // 496: cln.Node.Invoice:input_type -> cln.InvoiceRequest
+ 140, // 497: cln.Node.CreateInvoiceRequest:input_type -> cln.InvoicerequestRequest
+ 142, // 498: cln.Node.DisableInvoiceRequest:input_type -> cln.DisableinvoicerequestRequest
+ 144, // 499: cln.Node.ListInvoiceRequests:input_type -> cln.ListinvoicerequestsRequest
+ 147, // 500: cln.Node.ListDatastore:input_type -> cln.ListdatastoreRequest
+ 150, // 501: cln.Node.ListInvoices:input_type -> cln.ListinvoicesRequest
+ 154, // 502: cln.Node.SendOnion:input_type -> cln.SendonionRequest
+ 157, // 503: cln.Node.ListSendPays:input_type -> cln.ListsendpaysRequest
+ 160, // 504: cln.Node.ListTransactions:input_type -> cln.ListtransactionsRequest
+ 165, // 505: cln.Node.MakeSecret:input_type -> cln.MakesecretRequest
+ 167, // 506: cln.Node.Pay:input_type -> cln.PayRequest
+ 169, // 507: cln.Node.ListNodes:input_type -> cln.ListnodesRequest
+ 174, // 508: cln.Node.WaitAnyInvoice:input_type -> cln.WaitanyinvoiceRequest
+ 177, // 509: cln.Node.WaitInvoice:input_type -> cln.WaitinvoiceRequest
+ 180, // 510: cln.Node.WaitSendPay:input_type -> cln.WaitsendpayRequest
+ 182, // 511: cln.Node.NewAddr:input_type -> cln.NewaddrRequest
+ 184, // 512: cln.Node.Withdraw:input_type -> cln.WithdrawRequest
+ 186, // 513: cln.Node.KeySend:input_type -> cln.KeysendRequest
+ 188, // 514: cln.Node.FundPsbt:input_type -> cln.FundpsbtRequest
+ 191, // 515: cln.Node.SendPsbt:input_type -> cln.SendpsbtRequest
+ 193, // 516: cln.Node.SignPsbt:input_type -> cln.SignpsbtRequest
+ 195, // 517: cln.Node.UtxoPsbt:input_type -> cln.UtxopsbtRequest
+ 198, // 518: cln.Node.TxDiscard:input_type -> cln.TxdiscardRequest
+ 200, // 519: cln.Node.TxPrepare:input_type -> cln.TxprepareRequest
+ 202, // 520: cln.Node.TxSend:input_type -> cln.TxsendRequest
+ 204, // 521: cln.Node.ListPeerChannels:input_type -> cln.ListpeerchannelsRequest
+ 215, // 522: cln.Node.ListClosedChannels:input_type -> cln.ListclosedchannelsRequest
+ 219, // 523: cln.Node.DecodePay:input_type -> cln.DecodepayRequest
+ 223, // 524: cln.Node.Decode:input_type -> cln.DecodeRequest
+ 232, // 525: cln.Node.DelPay:input_type -> cln.DelpayRequest
+ 235, // 526: cln.Node.DelForward:input_type -> cln.DelforwardRequest
+ 237, // 527: cln.Node.DisableOffer:input_type -> cln.DisableofferRequest
+ 239, // 528: cln.Node.Disconnect:input_type -> cln.DisconnectRequest
+ 241, // 529: cln.Node.Feerates:input_type -> cln.FeeratesRequest
+ 248, // 530: cln.Node.FetchInvoice:input_type -> cln.FetchinvoiceRequest
+ 252, // 531: cln.Node.FundChannel_Cancel:input_type -> cln.Fundchannel_cancelRequest
+ 254, // 532: cln.Node.FundChannel_Complete:input_type -> cln.Fundchannel_completeRequest
+ 256, // 533: cln.Node.FundChannel:input_type -> cln.FundchannelRequest
+ 259, // 534: cln.Node.FundChannel_Start:input_type -> cln.Fundchannel_startRequest
+ 262, // 535: cln.Node.GetLog:input_type -> cln.GetlogRequest
+ 265, // 536: cln.Node.FunderUpdate:input_type -> cln.FunderupdateRequest
+ 267, // 537: cln.Node.GetRoute:input_type -> cln.GetrouteRequest
+ 270, // 538: cln.Node.ListForwards:input_type -> cln.ListforwardsRequest
+ 273, // 539: cln.Node.ListOffers:input_type -> cln.ListoffersRequest
+ 276, // 540: cln.Node.ListPays:input_type -> cln.ListpaysRequest
+ 279, // 541: cln.Node.ListHtlcs:input_type -> cln.ListhtlcsRequest
+ 282, // 542: cln.Node.MultiFundChannel:input_type -> cln.MultifundchannelRequest
+ 289, // 543: cln.Node.MultiWithdraw:input_type -> cln.MultiwithdrawRequest
+ 291, // 544: cln.Node.Offer:input_type -> cln.OfferRequest
+ 293, // 545: cln.Node.OpenChannel_Abort:input_type -> cln.Openchannel_abortRequest
+ 295, // 546: cln.Node.OpenChannel_Bump:input_type -> cln.Openchannel_bumpRequest
+ 298, // 547: cln.Node.OpenChannel_Init:input_type -> cln.Openchannel_initRequest
+ 301, // 548: cln.Node.OpenChannel_Signed:input_type -> cln.Openchannel_signedRequest
+ 303, // 549: cln.Node.OpenChannel_Update:input_type -> cln.Openchannel_updateRequest
+ 306, // 550: cln.Node.Ping:input_type -> cln.PingRequest
+ 308, // 551: cln.Node.Plugin:input_type -> cln.PluginRequest
+ 311, // 552: cln.Node.RenePayStatus:input_type -> cln.RenepaystatusRequest
+ 314, // 553: cln.Node.RenePay:input_type -> cln.RenepayRequest
+ 316, // 554: cln.Node.ReserveInputs:input_type -> cln.ReserveinputsRequest
+ 319, // 555: cln.Node.SendCustomMsg:input_type -> cln.SendcustommsgRequest
+ 321, // 556: cln.Node.SendInvoice:input_type -> cln.SendinvoiceRequest
+ 323, // 557: cln.Node.SendOnionMessage:input_type -> cln.SendonionmessageRequest
+ 326, // 558: cln.Node.SetChannel:input_type -> cln.SetchannelRequest
+ 329, // 559: cln.Node.SetConfig:input_type -> cln.SetconfigRequest
+ 332, // 560: cln.Node.SetPsbtVersion:input_type -> cln.SetpsbtversionRequest
+ 334, // 561: cln.Node.SignInvoice:input_type -> cln.SigninvoiceRequest
+ 336, // 562: cln.Node.SignMessage:input_type -> cln.SignmessageRequest
+ 338, // 563: cln.Node.Splice_Init:input_type -> cln.Splice_initRequest
+ 340, // 564: cln.Node.Splice_Signed:input_type -> cln.Splice_signedRequest
+ 342, // 565: cln.Node.Splice_Update:input_type -> cln.Splice_updateRequest
+ 344, // 566: cln.Node.UnreserveInputs:input_type -> cln.UnreserveinputsRequest
+ 347, // 567: cln.Node.UpgradeWallet:input_type -> cln.UpgradewalletRequest
+ 349, // 568: cln.Node.WaitBlockHeight:input_type -> cln.WaitblockheightRequest
+ 351, // 569: cln.Node.Wait:input_type -> cln.WaitRequest
+ 354, // 570: cln.Node.ListConfigs:input_type -> cln.ListconfigsRequest
+ 431, // 571: cln.Node.Stop:input_type -> cln.StopRequest
+ 433, // 572: cln.Node.Help:input_type -> cln.HelpRequest
+ 436, // 573: cln.Node.PreApproveKeysend:input_type -> cln.PreapprovekeysendRequest
+ 438, // 574: cln.Node.PreApproveInvoice:input_type -> cln.PreapproveinvoiceRequest
+ 440, // 575: cln.Node.StaticBackup:input_type -> cln.StaticbackupRequest
+ 442, // 576: cln.Node.BkprChannelsApy:input_type -> cln.BkprchannelsapyRequest
+ 445, // 577: cln.Node.BkprDumpIncomeCsv:input_type -> cln.BkprdumpincomecsvRequest
+ 447, // 578: cln.Node.BkprInspect:input_type -> cln.BkprinspectRequest
+ 451, // 579: cln.Node.BkprListAccountEvents:input_type -> cln.BkprlistaccounteventsRequest
+ 454, // 580: cln.Node.BkprListBalances:input_type -> cln.BkprlistbalancesRequest
+ 458, // 581: cln.Node.BkprListIncome:input_type -> cln.BkprlistincomeRequest
+ 461, // 582: cln.Node.BlacklistRune:input_type -> cln.BlacklistruneRequest
+ 464, // 583: cln.Node.CheckRune:input_type -> cln.CheckruneRequest
+ 466, // 584: cln.Node.CreateRune:input_type -> cln.CreateruneRequest
+ 468, // 585: cln.Node.ShowRunes:input_type -> cln.ShowrunesRequest
+ 473, // 586: cln.Node.SubscribeBlockAdded:input_type -> cln.StreamBlockAddedRequest
+ 475, // 587: cln.Node.SubscribeChannelOpenFailed:input_type -> cln.StreamChannelOpenFailedRequest
+ 477, // 588: cln.Node.SubscribeChannelOpened:input_type -> cln.StreamChannelOpenedRequest
+ 479, // 589: cln.Node.SubscribeConnect:input_type -> cln.StreamConnectRequest
+ 482, // 590: cln.Node.SubscribeCustomMsg:input_type -> cln.StreamCustomMsgRequest
+ 66, // 591: cln.Node.Getinfo:output_type -> cln.GetinfoResponse
+ 71, // 592: cln.Node.ListPeers:output_type -> cln.ListpeersResponse
+ 75, // 593: cln.Node.ListFunds:output_type -> cln.ListfundsResponse
+ 79, // 594: cln.Node.SendPay:output_type -> cln.SendpayResponse
+ 82, // 595: cln.Node.ListChannels:output_type -> cln.ListchannelsResponse
+ 85, // 596: cln.Node.AddGossip:output_type -> cln.AddgossipResponse
+ 87, // 597: cln.Node.AddPsbtOutput:output_type -> cln.AddpsbtoutputResponse
+ 89, // 598: cln.Node.AutoCleanInvoice:output_type -> cln.AutocleaninvoiceResponse
+ 91, // 599: cln.Node.AutoCleanOnce:output_type -> cln.AutocleanonceResponse
+ 100, // 600: cln.Node.AutoCleanStatus:output_type -> cln.AutocleanstatusResponse
+ 109, // 601: cln.Node.CheckMessage:output_type -> cln.CheckmessageResponse
+ 111, // 602: cln.Node.Close:output_type -> cln.CloseResponse
+ 113, // 603: cln.Node.ConnectPeer:output_type -> cln.ConnectResponse
+ 116, // 604: cln.Node.CreateInvoice:output_type -> cln.CreateinvoiceResponse
+ 119, // 605: cln.Node.Datastore:output_type -> cln.DatastoreResponse
+ 121, // 606: cln.Node.DatastoreUsage:output_type -> cln.DatastoreusageResponse
+ 124, // 607: cln.Node.CreateOnion:output_type -> cln.CreateonionResponse
+ 127, // 608: cln.Node.DelDatastore:output_type -> cln.DeldatastoreResponse
+ 129, // 609: cln.Node.DelInvoice:output_type -> cln.DelinvoiceResponse
+ 131, // 610: cln.Node.DevForgetChannel:output_type -> cln.DevforgetchannelResponse
+ 133, // 611: cln.Node.EmergencyRecover:output_type -> cln.EmergencyrecoverResponse
+ 135, // 612: cln.Node.Recover:output_type -> cln.RecoverResponse
+ 137, // 613: cln.Node.RecoverChannel:output_type -> cln.RecoverchannelResponse
+ 139, // 614: cln.Node.Invoice:output_type -> cln.InvoiceResponse
+ 141, // 615: cln.Node.CreateInvoiceRequest:output_type -> cln.InvoicerequestResponse
+ 143, // 616: cln.Node.DisableInvoiceRequest:output_type -> cln.DisableinvoicerequestResponse
+ 145, // 617: cln.Node.ListInvoiceRequests:output_type -> cln.ListinvoicerequestsResponse
+ 148, // 618: cln.Node.ListDatastore:output_type -> cln.ListdatastoreResponse
+ 151, // 619: cln.Node.ListInvoices:output_type -> cln.ListinvoicesResponse
+ 155, // 620: cln.Node.SendOnion:output_type -> cln.SendonionResponse
+ 158, // 621: cln.Node.ListSendPays:output_type -> cln.ListsendpaysResponse
+ 161, // 622: cln.Node.ListTransactions:output_type -> cln.ListtransactionsResponse
+ 166, // 623: cln.Node.MakeSecret:output_type -> cln.MakesecretResponse
+ 168, // 624: cln.Node.Pay:output_type -> cln.PayResponse
+ 170, // 625: cln.Node.ListNodes:output_type -> cln.ListnodesResponse
+ 175, // 626: cln.Node.WaitAnyInvoice:output_type -> cln.WaitanyinvoiceResponse
+ 178, // 627: cln.Node.WaitInvoice:output_type -> cln.WaitinvoiceResponse
+ 181, // 628: cln.Node.WaitSendPay:output_type -> cln.WaitsendpayResponse
+ 183, // 629: cln.Node.NewAddr:output_type -> cln.NewaddrResponse
+ 185, // 630: cln.Node.Withdraw:output_type -> cln.WithdrawResponse
+ 187, // 631: cln.Node.KeySend:output_type -> cln.KeysendResponse
+ 189, // 632: cln.Node.FundPsbt:output_type -> cln.FundpsbtResponse
+ 192, // 633: cln.Node.SendPsbt:output_type -> cln.SendpsbtResponse
+ 194, // 634: cln.Node.SignPsbt:output_type -> cln.SignpsbtResponse
+ 196, // 635: cln.Node.UtxoPsbt:output_type -> cln.UtxopsbtResponse
+ 199, // 636: cln.Node.TxDiscard:output_type -> cln.TxdiscardResponse
+ 201, // 637: cln.Node.TxPrepare:output_type -> cln.TxprepareResponse
+ 203, // 638: cln.Node.TxSend:output_type -> cln.TxsendResponse
+ 205, // 639: cln.Node.ListPeerChannels:output_type -> cln.ListpeerchannelsResponse
+ 216, // 640: cln.Node.ListClosedChannels:output_type -> cln.ListclosedchannelsResponse
+ 220, // 641: cln.Node.DecodePay:output_type -> cln.DecodepayResponse
+ 224, // 642: cln.Node.Decode:output_type -> cln.DecodeResponse
+ 233, // 643: cln.Node.DelPay:output_type -> cln.DelpayResponse
+ 236, // 644: cln.Node.DelForward:output_type -> cln.DelforwardResponse
+ 238, // 645: cln.Node.DisableOffer:output_type -> cln.DisableofferResponse
+ 240, // 646: cln.Node.Disconnect:output_type -> cln.DisconnectResponse
+ 242, // 647: cln.Node.Feerates:output_type -> cln.FeeratesResponse
+ 249, // 648: cln.Node.FetchInvoice:output_type -> cln.FetchinvoiceResponse
+ 253, // 649: cln.Node.FundChannel_Cancel:output_type -> cln.Fundchannel_cancelResponse
+ 255, // 650: cln.Node.FundChannel_Complete:output_type -> cln.Fundchannel_completeResponse
+ 257, // 651: cln.Node.FundChannel:output_type -> cln.FundchannelResponse
+ 260, // 652: cln.Node.FundChannel_Start:output_type -> cln.Fundchannel_startResponse
+ 263, // 653: cln.Node.GetLog:output_type -> cln.GetlogResponse
+ 266, // 654: cln.Node.FunderUpdate:output_type -> cln.FunderupdateResponse
+ 268, // 655: cln.Node.GetRoute:output_type -> cln.GetrouteResponse
+ 271, // 656: cln.Node.ListForwards:output_type -> cln.ListforwardsResponse
+ 274, // 657: cln.Node.ListOffers:output_type -> cln.ListoffersResponse
+ 277, // 658: cln.Node.ListPays:output_type -> cln.ListpaysResponse
+ 280, // 659: cln.Node.ListHtlcs:output_type -> cln.ListhtlcsResponse
+ 283, // 660: cln.Node.MultiFundChannel:output_type -> cln.MultifundchannelResponse
+ 290, // 661: cln.Node.MultiWithdraw:output_type -> cln.MultiwithdrawResponse
+ 292, // 662: cln.Node.Offer:output_type -> cln.OfferResponse
+ 294, // 663: cln.Node.OpenChannel_Abort:output_type -> cln.Openchannel_abortResponse
+ 296, // 664: cln.Node.OpenChannel_Bump:output_type -> cln.Openchannel_bumpResponse
+ 299, // 665: cln.Node.OpenChannel_Init:output_type -> cln.Openchannel_initResponse
+ 302, // 666: cln.Node.OpenChannel_Signed:output_type -> cln.Openchannel_signedResponse
+ 304, // 667: cln.Node.OpenChannel_Update:output_type -> cln.Openchannel_updateResponse
+ 307, // 668: cln.Node.Ping:output_type -> cln.PingResponse
+ 309, // 669: cln.Node.Plugin:output_type -> cln.PluginResponse
+ 312, // 670: cln.Node.RenePayStatus:output_type -> cln.RenepaystatusResponse
+ 315, // 671: cln.Node.RenePay:output_type -> cln.RenepayResponse
+ 317, // 672: cln.Node.ReserveInputs:output_type -> cln.ReserveinputsResponse
+ 320, // 673: cln.Node.SendCustomMsg:output_type -> cln.SendcustommsgResponse
+ 322, // 674: cln.Node.SendInvoice:output_type -> cln.SendinvoiceResponse
+ 324, // 675: cln.Node.SendOnionMessage:output_type -> cln.SendonionmessageResponse
+ 327, // 676: cln.Node.SetChannel:output_type -> cln.SetchannelResponse
+ 330, // 677: cln.Node.SetConfig:output_type -> cln.SetconfigResponse
+ 333, // 678: cln.Node.SetPsbtVersion:output_type -> cln.SetpsbtversionResponse
+ 335, // 679: cln.Node.SignInvoice:output_type -> cln.SigninvoiceResponse
+ 337, // 680: cln.Node.SignMessage:output_type -> cln.SignmessageResponse
+ 339, // 681: cln.Node.Splice_Init:output_type -> cln.Splice_initResponse
+ 341, // 682: cln.Node.Splice_Signed:output_type -> cln.Splice_signedResponse
+ 343, // 683: cln.Node.Splice_Update:output_type -> cln.Splice_updateResponse
+ 345, // 684: cln.Node.UnreserveInputs:output_type -> cln.UnreserveinputsResponse
+ 348, // 685: cln.Node.UpgradeWallet:output_type -> cln.UpgradewalletResponse
+ 350, // 686: cln.Node.WaitBlockHeight:output_type -> cln.WaitblockheightResponse
+ 352, // 687: cln.Node.Wait:output_type -> cln.WaitResponse
+ 355, // 688: cln.Node.ListConfigs:output_type -> cln.ListconfigsResponse
+ 432, // 689: cln.Node.Stop:output_type -> cln.StopResponse
+ 434, // 690: cln.Node.Help:output_type -> cln.HelpResponse
+ 437, // 691: cln.Node.PreApproveKeysend:output_type -> cln.PreapprovekeysendResponse
+ 439, // 692: cln.Node.PreApproveInvoice:output_type -> cln.PreapproveinvoiceResponse
+ 441, // 693: cln.Node.StaticBackup:output_type -> cln.StaticbackupResponse
+ 443, // 694: cln.Node.BkprChannelsApy:output_type -> cln.BkprchannelsapyResponse
+ 446, // 695: cln.Node.BkprDumpIncomeCsv:output_type -> cln.BkprdumpincomecsvResponse
+ 448, // 696: cln.Node.BkprInspect:output_type -> cln.BkprinspectResponse
+ 452, // 697: cln.Node.BkprListAccountEvents:output_type -> cln.BkprlistaccounteventsResponse
+ 455, // 698: cln.Node.BkprListBalances:output_type -> cln.BkprlistbalancesResponse
+ 459, // 699: cln.Node.BkprListIncome:output_type -> cln.BkprlistincomeResponse
+ 462, // 700: cln.Node.BlacklistRune:output_type -> cln.BlacklistruneResponse
+ 465, // 701: cln.Node.CheckRune:output_type -> cln.CheckruneResponse
+ 467, // 702: cln.Node.CreateRune:output_type -> cln.CreateruneResponse
+ 469, // 703: cln.Node.ShowRunes:output_type -> cln.ShowrunesResponse
+ 474, // 704: cln.Node.SubscribeBlockAdded:output_type -> cln.BlockAddedNotification
+ 476, // 705: cln.Node.SubscribeChannelOpenFailed:output_type -> cln.ChannelOpenFailedNotification
+ 478, // 706: cln.Node.SubscribeChannelOpened:output_type -> cln.ChannelOpenedNotification
+ 480, // 707: cln.Node.SubscribeConnect:output_type -> cln.PeerConnectNotification
+ 483, // 708: cln.Node.SubscribeCustomMsg:output_type -> cln.CustomMsgNotification
+ 591, // [591:709] is the sub-list for method output_type
+ 473, // [473:591] is the sub-list for method input_type
+ 473, // [473:473] is the sub-list for extension type_name
+ 473, // [473:473] is the sub-list for extension extendee
+ 0, // [0:473] is the sub-list for field type_name
}
func init() { file_node_proto_init() }
@@ -23124,8 +42841,2576 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetinfoResponse); i {
+ file_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetinfoResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetinfoOurFeatures); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetinfoAddress); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetinfoBinding); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeersRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeersResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeersPeers); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeersPeersLog); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListfundsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListfundsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListfundsOutputs); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListfundsChannels); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendpayRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendpayResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendpayRoute); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListchannelsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListchannelsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListchannelsChannels); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddgossipRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddgossipResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddpsbtoutputRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddpsbtoutputResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleaninvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleaninvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutoclean); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanSucceededforwards); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanFailedforwards); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanSucceededpays); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanFailedpays); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanPaidinvoices); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanonceAutocleanExpiredinvoices); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutoclean); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanSucceededforwards); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanFailedforwards); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanSucceededpays); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanFailedpays); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanPaidinvoices); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutocleanstatusAutocleanExpiredinvoices); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckmessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckmessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CloseRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CloseResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConnectRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConnectResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConnectAddress); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateinvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateinvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateinvoicePaidOutpoint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DatastoreRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DatastoreResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DatastoreusageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DatastoreusageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DatastoreusageDatastoreusage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateonionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateonionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateonionHops); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeldatastoreRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeldatastoreResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelinvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelinvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DevforgetchannelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DevforgetchannelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmergencyrecoverRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmergencyrecoverResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RecoverRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RecoverResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RecoverchannelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RecoverchannelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvoicerequestRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvoicerequestResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisableinvoicerequestRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisableinvoicerequestResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicerequestsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicerequestsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicerequestsInvoicerequests); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListdatastoreRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListdatastoreResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListdatastoreDatastore); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicesInvoices); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListinvoicesInvoicesPaidOutpoint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionFirstHop); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListsendpaysRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListsendpaysResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListsendpaysPayments); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListtransactionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListtransactionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListtransactionsTransactions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListtransactionsTransactionsInputs); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListtransactionsTransactionsOutputs); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MakesecretRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MakesecretResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PayRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PayResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListnodesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListnodesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListnodesNodes); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListnodesNodesOptionWillFund); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListnodesNodesAddresses); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitanyinvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitanyinvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitanyinvoicePaidOutpoint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitinvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitinvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitinvoicePaidOutpoint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitsendpayRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitsendpayResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NewaddrRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NewaddrResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WithdrawRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WithdrawResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KeysendRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KeysendResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundpsbtRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundpsbtResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundpsbtReservations); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendpsbtRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendpsbtResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SignpsbtRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SignpsbtResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UtxopsbtRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UtxopsbtResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UtxopsbtReservations); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxdiscardRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxdiscardResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxprepareRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxprepareResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxsendRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TxsendResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannels); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsUpdates); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsUpdatesLocal); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsUpdatesRemote); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsFeerate); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsInflight); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsFunding); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsAlias); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpeerchannelsChannelsHtlcs); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListclosedchannelsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListclosedchannelsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListclosedchannelsClosedchannels); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListclosedchannelsClosedchannelsAlias); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodepayRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodepayResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodepayFallbacks); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodepayExtra); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeOfferPaths); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeOfferRecurrencePaywindow); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeInvoicePathsPath); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeInvoiceFallbacks); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeFallbacks); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeExtra); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeRestrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelpayRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelpayResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelpayPayments); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelforwardRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DelforwardResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisableofferRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisableofferResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisconnectRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DisconnectResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesPerkb); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesPerkbEstimates); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesPerkw); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesPerkwEstimates); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FeeratesOnchainFeeEstimates); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FetchinvoiceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FetchinvoiceResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FetchinvoiceChanges); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FetchinvoiceNextPeriod); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelCancelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelCancelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelCompleteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelCompleteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelChannelType); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelStartRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelStartResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FundchannelStartChannelType); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetlogRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetlogResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetlogLog); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FunderupdateRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FunderupdateResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetrouteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetrouteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetrouteRoute); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListforwardsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListforwardsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListforwardsForwards); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListoffersRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListoffersResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListoffersOffers); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpaysRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpaysResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListpaysPays); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListhtlcsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListhtlcsResponse); i {
case 0:
return &v.state
case 1:
@@ -23136,8 +45421,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetinfoOurFeatures); i {
+ file_node_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListhtlcsHtlcs); i {
case 0:
return &v.state
case 1:
@@ -23148,8 +45433,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetinfoAddress); i {
+ file_node_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelRequest); i {
case 0:
return &v.state
case 1:
@@ -23160,8 +45445,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetinfoBinding); i {
+ file_node_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelResponse); i {
case 0:
return &v.state
case 1:
@@ -23172,8 +45457,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersRequest); i {
+ file_node_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelDestinations); i {
case 0:
return &v.state
case 1:
@@ -23184,8 +45469,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersResponse); i {
+ file_node_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelChannelIds); i {
case 0:
return &v.state
case 1:
@@ -23196,8 +45481,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeers); i {
+ file_node_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelChannelIdsChannelType); i {
case 0:
return &v.state
case 1:
@@ -23208,8 +45493,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersLog); i {
+ file_node_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelFailed); i {
case 0:
return &v.state
case 1:
@@ -23220,8 +45505,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannels); i {
+ file_node_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultifundchannelFailedError); i {
case 0:
return &v.state
case 1:
@@ -23232,8 +45517,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannelsFeerate); i {
+ file_node_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultiwithdrawRequest); i {
case 0:
return &v.state
case 1:
@@ -23244,8 +45529,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannelsInflight); i {
+ file_node_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MultiwithdrawResponse); i {
case 0:
return &v.state
case 1:
@@ -23256,8 +45541,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannelsFunding); i {
+ file_node_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OfferRequest); i {
case 0:
return &v.state
case 1:
@@ -23268,8 +45553,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannelsAlias); i {
+ file_node_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OfferResponse); i {
case 0:
return &v.state
case 1:
@@ -23280,8 +45565,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeersPeersChannelsHtlcs); i {
+ file_node_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelAbortRequest); i {
case 0:
return &v.state
case 1:
@@ -23292,8 +45577,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListfundsRequest); i {
+ file_node_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelAbortResponse); i {
case 0:
return &v.state
case 1:
@@ -23304,8 +45589,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListfundsResponse); i {
+ file_node_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelBumpRequest); i {
case 0:
return &v.state
case 1:
@@ -23316,8 +45601,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListfundsOutputs); i {
+ file_node_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelBumpResponse); i {
case 0:
return &v.state
case 1:
@@ -23328,8 +45613,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListfundsChannels); i {
+ file_node_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelBumpChannelType); i {
case 0:
return &v.state
case 1:
@@ -23340,8 +45625,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendpayRequest); i {
+ file_node_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelInitRequest); i {
case 0:
return &v.state
case 1:
@@ -23352,8 +45637,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendpayResponse); i {
+ file_node_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelInitResponse); i {
case 0:
return &v.state
case 1:
@@ -23364,8 +45649,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendpayRoute); i {
+ file_node_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelInitChannelType); i {
case 0:
return &v.state
case 1:
@@ -23376,8 +45661,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListchannelsRequest); i {
+ file_node_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelSignedRequest); i {
case 0:
return &v.state
case 1:
@@ -23388,8 +45673,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListchannelsResponse); i {
+ file_node_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelSignedResponse); i {
case 0:
return &v.state
case 1:
@@ -23400,8 +45685,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListchannelsChannels); i {
+ file_node_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelUpdateRequest); i {
case 0:
return &v.state
case 1:
@@ -23412,8 +45697,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AddgossipRequest); i {
+ file_node_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelUpdateResponse); i {
case 0:
return &v.state
case 1:
@@ -23424,8 +45709,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AddgossipResponse); i {
+ file_node_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OpenchannelUpdateChannelType); i {
case 0:
return &v.state
case 1:
@@ -23436,8 +45721,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AutocleaninvoiceRequest); i {
+ file_node_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PingRequest); i {
case 0:
return &v.state
case 1:
@@ -23448,8 +45733,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AutocleaninvoiceResponse); i {
+ file_node_proto_msgTypes[242].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PingResponse); i {
case 0:
return &v.state
case 1:
@@ -23460,8 +45745,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CheckmessageRequest); i {
+ file_node_proto_msgTypes[243].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PluginRequest); i {
case 0:
return &v.state
case 1:
@@ -23472,8 +45757,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CheckmessageResponse); i {
+ file_node_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PluginResponse); i {
case 0:
return &v.state
case 1:
@@ -23484,8 +45769,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CloseRequest); i {
+ file_node_proto_msgTypes[245].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PluginPlugins); i {
case 0:
return &v.state
case 1:
@@ -23496,8 +45781,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CloseResponse); i {
+ file_node_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RenepaystatusRequest); i {
case 0:
return &v.state
case 1:
@@ -23508,8 +45793,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ConnectRequest); i {
+ file_node_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RenepaystatusResponse); i {
case 0:
return &v.state
case 1:
@@ -23520,8 +45805,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ConnectResponse); i {
+ file_node_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RenepaystatusPaystatus); i {
case 0:
return &v.state
case 1:
@@ -23532,8 +45817,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ConnectAddress); i {
+ file_node_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RenepayRequest); i {
case 0:
return &v.state
case 1:
@@ -23544,8 +45829,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateinvoiceRequest); i {
+ file_node_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RenepayResponse); i {
case 0:
return &v.state
case 1:
@@ -23556,8 +45841,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateinvoiceResponse); i {
+ file_node_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ReserveinputsRequest); i {
case 0:
return &v.state
case 1:
@@ -23568,8 +45853,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateinvoicePaidOutpoint); i {
+ file_node_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ReserveinputsResponse); i {
case 0:
return &v.state
case 1:
@@ -23580,8 +45865,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DatastoreRequest); i {
+ file_node_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ReserveinputsReservations); i {
case 0:
return &v.state
case 1:
@@ -23592,8 +45877,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DatastoreResponse); i {
+ file_node_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendcustommsgRequest); i {
case 0:
return &v.state
case 1:
@@ -23604,8 +45889,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DatastoreusageRequest); i {
+ file_node_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendcustommsgResponse); i {
case 0:
return &v.state
case 1:
@@ -23616,8 +45901,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DatastoreusageResponse); i {
+ file_node_proto_msgTypes[256].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendinvoiceRequest); i {
case 0:
return &v.state
case 1:
@@ -23628,8 +45913,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DatastoreusageDatastoreusage); i {
+ file_node_proto_msgTypes[257].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendinvoiceResponse); i {
case 0:
return &v.state
case 1:
@@ -23640,8 +45925,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateonionRequest); i {
+ file_node_proto_msgTypes[258].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionmessageRequest); i {
case 0:
return &v.state
case 1:
@@ -23652,8 +45937,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateonionResponse); i {
+ file_node_proto_msgTypes[259].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionmessageResponse); i {
case 0:
return &v.state
case 1:
@@ -23664,8 +45949,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateonionHops); i {
+ file_node_proto_msgTypes[260].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendonionmessageHops); i {
case 0:
return &v.state
case 1:
@@ -23676,8 +45961,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeldatastoreRequest); i {
+ file_node_proto_msgTypes[261].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetchannelRequest); i {
case 0:
return &v.state
case 1:
@@ -23688,8 +45973,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeldatastoreResponse); i {
+ file_node_proto_msgTypes[262].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetchannelResponse); i {
case 0:
return &v.state
case 1:
@@ -23700,8 +45985,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DelexpiredinvoiceRequest); i {
+ file_node_proto_msgTypes[263].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetchannelChannels); i {
case 0:
return &v.state
case 1:
@@ -23712,8 +45997,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DelexpiredinvoiceResponse); i {
+ file_node_proto_msgTypes[264].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetconfigRequest); i {
case 0:
return &v.state
case 1:
@@ -23724,8 +46009,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DelinvoiceRequest); i {
+ file_node_proto_msgTypes[265].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetconfigResponse); i {
case 0:
return &v.state
case 1:
@@ -23736,8 +46021,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DelinvoiceResponse); i {
+ file_node_proto_msgTypes[266].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetconfigConfig); i {
case 0:
return &v.state
case 1:
@@ -23748,8 +46033,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*InvoiceRequest); i {
+ file_node_proto_msgTypes[267].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetpsbtversionRequest); i {
case 0:
return &v.state
case 1:
@@ -23760,8 +46045,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*InvoiceResponse); i {
+ file_node_proto_msgTypes[268].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetpsbtversionResponse); i {
case 0:
return &v.state
case 1:
@@ -23772,8 +46057,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListdatastoreRequest); i {
+ file_node_proto_msgTypes[269].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SigninvoiceRequest); i {
case 0:
return &v.state
case 1:
@@ -23784,8 +46069,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListdatastoreResponse); i {
+ file_node_proto_msgTypes[270].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SigninvoiceResponse); i {
case 0:
return &v.state
case 1:
@@ -23796,8 +46081,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListdatastoreDatastore); i {
+ file_node_proto_msgTypes[271].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SignmessageRequest); i {
case 0:
return &v.state
case 1:
@@ -23808,8 +46093,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListinvoicesRequest); i {
+ file_node_proto_msgTypes[272].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SignmessageResponse); i {
case 0:
return &v.state
case 1:
@@ -23820,8 +46105,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListinvoicesResponse); i {
+ file_node_proto_msgTypes[273].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceInitRequest); i {
case 0:
return &v.state
case 1:
@@ -23832,8 +46117,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListinvoicesInvoices); i {
+ file_node_proto_msgTypes[274].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceInitResponse); i {
case 0:
return &v.state
case 1:
@@ -23844,8 +46129,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListinvoicesInvoicesPaidOutpoint); i {
+ file_node_proto_msgTypes[275].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceSignedRequest); i {
case 0:
return &v.state
case 1:
@@ -23856,8 +46141,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendonionRequest); i {
+ file_node_proto_msgTypes[276].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceSignedResponse); i {
case 0:
return &v.state
case 1:
@@ -23868,8 +46153,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendonionResponse); i {
+ file_node_proto_msgTypes[277].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceUpdateRequest); i {
case 0:
return &v.state
case 1:
@@ -23880,8 +46165,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendonionFirstHop); i {
+ file_node_proto_msgTypes[278].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpliceUpdateResponse); i {
case 0:
return &v.state
case 1:
@@ -23892,8 +46177,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListsendpaysRequest); i {
+ file_node_proto_msgTypes[279].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnreserveinputsRequest); i {
case 0:
return &v.state
case 1:
@@ -23904,8 +46189,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListsendpaysResponse); i {
+ file_node_proto_msgTypes[280].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnreserveinputsResponse); i {
case 0:
return &v.state
case 1:
@@ -23916,8 +46201,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListsendpaysPayments); i {
+ file_node_proto_msgTypes[281].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnreserveinputsReservations); i {
case 0:
return &v.state
case 1:
@@ -23928,8 +46213,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListtransactionsRequest); i {
+ file_node_proto_msgTypes[282].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpgradewalletRequest); i {
case 0:
return &v.state
case 1:
@@ -23940,8 +46225,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListtransactionsResponse); i {
+ file_node_proto_msgTypes[283].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpgradewalletResponse); i {
case 0:
return &v.state
case 1:
@@ -23952,8 +46237,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListtransactionsTransactions); i {
+ file_node_proto_msgTypes[284].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitblockheightRequest); i {
case 0:
return &v.state
case 1:
@@ -23964,8 +46249,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListtransactionsTransactionsInputs); i {
+ file_node_proto_msgTypes[285].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitblockheightResponse); i {
case 0:
return &v.state
case 1:
@@ -23976,8 +46261,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListtransactionsTransactionsOutputs); i {
+ file_node_proto_msgTypes[286].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitRequest); i {
case 0:
return &v.state
case 1:
@@ -23988,8 +46273,116 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PayRequest); i {
+ file_node_proto_msgTypes[287].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[288].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WaitDetails); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[289].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[290].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[291].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigs); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[292].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsConf); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[293].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDeveloper); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[294].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsClearplugins); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[295].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDisablempp); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_node_proto_msgTypes[296].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsMainnet); i {
case 0:
return &v.state
case 1:
@@ -24000,8 +46393,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PayResponse); i {
+ file_node_proto_msgTypes[297].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRegtest); i {
case 0:
return &v.state
case 1:
@@ -24012,8 +46405,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListnodesRequest); i {
+ file_node_proto_msgTypes[298].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsSignet); i {
case 0:
return &v.state
case 1:
@@ -24024,8 +46417,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListnodesResponse); i {
+ file_node_proto_msgTypes[299].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsTestnet); i {
case 0:
return &v.state
case 1:
@@ -24036,8 +46429,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListnodesNodes); i {
+ file_node_proto_msgTypes[300].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsImportantplugin); i {
case 0:
return &v.state
case 1:
@@ -24048,8 +46441,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListnodesNodesAddresses); i {
+ file_node_proto_msgTypes[301].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsPlugin); i {
case 0:
return &v.state
case 1:
@@ -24060,8 +46453,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitanyinvoiceRequest); i {
+ file_node_proto_msgTypes[302].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsPlugindir); i {
case 0:
return &v.state
case 1:
@@ -24072,8 +46465,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitanyinvoiceResponse); i {
+ file_node_proto_msgTypes[303].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLightningdir); i {
case 0:
return &v.state
case 1:
@@ -24084,8 +46477,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitanyinvoicePaidOutpoint); i {
+ file_node_proto_msgTypes[304].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsNetwork); i {
case 0:
return &v.state
case 1:
@@ -24096,8 +46489,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitinvoiceRequest); i {
+ file_node_proto_msgTypes[305].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAllowdeprecatedapis); i {
case 0:
return &v.state
case 1:
@@ -24108,8 +46501,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitinvoiceResponse); i {
+ file_node_proto_msgTypes[306].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRpcfile); i {
case 0:
return &v.state
case 1:
@@ -24120,8 +46513,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitinvoicePaidOutpoint); i {
+ file_node_proto_msgTypes[307].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDisableplugin); i {
case 0:
return &v.state
case 1:
@@ -24132,8 +46525,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitsendpayRequest); i {
+ file_node_proto_msgTypes[308].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAlwaysuseproxy); i {
case 0:
return &v.state
case 1:
@@ -24144,8 +46537,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitsendpayResponse); i {
+ file_node_proto_msgTypes[309].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDaemon); i {
case 0:
return &v.state
case 1:
@@ -24156,8 +46549,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NewaddrRequest); i {
+ file_node_proto_msgTypes[310].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsWallet); i {
case 0:
return &v.state
case 1:
@@ -24168,8 +46561,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NewaddrResponse); i {
+ file_node_proto_msgTypes[311].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLargechannels); i {
case 0:
return &v.state
case 1:
@@ -24180,8 +46573,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WithdrawRequest); i {
+ file_node_proto_msgTypes[312].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentaldualfund); i {
case 0:
return &v.state
case 1:
@@ -24192,8 +46585,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WithdrawResponse); i {
+ file_node_proto_msgTypes[313].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentalsplicing); i {
case 0:
return &v.state
case 1:
@@ -24204,8 +46597,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*KeysendRequest); i {
+ file_node_proto_msgTypes[314].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentalonionmessages); i {
case 0:
return &v.state
case 1:
@@ -24216,8 +46609,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*KeysendResponse); i {
+ file_node_proto_msgTypes[315].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentaloffers); i {
case 0:
return &v.state
case 1:
@@ -24228,8 +46621,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundpsbtRequest); i {
+ file_node_proto_msgTypes[316].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentalshutdownwrongfunding); i {
case 0:
return &v.state
case 1:
@@ -24240,8 +46633,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundpsbtResponse); i {
+ file_node_proto_msgTypes[317].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentalpeerstorage); i {
case 0:
return &v.state
case 1:
@@ -24252,8 +46645,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundpsbtReservations); i {
+ file_node_proto_msgTypes[318].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsExperimentalanchors); i {
case 0:
return &v.state
case 1:
@@ -24264,8 +46657,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendpsbtRequest); i {
+ file_node_proto_msgTypes[319].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDatabaseupgrade); i {
case 0:
return &v.state
case 1:
@@ -24276,8 +46669,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendpsbtResponse); i {
+ file_node_proto_msgTypes[320].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRgb); i {
case 0:
return &v.state
case 1:
@@ -24288,8 +46681,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SignpsbtRequest); i {
+ file_node_proto_msgTypes[321].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAlias); i {
case 0:
return &v.state
case 1:
@@ -24300,8 +46693,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SignpsbtResponse); i {
+ file_node_proto_msgTypes[322].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsPidfile); i {
case 0:
return &v.state
case 1:
@@ -24312,8 +46705,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UtxopsbtRequest); i {
+ file_node_proto_msgTypes[323].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsIgnorefeelimits); i {
case 0:
return &v.state
case 1:
@@ -24324,8 +46717,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UtxopsbtResponse); i {
+ file_node_proto_msgTypes[324].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsWatchtimeblocks); i {
case 0:
return &v.state
case 1:
@@ -24336,8 +46729,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UtxopsbtReservations); i {
+ file_node_proto_msgTypes[325].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsMaxlocktimeblocks); i {
case 0:
return &v.state
case 1:
@@ -24348,8 +46741,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxdiscardRequest); i {
+ file_node_proto_msgTypes[326].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsFundingconfirms); i {
case 0:
return &v.state
case 1:
@@ -24360,8 +46753,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxdiscardResponse); i {
+ file_node_proto_msgTypes[327].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsCltvdelta); i {
case 0:
return &v.state
case 1:
@@ -24372,8 +46765,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxprepareRequest); i {
+ file_node_proto_msgTypes[328].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsCltvfinal); i {
case 0:
return &v.state
case 1:
@@ -24384,8 +46777,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxprepareResponse); i {
+ file_node_proto_msgTypes[329].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsCommittime); i {
case 0:
return &v.state
case 1:
@@ -24396,8 +46789,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxsendRequest); i {
+ file_node_proto_msgTypes[330].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsFeebase); i {
case 0:
return &v.state
case 1:
@@ -24408,8 +46801,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TxsendResponse); i {
+ file_node_proto_msgTypes[331].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRescan); i {
case 0:
return &v.state
case 1:
@@ -24420,8 +46813,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsRequest); i {
+ file_node_proto_msgTypes[332].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsFeepersatoshi); i {
case 0:
return &v.state
case 1:
@@ -24432,8 +46825,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsResponse); i {
+ file_node_proto_msgTypes[333].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsMaxconcurrenthtlcs); i {
case 0:
return &v.state
case 1:
@@ -24444,8 +46837,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannels); i {
+ file_node_proto_msgTypes[334].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsHtlcminimummsat); i {
case 0:
return &v.state
case 1:
@@ -24456,8 +46849,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsUpdates); i {
+ file_node_proto_msgTypes[335].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsHtlcmaximummsat); i {
case 0:
return &v.state
case 1:
@@ -24468,8 +46861,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsUpdatesLocal); i {
+ file_node_proto_msgTypes[336].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsMaxdusthtlcexposuremsat); i {
case 0:
return &v.state
case 1:
@@ -24480,8 +46873,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsUpdatesRemote); i {
+ file_node_proto_msgTypes[337].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsMincapacitysat); i {
case 0:
return &v.state
case 1:
@@ -24492,8 +46885,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsFeerate); i {
+ file_node_proto_msgTypes[338].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAddr); i {
case 0:
return &v.state
case 1:
@@ -24504,8 +46897,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsInflight); i {
+ file_node_proto_msgTypes[339].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAnnounceaddr); i {
case 0:
return &v.state
case 1:
@@ -24516,8 +46909,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsFunding); i {
+ file_node_proto_msgTypes[340].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsBindaddr); i {
case 0:
return &v.state
case 1:
@@ -24528,8 +46921,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsAlias); i {
+ file_node_proto_msgTypes[341].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsOffline); i {
case 0:
return &v.state
case 1:
@@ -24540,8 +46933,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpeerchannelsChannelsHtlcs); i {
+ file_node_proto_msgTypes[342].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAutolisten); i {
case 0:
return &v.state
case 1:
@@ -24552,8 +46945,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListclosedchannelsRequest); i {
+ file_node_proto_msgTypes[343].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsProxy); i {
case 0:
return &v.state
case 1:
@@ -24564,8 +46957,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListclosedchannelsResponse); i {
+ file_node_proto_msgTypes[344].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsDisabledns); i {
case 0:
return &v.state
case 1:
@@ -24576,8 +46969,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListclosedchannelsClosedchannels); i {
+ file_node_proto_msgTypes[345].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAnnounceaddrdiscovered); i {
case 0:
return &v.state
case 1:
@@ -24588,8 +46981,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListclosedchannelsClosedchannelsAlias); i {
+ file_node_proto_msgTypes[346].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAnnounceaddrdiscoveredport); i {
case 0:
return &v.state
case 1:
@@ -24600,8 +46993,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodepayRequest); i {
+ file_node_proto_msgTypes[347].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsEncryptedhsm); i {
case 0:
return &v.state
case 1:
@@ -24612,8 +47005,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodepayResponse); i {
+ file_node_proto_msgTypes[348].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRpcfilemode); i {
case 0:
return &v.state
case 1:
@@ -24624,8 +47017,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodepayFallbacks); i {
+ file_node_proto_msgTypes[349].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLoglevel); i {
case 0:
return &v.state
case 1:
@@ -24636,8 +47029,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodepayExtra); i {
+ file_node_proto_msgTypes[350].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLogprefix); i {
case 0:
return &v.state
case 1:
@@ -24648,8 +47041,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeRequest); i {
+ file_node_proto_msgTypes[351].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLogfile); i {
case 0:
return &v.state
case 1:
@@ -24660,8 +47053,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeResponse); i {
+ file_node_proto_msgTypes[352].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsLogtimestamps); i {
case 0:
return &v.state
case 1:
@@ -24672,8 +47065,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeOfferPaths); i {
+ file_node_proto_msgTypes[353].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsForcefeerates); i {
case 0:
return &v.state
case 1:
@@ -24684,8 +47077,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeOfferRecurrencePaywindow); i {
+ file_node_proto_msgTypes[354].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsSubdaemon); i {
case 0:
return &v.state
case 1:
@@ -24696,8 +47089,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeInvoicePathsPath); i {
+ file_node_proto_msgTypes[355].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsFetchinvoicenoconnect); i {
case 0:
return &v.state
case 1:
@@ -24708,8 +47101,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeInvoiceFallbacks); i {
+ file_node_proto_msgTypes[356].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAccepthtlctlvtypes); i {
case 0:
return &v.state
case 1:
@@ -24720,8 +47113,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeFallbacks); i {
+ file_node_proto_msgTypes[357].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsTorservicepassword); i {
case 0:
return &v.state
case 1:
@@ -24732,8 +47125,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeExtra); i {
+ file_node_proto_msgTypes[358].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsAnnounceaddrdns); i {
case 0:
return &v.state
case 1:
@@ -24744,8 +47137,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DecodeRestrictions); i {
+ file_node_proto_msgTypes[359].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsRequireconfirmedinputs); i {
case 0:
return &v.state
case 1:
@@ -24756,8 +47149,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DisconnectRequest); i {
+ file_node_proto_msgTypes[360].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsCommitfee); i {
case 0:
return &v.state
case 1:
@@ -24768,8 +47161,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DisconnectResponse); i {
+ file_node_proto_msgTypes[361].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsConfigsCommitfeerateoffset); i {
case 0:
return &v.state
case 1:
@@ -24780,8 +47173,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesRequest); i {
+ file_node_proto_msgTypes[362].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsPlugins); i {
case 0:
return &v.state
case 1:
@@ -24792,8 +47185,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesResponse); i {
+ file_node_proto_msgTypes[363].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsPluginsOptions); i {
case 0:
return &v.state
case 1:
@@ -24804,8 +47197,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesPerkb); i {
+ file_node_proto_msgTypes[364].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsImportantplugins); i {
case 0:
return &v.state
case 1:
@@ -24816,8 +47209,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesPerkbEstimates); i {
+ file_node_proto_msgTypes[365].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListconfigsImportantpluginsOptions); i {
case 0:
return &v.state
case 1:
@@ -24828,8 +47221,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesPerkw); i {
+ file_node_proto_msgTypes[366].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StopRequest); i {
case 0:
return &v.state
case 1:
@@ -24840,8 +47233,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesPerkwEstimates); i {
+ file_node_proto_msgTypes[367].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StopResponse); i {
case 0:
return &v.state
case 1:
@@ -24852,8 +47245,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FeeratesOnchainFeeEstimates); i {
+ file_node_proto_msgTypes[368].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HelpRequest); i {
case 0:
return &v.state
case 1:
@@ -24864,8 +47257,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FetchinvoiceRequest); i {
+ file_node_proto_msgTypes[369].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HelpResponse); i {
case 0:
return &v.state
case 1:
@@ -24876,8 +47269,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FetchinvoiceResponse); i {
+ file_node_proto_msgTypes[370].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HelpHelp); i {
case 0:
return &v.state
case 1:
@@ -24888,8 +47281,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FetchinvoiceChanges); i {
+ file_node_proto_msgTypes[371].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreapprovekeysendRequest); i {
case 0:
return &v.state
case 1:
@@ -24900,8 +47293,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FetchinvoiceNextPeriod); i {
+ file_node_proto_msgTypes[372].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreapprovekeysendResponse); i {
case 0:
return &v.state
case 1:
@@ -24912,8 +47305,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundchannelRequest); i {
+ file_node_proto_msgTypes[373].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreapproveinvoiceRequest); i {
case 0:
return &v.state
case 1:
@@ -24924,8 +47317,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundchannelResponse); i {
+ file_node_proto_msgTypes[374].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreapproveinvoiceResponse); i {
case 0:
return &v.state
case 1:
@@ -24936,8 +47329,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FundchannelChannelType); i {
+ file_node_proto_msgTypes[375].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StaticbackupRequest); i {
case 0:
return &v.state
case 1:
@@ -24948,8 +47341,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetrouteRequest); i {
+ file_node_proto_msgTypes[376].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StaticbackupResponse); i {
case 0:
return &v.state
case 1:
@@ -24960,8 +47353,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetrouteResponse); i {
+ file_node_proto_msgTypes[377].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprchannelsapyRequest); i {
case 0:
return &v.state
case 1:
@@ -24972,8 +47365,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetrouteRoute); i {
+ file_node_proto_msgTypes[378].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprchannelsapyResponse); i {
case 0:
return &v.state
case 1:
@@ -24984,8 +47377,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListforwardsRequest); i {
+ file_node_proto_msgTypes[379].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprchannelsapyChannelsApy); i {
case 0:
return &v.state
case 1:
@@ -24996,8 +47389,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListforwardsResponse); i {
+ file_node_proto_msgTypes[380].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprdumpincomecsvRequest); i {
case 0:
return &v.state
case 1:
@@ -25008,8 +47401,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListforwardsForwards); i {
+ file_node_proto_msgTypes[381].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprdumpincomecsvResponse); i {
case 0:
return &v.state
case 1:
@@ -25020,8 +47413,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListoffersRequest); i {
+ file_node_proto_msgTypes[382].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprinspectRequest); i {
case 0:
return &v.state
case 1:
@@ -25032,8 +47425,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListoffersResponse); i {
+ file_node_proto_msgTypes[383].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprinspectResponse); i {
case 0:
return &v.state
case 1:
@@ -25044,8 +47437,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListoffersOffers); i {
+ file_node_proto_msgTypes[384].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprinspectTxs); i {
case 0:
return &v.state
case 1:
@@ -25056,8 +47449,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpaysRequest); i {
+ file_node_proto_msgTypes[385].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprinspectTxsOutputs); i {
case 0:
return &v.state
case 1:
@@ -25068,8 +47461,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpaysResponse); i {
+ file_node_proto_msgTypes[386].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistaccounteventsRequest); i {
case 0:
return &v.state
case 1:
@@ -25080,8 +47473,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListpaysPays); i {
+ file_node_proto_msgTypes[387].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistaccounteventsResponse); i {
case 0:
return &v.state
case 1:
@@ -25092,8 +47485,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListhtlcsRequest); i {
+ file_node_proto_msgTypes[388].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistaccounteventsEvents); i {
case 0:
return &v.state
case 1:
@@ -25104,8 +47497,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListhtlcsResponse); i {
+ file_node_proto_msgTypes[389].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistbalancesRequest); i {
case 0:
return &v.state
case 1:
@@ -25116,8 +47509,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListhtlcsHtlcs); i {
+ file_node_proto_msgTypes[390].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistbalancesResponse); i {
case 0:
return &v.state
case 1:
@@ -25128,8 +47521,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*OfferRequest); i {
+ file_node_proto_msgTypes[391].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistbalancesAccounts); i {
case 0:
return &v.state
case 1:
@@ -25140,8 +47533,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*OfferResponse); i {
+ file_node_proto_msgTypes[392].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistbalancesAccountsBalances); i {
case 0:
return &v.state
case 1:
@@ -25152,8 +47545,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PingRequest); i {
+ file_node_proto_msgTypes[393].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistincomeRequest); i {
case 0:
return &v.state
case 1:
@@ -25164,8 +47557,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PingResponse); i {
+ file_node_proto_msgTypes[394].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistincomeResponse); i {
case 0:
return &v.state
case 1:
@@ -25176,8 +47569,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendcustommsgRequest); i {
+ file_node_proto_msgTypes[395].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BkprlistincomeIncomeEvents); i {
case 0:
return &v.state
case 1:
@@ -25188,8 +47581,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SendcustommsgResponse); i {
+ file_node_proto_msgTypes[396].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BlacklistruneRequest); i {
case 0:
return &v.state
case 1:
@@ -25200,8 +47593,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SetchannelRequest); i {
+ file_node_proto_msgTypes[397].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BlacklistruneResponse); i {
case 0:
return &v.state
case 1:
@@ -25212,8 +47605,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SetchannelResponse); i {
+ file_node_proto_msgTypes[398].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BlacklistruneBlacklist); i {
case 0:
return &v.state
case 1:
@@ -25224,8 +47617,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SetchannelChannels); i {
+ file_node_proto_msgTypes[399].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckruneRequest); i {
case 0:
return &v.state
case 1:
@@ -25236,8 +47629,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SigninvoiceRequest); i {
+ file_node_proto_msgTypes[400].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckruneResponse); i {
case 0:
return &v.state
case 1:
@@ -25248,8 +47641,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SigninvoiceResponse); i {
+ file_node_proto_msgTypes[401].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateruneRequest); i {
case 0:
return &v.state
case 1:
@@ -25260,8 +47653,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SignmessageRequest); i {
+ file_node_proto_msgTypes[402].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateruneResponse); i {
case 0:
return &v.state
case 1:
@@ -25272,8 +47665,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SignmessageResponse); i {
+ file_node_proto_msgTypes[403].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ShowrunesRequest); i {
case 0:
return &v.state
case 1:
@@ -25284,8 +47677,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitblockheightRequest); i {
+ file_node_proto_msgTypes[404].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ShowrunesResponse); i {
case 0:
return &v.state
case 1:
@@ -25296,8 +47689,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitblockheightResponse); i {
+ file_node_proto_msgTypes[405].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ShowrunesRunes); i {
case 0:
return &v.state
case 1:
@@ -25308,8 +47701,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitRequest); i {
+ file_node_proto_msgTypes[406].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ShowrunesRunesRestrictions); i {
case 0:
return &v.state
case 1:
@@ -25320,8 +47713,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WaitResponse); i {
+ file_node_proto_msgTypes[407].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ShowrunesRunesRestrictionsAlternatives); i {
case 0:
return &v.state
case 1:
@@ -25332,8 +47725,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StopRequest); i {
+ file_node_proto_msgTypes[408].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamBlockAddedRequest); i {
case 0:
return &v.state
case 1:
@@ -25344,8 +47737,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StopResponse); i {
+ file_node_proto_msgTypes[409].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BlockAddedNotification); i {
case 0:
return &v.state
case 1:
@@ -25356,8 +47749,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PreapprovekeysendRequest); i {
+ file_node_proto_msgTypes[410].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamChannelOpenFailedRequest); i {
case 0:
return &v.state
case 1:
@@ -25368,8 +47761,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PreapprovekeysendResponse); i {
+ file_node_proto_msgTypes[411].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ChannelOpenFailedNotification); i {
case 0:
return &v.state
case 1:
@@ -25380,8 +47773,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PreapproveinvoiceRequest); i {
+ file_node_proto_msgTypes[412].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamChannelOpenedRequest); i {
case 0:
return &v.state
case 1:
@@ -25392,8 +47785,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PreapproveinvoiceResponse); i {
+ file_node_proto_msgTypes[413].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ChannelOpenedNotification); i {
case 0:
return &v.state
case 1:
@@ -25404,8 +47797,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StaticbackupRequest); i {
+ file_node_proto_msgTypes[414].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamConnectRequest); i {
case 0:
return &v.state
case 1:
@@ -25416,8 +47809,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StaticbackupResponse); i {
+ file_node_proto_msgTypes[415].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PeerConnectNotification); i {
case 0:
return &v.state
case 1:
@@ -25428,8 +47821,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BkprlistincomeRequest); i {
+ file_node_proto_msgTypes[416].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PeerConnectAddress); i {
case 0:
return &v.state
case 1:
@@ -25440,8 +47833,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BkprlistincomeResponse); i {
+ file_node_proto_msgTypes[417].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamCustomMsgRequest); i {
case 0:
return &v.state
case 1:
@@ -25452,8 +47845,8 @@ func file_node_proto_init() {
return nil
}
}
- file_node_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BkprlistincomeIncomeEvents); i {
+ file_node_proto_msgTypes[418].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CustomMsgNotification); i {
case 0:
return &v.state
case 1:
@@ -25476,123 +47869,185 @@ func file_node_proto_init() {
file_node_proto_msgTypes[12].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[13].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[14].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[15].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[17].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[16].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[18].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[19].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[20].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[22].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[21].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[23].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[24].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[27].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[28].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[29].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[31].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[32].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[33].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[35].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[34].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[36].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[37].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[38].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[39].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[40].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[41].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[42].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[43].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[44].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[45].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[46].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[47].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[48].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[49].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[51].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[52].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[53].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[54].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[57].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[58].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[60].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[61].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[62].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[63].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[64].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[65].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[67].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[70].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[73].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[74].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[75].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[77].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[76].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[78].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[79].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[80].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[81].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[83].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[84].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[85].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[86].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[87].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[88].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[89].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[91].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[90].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[92].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[93].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[94].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[96].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[100].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[101].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[105].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[102].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[103].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[104].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[106].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[108].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[109].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[111].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[112].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[110].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[113].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[114].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[115].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[116].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[117].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[118].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[119].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[120].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[121].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[122].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[123].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[124].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[125].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[126].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[129].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[130].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[131].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[133].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[134].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[137].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[140].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[135].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[139].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[141].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[142].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[143].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[144].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[145].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[146].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[147].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[148].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[149].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[150].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[151].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[152].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[153].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[154].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[155].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[156].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[158].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[159].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[160].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[161].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[162].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[163].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[164].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[165].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[168].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[167].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[169].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[170].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[173].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[174].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[176].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[181].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[177].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[178].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[180].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[182].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[183].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[184].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[187].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[189].OneofWrappers = []interface{}{}
- file_node_proto_msgTypes[193].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[185].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[191].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[192].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[194].OneofWrappers = []interface{}{}
file_node_proto_msgTypes[195].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[197].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[199].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[200].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[201].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[202].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[205].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[207].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[208].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[210].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[211].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[213].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[214].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[217].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[219].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[220].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[224].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[226].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[227].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[230].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[231].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[233].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[234].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[239].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[241].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[243].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[244].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[246].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[248].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[249].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[250].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[251].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[256].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[257].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[261].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[263].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[264].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[266].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[273].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[275].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[279].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[281].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[282].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[283].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[284].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[287].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[288].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[289].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[290].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[291].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[295].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[337].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[362].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[364].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[367].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[368].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[369].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[377].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[379].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[380].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[384].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[385].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[386].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[388].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[391].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[393].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[395].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[396].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[399].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[401].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[402].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[403].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[405].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[413].OneofWrappers = []interface{}{}
+ file_node_proto_msgTypes[416].OneofWrappers = []interface{}{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_node_proto_rawDesc,
- NumEnums: 44,
- NumMessages: 196,
+ NumEnums: 65,
+ NumMessages: 419,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/cln/rpc/node.proto b/cln/rpc/node.proto
index 584c56d5..6b2540c1 100644
--- a/cln/rpc/node.proto
+++ b/cln/rpc/node.proto
@@ -2,7 +2,7 @@ syntax = "proto3";
package cln;
option go_package = "github.com/breez/lspd/cln/rpc";
-// This file was taken from cln v24.02.1
+// This file was taken from cln v24.05
import "primitives.proto";
@@ -13,7 +13,10 @@ service Node {
rpc SendPay(SendpayRequest) returns (SendpayResponse) {}
rpc ListChannels(ListchannelsRequest) returns (ListchannelsResponse) {}
rpc AddGossip(AddgossipRequest) returns (AddgossipResponse) {}
+ rpc AddPsbtOutput(AddpsbtoutputRequest) returns (AddpsbtoutputResponse) {}
rpc AutoCleanInvoice(AutocleaninvoiceRequest) returns (AutocleaninvoiceResponse) {}
+ rpc AutoCleanOnce(AutocleanonceRequest) returns (AutocleanonceResponse) {}
+ rpc AutoCleanStatus(AutocleanstatusRequest) returns (AutocleanstatusResponse) {}
rpc CheckMessage(CheckmessageRequest) returns (CheckmessageResponse) {}
rpc Close(CloseRequest) returns (CloseResponse) {}
rpc ConnectPeer(ConnectRequest) returns (ConnectResponse) {}
@@ -22,14 +25,21 @@ service Node {
rpc DatastoreUsage(DatastoreusageRequest) returns (DatastoreusageResponse) {}
rpc CreateOnion(CreateonionRequest) returns (CreateonionResponse) {}
rpc DelDatastore(DeldatastoreRequest) returns (DeldatastoreResponse) {}
- rpc DelExpiredInvoice(DelexpiredinvoiceRequest) returns (DelexpiredinvoiceResponse) {}
rpc DelInvoice(DelinvoiceRequest) returns (DelinvoiceResponse) {}
+ rpc DevForgetChannel(DevforgetchannelRequest) returns (DevforgetchannelResponse) {}
+ rpc EmergencyRecover(EmergencyrecoverRequest) returns (EmergencyrecoverResponse) {}
+ rpc Recover(RecoverRequest) returns (RecoverResponse) {}
+ rpc RecoverChannel(RecoverchannelRequest) returns (RecoverchannelResponse) {}
rpc Invoice(InvoiceRequest) returns (InvoiceResponse) {}
+ rpc CreateInvoiceRequest(InvoicerequestRequest) returns (InvoicerequestResponse) {}
+ rpc DisableInvoiceRequest(DisableinvoicerequestRequest) returns (DisableinvoicerequestResponse) {}
+ rpc ListInvoiceRequests(ListinvoicerequestsRequest) returns (ListinvoicerequestsResponse) {}
rpc ListDatastore(ListdatastoreRequest) returns (ListdatastoreResponse) {}
rpc ListInvoices(ListinvoicesRequest) returns (ListinvoicesResponse) {}
rpc SendOnion(SendonionRequest) returns (SendonionResponse) {}
rpc ListSendPays(ListsendpaysRequest) returns (ListsendpaysResponse) {}
rpc ListTransactions(ListtransactionsRequest) returns (ListtransactionsResponse) {}
+ rpc MakeSecret(MakesecretRequest) returns (MakesecretResponse) {}
rpc Pay(PayRequest) returns (PayResponse) {}
rpc ListNodes(ListnodesRequest) returns (ListnodesResponse) {}
rpc WaitAnyInvoice(WaitanyinvoiceRequest) returns (WaitanyinvoiceResponse) {}
@@ -49,28 +59,73 @@ service Node {
rpc ListClosedChannels(ListclosedchannelsRequest) returns (ListclosedchannelsResponse) {}
rpc DecodePay(DecodepayRequest) returns (DecodepayResponse) {}
rpc Decode(DecodeRequest) returns (DecodeResponse) {}
+ rpc DelPay(DelpayRequest) returns (DelpayResponse) {}
+ rpc DelForward(DelforwardRequest) returns (DelforwardResponse) {}
+ rpc DisableOffer(DisableofferRequest) returns (DisableofferResponse) {}
rpc Disconnect(DisconnectRequest) returns (DisconnectResponse) {}
rpc Feerates(FeeratesRequest) returns (FeeratesResponse) {}
rpc FetchInvoice(FetchinvoiceRequest) returns (FetchinvoiceResponse) {}
+ rpc FundChannel_Cancel(Fundchannel_cancelRequest) returns (Fundchannel_cancelResponse) {}
+ rpc FundChannel_Complete(Fundchannel_completeRequest) returns (Fundchannel_completeResponse) {}
rpc FundChannel(FundchannelRequest) returns (FundchannelResponse) {}
+ rpc FundChannel_Start(Fundchannel_startRequest) returns (Fundchannel_startResponse) {}
+ rpc GetLog(GetlogRequest) returns (GetlogResponse) {}
+ rpc FunderUpdate(FunderupdateRequest) returns (FunderupdateResponse) {}
rpc GetRoute(GetrouteRequest) returns (GetrouteResponse) {}
rpc ListForwards(ListforwardsRequest) returns (ListforwardsResponse) {}
rpc ListOffers(ListoffersRequest) returns (ListoffersResponse) {}
rpc ListPays(ListpaysRequest) returns (ListpaysResponse) {}
rpc ListHtlcs(ListhtlcsRequest) returns (ListhtlcsResponse) {}
+ rpc MultiFundChannel(MultifundchannelRequest) returns (MultifundchannelResponse) {}
+ rpc MultiWithdraw(MultiwithdrawRequest) returns (MultiwithdrawResponse) {}
rpc Offer(OfferRequest) returns (OfferResponse) {}
+ rpc OpenChannel_Abort(Openchannel_abortRequest) returns (Openchannel_abortResponse) {}
+ rpc OpenChannel_Bump(Openchannel_bumpRequest) returns (Openchannel_bumpResponse) {}
+ rpc OpenChannel_Init(Openchannel_initRequest) returns (Openchannel_initResponse) {}
+ rpc OpenChannel_Signed(Openchannel_signedRequest) returns (Openchannel_signedResponse) {}
+ rpc OpenChannel_Update(Openchannel_updateRequest) returns (Openchannel_updateResponse) {}
rpc Ping(PingRequest) returns (PingResponse) {}
+ rpc Plugin(PluginRequest) returns (PluginResponse) {}
+ rpc RenePayStatus(RenepaystatusRequest) returns (RenepaystatusResponse) {}
+ rpc RenePay(RenepayRequest) returns (RenepayResponse) {}
+ rpc ReserveInputs(ReserveinputsRequest) returns (ReserveinputsResponse) {}
rpc SendCustomMsg(SendcustommsgRequest) returns (SendcustommsgResponse) {}
+ rpc SendInvoice(SendinvoiceRequest) returns (SendinvoiceResponse) {}
+ rpc SendOnionMessage(SendonionmessageRequest) returns (SendonionmessageResponse) {}
rpc SetChannel(SetchannelRequest) returns (SetchannelResponse) {}
+ rpc SetConfig(SetconfigRequest) returns (SetconfigResponse) {}
+ rpc SetPsbtVersion(SetpsbtversionRequest) returns (SetpsbtversionResponse) {}
rpc SignInvoice(SigninvoiceRequest) returns (SigninvoiceResponse) {}
rpc SignMessage(SignmessageRequest) returns (SignmessageResponse) {}
+ rpc Splice_Init(Splice_initRequest) returns (Splice_initResponse) {}
+ rpc Splice_Signed(Splice_signedRequest) returns (Splice_signedResponse) {}
+ rpc Splice_Update(Splice_updateRequest) returns (Splice_updateResponse) {}
+ rpc UnreserveInputs(UnreserveinputsRequest) returns (UnreserveinputsResponse) {}
+ rpc UpgradeWallet(UpgradewalletRequest) returns (UpgradewalletResponse) {}
rpc WaitBlockHeight(WaitblockheightRequest) returns (WaitblockheightResponse) {}
rpc Wait(WaitRequest) returns (WaitResponse) {}
+ rpc ListConfigs(ListconfigsRequest) returns (ListconfigsResponse) {}
rpc Stop(StopRequest) returns (StopResponse) {}
+ rpc Help(HelpRequest) returns (HelpResponse) {}
rpc PreApproveKeysend(PreapprovekeysendRequest) returns (PreapprovekeysendResponse) {}
rpc PreApproveInvoice(PreapproveinvoiceRequest) returns (PreapproveinvoiceResponse) {}
rpc StaticBackup(StaticbackupRequest) returns (StaticbackupResponse) {}
+ rpc BkprChannelsApy(BkprchannelsapyRequest) returns (BkprchannelsapyResponse) {}
+ rpc BkprDumpIncomeCsv(BkprdumpincomecsvRequest) returns (BkprdumpincomecsvResponse) {}
+ rpc BkprInspect(BkprinspectRequest) returns (BkprinspectResponse) {}
+ rpc BkprListAccountEvents(BkprlistaccounteventsRequest) returns (BkprlistaccounteventsResponse) {}
+ rpc BkprListBalances(BkprlistbalancesRequest) returns (BkprlistbalancesResponse) {}
rpc BkprListIncome(BkprlistincomeRequest) returns (BkprlistincomeResponse) {}
+ rpc BlacklistRune(BlacklistruneRequest) returns (BlacklistruneResponse) {}
+ rpc CheckRune(CheckruneRequest) returns (CheckruneResponse) {}
+ rpc CreateRune(CreateruneRequest) returns (CreateruneResponse) {}
+ rpc ShowRunes(ShowrunesRequest) returns (ShowrunesResponse) {}
+
+ rpc SubscribeBlockAdded(StreamBlockAddedRequest) returns (stream BlockAddedNotification) {}
+ rpc SubscribeChannelOpenFailed(StreamChannelOpenFailedRequest) returns (stream ChannelOpenFailedNotification) {}
+ rpc SubscribeChannelOpened(StreamChannelOpenedRequest) returns (stream ChannelOpenedNotification) {}
+ rpc SubscribeConnect(StreamConnectRequest) returns (stream PeerConnectNotification) {}
+ rpc SubscribeCustomMsg(StreamCustomMsgRequest) returns (stream CustomMsgNotification) {}
}
message GetinfoRequest {
@@ -121,21 +176,30 @@ message GetinfoBinding {
// Getinfo.binding[].type
enum GetinfoBindingType {
LOCAL_SOCKET = 0;
- WEBSOCKET = 5;
IPV4 = 1;
IPV6 = 2;
TORV2 = 3;
TORV3 = 4;
+ WEBSOCKET = 5;
}
GetinfoBindingType item_type = 1;
optional string address = 2;
optional uint32 port = 3;
optional string socket = 4;
+ optional string subtype = 5;
}
message ListpeersRequest {
+ // ListPeers.level
+ enum ListpeersLevel {
+ IO = 0;
+ DEBUG = 1;
+ INFO = 2;
+ UNUSUAL = 3;
+ TRACE = 4;
+ }
optional bytes id = 1;
- optional string level = 2;
+ optional ListpeersLevel level = 2;
}
message ListpeersResponse {
@@ -145,12 +209,11 @@ message ListpeersResponse {
message ListpeersPeers {
bytes id = 1;
bool connected = 2;
- optional uint32 num_channels = 8;
repeated ListpeersPeersLog log = 3;
- repeated ListpeersPeersChannels channels = 4;
repeated string netaddr = 5;
- optional string remote_addr = 7;
optional bytes features = 6;
+ optional string remote_addr = 7;
+ optional uint32 num_channels = 8;
}
message ListpeersPeersLog {
@@ -163,6 +226,7 @@ message ListpeersPeersLog {
DEBUG = 4;
IO_IN = 5;
IO_OUT = 6;
+ TRACE = 7;
}
ListpeersPeersLogType item_type = 1;
optional uint32 num_skipped = 2;
@@ -173,118 +237,6 @@ message ListpeersPeersLog {
optional bytes data = 7;
}
-message ListpeersPeersChannels {
- // ListPeers.peers[].channels[].state
- enum ListpeersPeersChannelsState {
- OPENINGD = 0;
- CHANNELD_AWAITING_LOCKIN = 1;
- CHANNELD_NORMAL = 2;
- CHANNELD_SHUTTING_DOWN = 3;
- CLOSINGD_SIGEXCHANGE = 4;
- CLOSINGD_COMPLETE = 5;
- AWAITING_UNILATERAL = 6;
- FUNDING_SPEND_SEEN = 7;
- ONCHAIN = 8;
- DUALOPEND_OPEN_INIT = 9;
- DUALOPEND_AWAITING_LOCKIN = 10;
- DUALOPEND_OPEN_COMMITTED = 11;
- DUALOPEND_OPEN_COMMIT_READY = 12;
- }
- ListpeersPeersChannelsState state = 1;
- optional bytes scratch_txid = 2;
- optional ListpeersPeersChannelsFeerate feerate = 3;
- optional string owner = 4;
- optional string short_channel_id = 5;
- optional bytes channel_id = 6;
- optional bytes funding_txid = 7;
- optional uint32 funding_outnum = 8;
- optional string initial_feerate = 9;
- optional string last_feerate = 10;
- optional string next_feerate = 11;
- optional uint32 next_fee_step = 12;
- repeated ListpeersPeersChannelsInflight inflight = 13;
- optional bytes close_to = 14;
- optional bool private = 15;
- ChannelSide opener = 16;
- optional ChannelSide closer = 17;
- repeated string features = 18;
- optional ListpeersPeersChannelsFunding funding = 19;
- optional Amount to_us_msat = 20;
- optional Amount min_to_us_msat = 21;
- optional Amount max_to_us_msat = 22;
- optional Amount total_msat = 23;
- optional Amount fee_base_msat = 24;
- optional uint32 fee_proportional_millionths = 25;
- optional Amount dust_limit_msat = 26;
- optional Amount max_total_htlc_in_msat = 27;
- optional Amount their_reserve_msat = 28;
- optional Amount our_reserve_msat = 29;
- optional Amount spendable_msat = 30;
- optional Amount receivable_msat = 31;
- optional Amount minimum_htlc_in_msat = 32;
- optional Amount minimum_htlc_out_msat = 48;
- optional Amount maximum_htlc_out_msat = 49;
- optional uint32 their_to_self_delay = 33;
- optional uint32 our_to_self_delay = 34;
- optional uint32 max_accepted_htlcs = 35;
- optional ListpeersPeersChannelsAlias alias = 50;
- repeated string status = 37;
- optional uint64 in_payments_offered = 38;
- optional Amount in_offered_msat = 39;
- optional uint64 in_payments_fulfilled = 40;
- optional Amount in_fulfilled_msat = 41;
- optional uint64 out_payments_offered = 42;
- optional Amount out_offered_msat = 43;
- optional uint64 out_payments_fulfilled = 44;
- optional Amount out_fulfilled_msat = 45;
- repeated ListpeersPeersChannelsHtlcs htlcs = 46;
- optional string close_to_addr = 47;
-}
-
-message ListpeersPeersChannelsFeerate {
- uint32 perkw = 1;
- uint32 perkb = 2;
-}
-
-message ListpeersPeersChannelsInflight {
- bytes funding_txid = 1;
- uint32 funding_outnum = 2;
- string feerate = 3;
- Amount total_funding_msat = 4;
- Amount our_funding_msat = 5;
- optional sint64 splice_amount = 7;
- bytes scratch_txid = 6;
-}
-
-message ListpeersPeersChannelsFunding {
- optional Amount pushed_msat = 3;
- Amount local_funds_msat = 4;
- Amount remote_funds_msat = 7;
- optional Amount fee_paid_msat = 5;
- optional Amount fee_rcvd_msat = 6;
-}
-
-message ListpeersPeersChannelsAlias {
- optional string local = 1;
- optional string remote = 2;
-}
-
-message ListpeersPeersChannelsHtlcs {
- // ListPeers.peers[].channels[].htlcs[].direction
- enum ListpeersPeersChannelsHtlcsDirection {
- IN = 0;
- OUT = 1;
- }
- ListpeersPeersChannelsHtlcsDirection direction = 1;
- uint64 id = 2;
- Amount amount_msat = 3;
- uint32 expiry = 4;
- bytes payment_hash = 5;
- optional bool local_trimmed = 6;
- optional string status = 7;
- HtlcState state = 8;
-}
-
message ListfundsRequest {
optional bool spent = 1;
}
@@ -309,8 +261,9 @@ message ListfundsOutputs {
optional string address = 5;
optional bytes redeemscript = 6;
ListfundsOutputsStatus status = 7;
- bool reserved = 9;
optional uint32 blockheight = 8;
+ bool reserved = 9;
+ optional uint32 reserved_to_block = 10;
}
message ListfundsChannels {
@@ -321,20 +274,22 @@ message ListfundsChannels {
uint32 funding_output = 5;
bool connected = 6;
ChannelState state = 7;
- optional bytes channel_id = 9;
optional string short_channel_id = 8;
+ optional bytes channel_id = 9;
}
message SendpayRequest {
repeated SendpayRoute route = 1;
bytes payment_hash = 2;
optional string label = 3;
- optional Amount amount_msat = 10;
optional string bolt11 = 5;
optional bytes payment_secret = 6;
- optional uint32 partid = 7;
- optional bytes localinvreqid = 11;
+ optional uint64 partid = 7;
optional uint64 groupid = 9;
+ optional Amount amount_msat = 10;
+ optional bytes localinvreqid = 11;
+ optional bytes payment_metadata = 12;
+ optional string description = 13;
}
message SendpayResponse {
@@ -343,8 +298,6 @@ message SendpayResponse {
PENDING = 0;
COMPLETE = 1;
}
- optional uint64 created_index = 16;
- optional uint64 updated_index = 17;
uint64 id = 1;
optional uint64 groupid = 2;
bytes payment_hash = 3;
@@ -352,7 +305,6 @@ message SendpayResponse {
optional Amount amount_msat = 5;
optional bytes destination = 6;
uint64 created_at = 7;
- optional uint64 completed_at = 15;
Amount amount_sent_msat = 8;
optional string label = 9;
optional uint64 partid = 10;
@@ -360,13 +312,16 @@ message SendpayResponse {
optional string bolt12 = 12;
optional bytes payment_preimage = 13;
optional string message = 14;
+ optional uint64 completed_at = 15;
+ optional uint64 created_index = 16;
+ optional uint64 updated_index = 17;
}
message SendpayRoute {
- Amount amount_msat = 5;
bytes id = 2;
uint32 delay = 3;
string channel = 4;
+ Amount amount_msat = 5;
}
message ListchannelsRequest {
@@ -383,7 +338,6 @@ message ListchannelsChannels {
bytes source = 1;
bytes destination = 2;
string short_channel_id = 3;
- uint32 direction = 16;
bool public = 4;
Amount amount_msat = 5;
uint32 message_flags = 6;
@@ -396,6 +350,7 @@ message ListchannelsChannels {
Amount htlc_minimum_msat = 13;
optional Amount htlc_maximum_msat = 14;
bytes features = 15;
+ uint32 direction = 16;
}
message AddgossipRequest {
@@ -405,6 +360,19 @@ message AddgossipRequest {
message AddgossipResponse {
}
+message AddpsbtoutputRequest {
+ Amount satoshi = 1;
+ optional uint32 locktime = 2;
+ optional string initialpsbt = 3;
+ optional string destination = 4;
+}
+
+message AddpsbtoutputResponse {
+ string psbt = 1;
+ uint32 estimated_added_weight = 2;
+ uint32 outnum = 3;
+}
+
message AutocleaninvoiceRequest {
optional uint64 expired_by = 1;
optional uint64 cycle_seconds = 2;
@@ -416,6 +384,107 @@ message AutocleaninvoiceResponse {
optional uint64 cycle_seconds = 3;
}
+message AutocleanonceRequest {
+ AutocleanSubsystem subsystem = 1;
+ uint64 age = 2;
+}
+
+message AutocleanonceResponse {
+ AutocleanonceAutoclean autoclean = 1;
+}
+
+message AutocleanonceAutoclean {
+ optional AutocleanonceAutocleanSucceededforwards succeededforwards = 1;
+ optional AutocleanonceAutocleanFailedforwards failedforwards = 2;
+ optional AutocleanonceAutocleanSucceededpays succeededpays = 3;
+ optional AutocleanonceAutocleanFailedpays failedpays = 4;
+ optional AutocleanonceAutocleanPaidinvoices paidinvoices = 5;
+ optional AutocleanonceAutocleanExpiredinvoices expiredinvoices = 6;
+}
+
+message AutocleanonceAutocleanSucceededforwards {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanonceAutocleanFailedforwards {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanonceAutocleanSucceededpays {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanonceAutocleanFailedpays {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanonceAutocleanPaidinvoices {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanonceAutocleanExpiredinvoices {
+ uint64 cleaned = 1;
+ uint64 uncleaned = 2;
+}
+
+message AutocleanstatusRequest {
+ optional AutocleanSubsystem subsystem = 1;
+}
+
+message AutocleanstatusResponse {
+ AutocleanstatusAutoclean autoclean = 1;
+}
+
+message AutocleanstatusAutoclean {
+ optional AutocleanstatusAutocleanSucceededforwards succeededforwards = 1;
+ optional AutocleanstatusAutocleanFailedforwards failedforwards = 2;
+ optional AutocleanstatusAutocleanSucceededpays succeededpays = 3;
+ optional AutocleanstatusAutocleanFailedpays failedpays = 4;
+ optional AutocleanstatusAutocleanPaidinvoices paidinvoices = 5;
+ optional AutocleanstatusAutocleanExpiredinvoices expiredinvoices = 6;
+}
+
+message AutocleanstatusAutocleanSucceededforwards {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
+message AutocleanstatusAutocleanFailedforwards {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
+message AutocleanstatusAutocleanSucceededpays {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
+message AutocleanstatusAutocleanFailedpays {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
+message AutocleanstatusAutocleanPaidinvoices {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
+message AutocleanstatusAutocleanExpiredinvoices {
+ bool enabled = 1;
+ uint64 cleaned = 2;
+ optional uint64 age = 3;
+}
+
message CheckmessageRequest {
string message = 1;
string zbase = 2;
@@ -503,19 +572,19 @@ message CreateinvoiceResponse {
CreateinvoiceStatus status = 6;
string description = 7;
uint64 expires_at = 8;
- optional uint64 created_index = 16;
optional uint64 pay_index = 9;
optional Amount amount_received_msat = 10;
optional uint64 paid_at = 11;
- optional CreateinvoicePaid_outpoint paid_outpoint = 17;
optional bytes payment_preimage = 12;
optional bytes local_offer_id = 13;
optional string invreq_payer_note = 15;
+ optional uint64 created_index = 16;
+ optional CreateinvoicePaid_outpoint paid_outpoint = 17;
}
message CreateinvoicePaid_outpoint {
- optional bytes txid = 1;
- optional uint32 outnum = 2;
+ bytes txid = 1;
+ uint32 outnum = 2;
}
message DatastoreRequest {
@@ -527,30 +596,31 @@ message DatastoreRequest {
MUST_APPEND = 3;
CREATE_OR_APPEND = 4;
}
- repeated string key = 5;
- optional string string = 6;
optional bytes hex = 2;
optional DatastoreMode mode = 3;
optional uint64 generation = 4;
+ repeated string key = 5;
+ optional string string = 6;
}
message DatastoreResponse {
- repeated string key = 5;
optional uint64 generation = 2;
optional bytes hex = 3;
optional string string = 4;
+ repeated string key = 5;
}
message DatastoreusageRequest {
+ repeated string key = 1;
}
message DatastoreusageResponse {
- optional DatastoreusageDatastoreusage datastoreusage = 1;
+ DatastoreusageDatastoreusage datastoreusage = 1;
}
message DatastoreusageDatastoreusage {
- optional string key = 1;
- optional uint64 total_bytes = 2;
+ string key = 1;
+ uint64 total_bytes = 2;
}
message CreateonionRequest {
@@ -571,22 +641,15 @@ message CreateonionHops {
}
message DeldatastoreRequest {
- repeated string key = 3;
optional uint64 generation = 2;
+ repeated string key = 3;
}
message DeldatastoreResponse {
- repeated string key = 5;
optional uint64 generation = 2;
optional bytes hex = 3;
optional string string = 4;
-}
-
-message DelexpiredinvoiceRequest {
- optional uint64 maxexpirytime = 1;
-}
-
-message DelexpiredinvoiceResponse {
+ repeated string key = 5;
}
message DelinvoiceRequest {
@@ -614,23 +677,68 @@ message DelinvoiceResponse {
optional Amount amount_msat = 4;
optional string description = 5;
bytes payment_hash = 6;
- optional uint64 created_index = 12;
- optional uint64 updated_index = 13;
DelinvoiceStatus status = 7;
uint64 expires_at = 8;
optional bytes local_offer_id = 9;
optional string invreq_payer_note = 11;
+ optional uint64 created_index = 12;
+ optional uint64 updated_index = 13;
+ optional uint64 pay_index = 14;
+ optional Amount amount_received_msat = 15;
+ optional uint64 paid_at = 16;
+ optional bytes payment_preimage = 17;
+}
+
+message DevforgetchannelRequest {
+ bytes id = 1;
+ optional string short_channel_id = 2;
+ optional bytes channel_id = 3;
+ optional bool force = 4;
+}
+
+message DevforgetchannelResponse {
+ bool forced = 1;
+ bool funding_unspent = 2;
+ bytes funding_txid = 3;
+}
+
+message EmergencyrecoverRequest {
+}
+
+message EmergencyrecoverResponse {
+ repeated bytes stubs = 1;
+}
+
+message RecoverRequest {
+ string hsmsecret = 1;
+}
+
+message RecoverResponse {
+ // Recover.result
+ enum RecoverResult {
+ RECOVERY_RESTART_IN_PROGRESS = 0;
+ }
+ optional RecoverResult result = 1;
+}
+
+message RecoverchannelRequest {
+ repeated bytes scb = 1;
+}
+
+message RecoverchannelResponse {
+ repeated string stubs = 1;
}
message InvoiceRequest {
- AmountOrAny amount_msat = 10;
string description = 2;
string label = 3;
- optional uint64 expiry = 7;
repeated string fallbacks = 4;
optional bytes preimage = 5;
optional uint32 cltv = 6;
+ optional uint64 expiry = 7;
+ repeated string exposeprivatechannels = 8;
optional bool deschashonly = 9;
+ AmountOrAny amount_msat = 10;
}
message InvoiceResponse {
@@ -638,12 +746,61 @@ message InvoiceResponse {
bytes payment_hash = 2;
bytes payment_secret = 3;
uint64 expires_at = 4;
- optional uint64 created_index = 10;
optional string warning_capacity = 5;
optional string warning_offline = 6;
optional string warning_deadends = 7;
optional string warning_private_unused = 8;
optional string warning_mpp = 9;
+ optional uint64 created_index = 10;
+}
+
+message InvoicerequestRequest {
+ Amount amount = 1;
+ string description = 2;
+ optional string issuer = 3;
+ optional string label = 4;
+ optional uint64 absolute_expiry = 5;
+ optional bool single_use = 6;
+}
+
+message InvoicerequestResponse {
+ bytes invreq_id = 1;
+ bool active = 2;
+ bool single_use = 3;
+ string bolt12 = 4;
+ bool used = 5;
+ optional string label = 6;
+}
+
+message DisableinvoicerequestRequest {
+ string invreq_id = 1;
+}
+
+message DisableinvoicerequestResponse {
+ bytes invreq_id = 1;
+ bool active = 2;
+ bool single_use = 3;
+ string bolt12 = 4;
+ bool used = 5;
+ optional string label = 6;
+}
+
+message ListinvoicerequestsRequest {
+ optional string invreq_id = 1;
+ optional bool active_only = 2;
+}
+
+message ListinvoicerequestsResponse {
+ repeated ListinvoicerequestsInvoicerequests invoicerequests = 1;
+}
+
+message ListinvoicerequestsInvoicerequests {
+ bytes invreq_id = 1;
+ bool active = 2;
+ bool single_use = 3;
+ string bolt12 = 4;
+ bool used = 5;
+ optional string label = 6;
}
message ListdatastoreRequest {
@@ -696,19 +853,19 @@ message ListinvoicesInvoices {
optional string bolt11 = 7;
optional string bolt12 = 8;
optional bytes local_offer_id = 9;
- optional string invreq_payer_note = 15;
- optional uint64 created_index = 16;
- optional uint64 updated_index = 17;
optional uint64 pay_index = 11;
optional Amount amount_received_msat = 12;
optional uint64 paid_at = 13;
- optional ListinvoicesInvoicesPaid_outpoint paid_outpoint = 18;
optional bytes payment_preimage = 14;
+ optional string invreq_payer_note = 15;
+ optional uint64 created_index = 16;
+ optional uint64 updated_index = 17;
+ optional ListinvoicesInvoicesPaid_outpoint paid_outpoint = 18;
}
message ListinvoicesInvoicesPaid_outpoint {
- optional bytes txid = 1;
- optional uint32 outnum = 2;
+ bytes txid = 1;
+ uint32 outnum = 2;
}
message SendonionRequest {
@@ -719,10 +876,11 @@ message SendonionRequest {
repeated bytes shared_secrets = 5;
optional uint32 partid = 6;
optional string bolt11 = 7;
- optional Amount amount_msat = 12;
optional bytes destination = 9;
- optional bytes localinvreqid = 13;
optional uint64 groupid = 11;
+ optional Amount amount_msat = 12;
+ optional bytes localinvreqid = 13;
+ optional string description = 14;
}
message SendonionResponse {
@@ -731,7 +889,6 @@ message SendonionResponse {
PENDING = 0;
COMPLETE = 1;
}
- optional uint64 created_index = 14;
uint64 id = 1;
bytes payment_hash = 2;
SendonionStatus status = 3;
@@ -742,10 +899,11 @@ message SendonionResponse {
optional string label = 8;
optional string bolt11 = 9;
optional string bolt12 = 10;
- optional uint64 partid = 13;
- optional uint64 updated_index = 15;
optional bytes payment_preimage = 11;
optional string message = 12;
+ optional uint64 partid = 13;
+ optional uint64 created_index = 14;
+ optional uint64 updated_index = 15;
}
message SendonionFirst_hop {
@@ -785,12 +943,9 @@ message ListsendpaysPayments {
FAILED = 1;
COMPLETE = 2;
}
- optional uint64 created_index = 16;
uint64 id = 1;
uint64 groupid = 2;
- optional uint64 partid = 15;
bytes payment_hash = 3;
- optional uint64 updated_index = 17;
ListsendpaysPaymentsStatus status = 4;
optional Amount amount_msat = 5;
optional bytes destination = 6;
@@ -798,10 +953,14 @@ message ListsendpaysPayments {
Amount amount_sent_msat = 8;
optional string label = 9;
optional string bolt11 = 10;
- optional string description = 14;
optional string bolt12 = 11;
optional bytes payment_preimage = 12;
optional bytes erroronion = 13;
+ optional string description = 14;
+ optional uint64 partid = 15;
+ optional uint64 created_index = 16;
+ optional uint64 updated_index = 17;
+ optional uint64 completed_at = 18;
}
message ListtransactionsRequest {
@@ -830,23 +989,33 @@ message ListtransactionsTransactionsInputs {
message ListtransactionsTransactionsOutputs {
uint32 index = 1;
- Amount amount_msat = 6;
bytes scriptPubKey = 3;
+ Amount amount_msat = 6;
+}
+
+message MakesecretRequest {
+ optional bytes hex = 1;
+ optional string string = 2;
+}
+
+message MakesecretResponse {
+ bytes secret = 1;
}
message PayRequest {
string bolt11 = 1;
- optional Amount amount_msat = 13;
optional string label = 3;
- optional double riskfactor = 8;
optional double maxfeepercent = 4;
optional uint32 retry_for = 5;
optional uint32 maxdelay = 6;
optional Amount exemptfee = 7;
- optional bytes localinvreqid = 14;
+ optional double riskfactor = 8;
repeated string exclude = 10;
optional Amount maxfee = 11;
optional string description = 12;
+ optional Amount amount_msat = 13;
+ optional bytes localinvreqid = 14;
+ optional Amount partial_msat = 15;
}
message PayResponse {
@@ -882,6 +1051,16 @@ message ListnodesNodes {
optional bytes color = 4;
optional bytes features = 5;
repeated ListnodesNodesAddresses addresses = 6;
+ optional ListnodesNodesOption_will_fund option_will_fund = 7;
+}
+
+message ListnodesNodesOption_will_fund {
+ Amount lease_fee_base_msat = 1;
+ uint32 lease_fee_basis = 2;
+ uint32 funding_weight = 3;
+ Amount channel_fee_max_base_msat = 4;
+ uint32 channel_fee_max_proportional_thousandths = 5;
+ bytes compact_lease = 6;
}
message ListnodesNodesAddresses {
@@ -917,18 +1096,18 @@ message WaitanyinvoiceResponse {
optional Amount amount_msat = 6;
optional string bolt11 = 7;
optional string bolt12 = 8;
- optional uint64 created_index = 13;
- optional uint64 updated_index = 14;
optional uint64 pay_index = 9;
optional Amount amount_received_msat = 10;
optional uint64 paid_at = 11;
- optional WaitanyinvoicePaid_outpoint paid_outpoint = 15;
optional bytes payment_preimage = 12;
+ optional uint64 created_index = 13;
+ optional uint64 updated_index = 14;
+ optional WaitanyinvoicePaid_outpoint paid_outpoint = 15;
}
message WaitanyinvoicePaid_outpoint {
- optional bytes txid = 1;
- optional uint32 outnum = 2;
+ bytes txid = 1;
+ uint32 outnum = 2;
}
message WaitinvoiceRequest {
@@ -949,24 +1128,24 @@ message WaitinvoiceResponse {
optional Amount amount_msat = 6;
optional string bolt11 = 7;
optional string bolt12 = 8;
- optional uint64 created_index = 13;
- optional uint64 updated_index = 14;
optional uint64 pay_index = 9;
optional Amount amount_received_msat = 10;
optional uint64 paid_at = 11;
- optional WaitinvoicePaid_outpoint paid_outpoint = 15;
optional bytes payment_preimage = 12;
+ optional uint64 created_index = 13;
+ optional uint64 updated_index = 14;
+ optional WaitinvoicePaid_outpoint paid_outpoint = 15;
}
message WaitinvoicePaid_outpoint {
- optional bytes txid = 1;
- optional uint32 outnum = 2;
+ bytes txid = 1;
+ uint32 outnum = 2;
}
message WaitsendpayRequest {
bytes payment_hash = 1;
- optional uint32 timeout = 3;
optional uint64 partid = 2;
+ optional uint32 timeout = 3;
optional uint64 groupid = 4;
}
@@ -975,7 +1154,6 @@ message WaitsendpayResponse {
enum WaitsendpayStatus {
COMPLETE = 0;
}
- optional uint64 created_index = 15;
uint64 id = 1;
optional uint64 groupid = 2;
bytes payment_hash = 3;
@@ -983,37 +1161,38 @@ message WaitsendpayResponse {
optional Amount amount_msat = 5;
optional bytes destination = 6;
uint64 created_at = 7;
- optional uint64 updated_index = 16;
- optional double completed_at = 14;
Amount amount_sent_msat = 8;
optional string label = 9;
optional uint64 partid = 10;
optional string bolt11 = 11;
optional string bolt12 = 12;
optional bytes payment_preimage = 13;
+ optional double completed_at = 14;
+ optional uint64 created_index = 15;
+ optional uint64 updated_index = 16;
}
message NewaddrRequest {
// NewAddr.addresstype
enum NewaddrAddresstype {
BECH32 = 0;
- P2TR = 3;
ALL = 2;
+ P2TR = 3;
}
optional NewaddrAddresstype addresstype = 1;
}
message NewaddrResponse {
- optional string p2tr = 3;
optional string bech32 = 1;
+ optional string p2tr = 3;
}
message WithdrawRequest {
string destination = 1;
- optional AmountOrAll satoshi = 2;
- optional Feerate feerate = 5;
+ AmountOrAll satoshi = 2;
optional uint32 minconf = 3;
repeated Outpoint utxos = 4;
+ optional Feerate feerate = 5;
}
message WithdrawResponse {
@@ -1024,7 +1203,6 @@ message WithdrawResponse {
message KeysendRequest {
bytes destination = 1;
- Amount amount_msat = 10;
optional string label = 3;
optional double maxfeepercent = 4;
optional uint32 retry_for = 5;
@@ -1032,6 +1210,7 @@ message KeysendRequest {
optional Amount exemptfee = 7;
optional RoutehintList routehints = 8;
optional TlvStream extratlvs = 9;
+ Amount amount_msat = 10;
}
message KeysendResponse {
@@ -1082,7 +1261,7 @@ message FundpsbtReservations {
message SendpsbtRequest {
string psbt = 1;
- optional bool reserve = 2;
+ optional uint32 reserve = 2;
}
message SendpsbtResponse {
@@ -1100,14 +1279,14 @@ message SignpsbtResponse {
}
message UtxopsbtRequest {
- Amount satoshi = 1;
+ AmountOrAll satoshi = 1;
Feerate feerate = 2;
uint32 startweight = 3;
repeated Outpoint utxos = 4;
optional uint32 reserve = 5;
- optional bool reservedok = 8;
optional uint32 locktime = 6;
optional uint32 min_witness_weight = 7;
+ optional bool reservedok = 8;
optional bool excess_as_change = 9;
optional bool opening_anchor_channel = 10;
}
@@ -1139,10 +1318,10 @@ message TxdiscardResponse {
}
message TxprepareRequest {
- repeated OutputDesc outputs = 5;
optional Feerate feerate = 2;
optional uint32 minconf = 3;
repeated Outpoint utxos = 4;
+ repeated OutputDesc outputs = 5;
}
message TxprepareResponse {
@@ -1187,13 +1366,10 @@ message ListpeerchannelsChannels {
DUALOPEND_OPEN_COMMITTED = 12;
DUALOPEND_OPEN_COMMIT_READY = 13;
}
- optional bytes peer_id = 1;
- optional bool peer_connected = 2;
- optional ListpeerchannelsChannelsState state = 3;
+ bytes peer_id = 1;
+ bool peer_connected = 2;
+ ListpeerchannelsChannelsState state = 3;
optional bytes scratch_txid = 4;
- optional ListpeerchannelsChannelsUpdates updates = 55;
- optional bool ignore_fee_limits = 54;
- optional bool lost_state = 57;
optional ListpeerchannelsChannelsFeerate feerate = 6;
optional string owner = 7;
optional string short_channel_id = 8;
@@ -1207,7 +1383,7 @@ message ListpeerchannelsChannels {
repeated ListpeerchannelsChannelsInflight inflight = 16;
optional bytes close_to = 17;
optional bool private = 18;
- optional ChannelSide opener = 19;
+ ChannelSide opener = 19;
optional ChannelSide closer = 20;
optional ListpeerchannelsChannelsFunding funding = 22;
optional Amount to_us_msat = 23;
@@ -1238,51 +1414,57 @@ message ListpeerchannelsChannels {
optional Amount out_offered_msat = 49;
optional uint64 out_payments_fulfilled = 50;
optional Amount out_fulfilled_msat = 51;
- optional uint64 last_stable_connection = 56;
repeated ListpeerchannelsChannelsHtlcs htlcs = 52;
optional string close_to_addr = 53;
+ optional bool ignore_fee_limits = 54;
+ optional ListpeerchannelsChannelsUpdates updates = 55;
+ optional uint64 last_stable_connection = 56;
+ optional bool lost_state = 57;
+ optional bool reestablished = 58;
+ optional Amount last_tx_fee_msat = 59;
+ optional uint32 direction = 60;
}
message ListpeerchannelsChannelsUpdates {
- optional ListpeerchannelsChannelsUpdatesLocal local = 1;
+ ListpeerchannelsChannelsUpdatesLocal local = 1;
optional ListpeerchannelsChannelsUpdatesRemote remote = 2;
}
message ListpeerchannelsChannelsUpdatesLocal {
- optional Amount htlc_minimum_msat = 1;
- optional Amount htlc_maximum_msat = 2;
- optional uint32 cltv_expiry_delta = 3;
- optional Amount fee_base_msat = 4;
- optional uint32 fee_proportional_millionths = 5;
+ Amount htlc_minimum_msat = 1;
+ Amount htlc_maximum_msat = 2;
+ uint32 cltv_expiry_delta = 3;
+ Amount fee_base_msat = 4;
+ uint32 fee_proportional_millionths = 5;
}
message ListpeerchannelsChannelsUpdatesRemote {
- optional Amount htlc_minimum_msat = 1;
- optional Amount htlc_maximum_msat = 2;
- optional uint32 cltv_expiry_delta = 3;
- optional Amount fee_base_msat = 4;
- optional uint32 fee_proportional_millionths = 5;
+ Amount htlc_minimum_msat = 1;
+ Amount htlc_maximum_msat = 2;
+ uint32 cltv_expiry_delta = 3;
+ Amount fee_base_msat = 4;
+ uint32 fee_proportional_millionths = 5;
}
message ListpeerchannelsChannelsFeerate {
- optional uint32 perkw = 1;
- optional uint32 perkb = 2;
+ uint32 perkw = 1;
+ uint32 perkb = 2;
}
message ListpeerchannelsChannelsInflight {
- optional bytes funding_txid = 1;
- optional uint32 funding_outnum = 2;
- optional string feerate = 3;
- optional Amount total_funding_msat = 4;
- optional sint64 splice_amount = 7;
- optional Amount our_funding_msat = 5;
+ bytes funding_txid = 1;
+ uint32 funding_outnum = 2;
+ string feerate = 3;
+ Amount total_funding_msat = 4;
+ Amount our_funding_msat = 5;
optional bytes scratch_txid = 6;
+ optional sint64 splice_amount = 7;
}
message ListpeerchannelsChannelsFunding {
optional Amount pushed_msat = 1;
- optional Amount local_funds_msat = 2;
- optional Amount remote_funds_msat = 3;
+ Amount local_funds_msat = 2;
+ Amount remote_funds_msat = 3;
optional Amount fee_paid_msat = 4;
optional Amount fee_rcvd_msat = 5;
}
@@ -1298,14 +1480,14 @@ message ListpeerchannelsChannelsHtlcs {
IN = 0;
OUT = 1;
}
- optional ListpeerchannelsChannelsHtlcsDirection direction = 1;
- optional uint64 id = 2;
- optional Amount amount_msat = 3;
- optional uint32 expiry = 4;
- optional bytes payment_hash = 5;
+ ListpeerchannelsChannelsHtlcsDirection direction = 1;
+ uint64 id = 2;
+ Amount amount_msat = 3;
+ uint32 expiry = 4;
+ bytes payment_hash = 5;
optional bool local_trimmed = 6;
optional string status = 7;
- optional HtlcState state = 8;
+ HtlcState state = 8;
}
message ListclosedchannelsRequest {
@@ -1378,6 +1560,7 @@ message DecodepayResponse {
optional bytes payment_metadata = 13;
repeated DecodepayFallbacks fallbacks = 14;
repeated DecodepayExtra extra = 16;
+ optional DecodeRoutehintList routes = 17;
}
message DecodepayFallbacks {
@@ -1483,11 +1666,19 @@ message DecodeResponse {
optional string warning_rune_invalid_utf8 = 74;
optional bytes hex = 75;
optional bytes decrypted = 76;
+ optional string signature = 77;
+ optional string currency = 78;
+ optional Amount amount_msat = 79;
+ optional string description = 80;
+ optional bytes features = 81;
+ optional DecodeRoutehintList routes = 82;
}
message DecodeOffer_paths {
- bytes first_node_id = 1;
+ optional bytes first_node_id = 1;
bytes blinding = 2;
+ optional uint32 first_scid_dir = 4;
+ optional string first_scid = 5;
}
message DecodeOffer_recurrencePaywindow {
@@ -1508,7 +1699,18 @@ message DecodeInvoice_fallbacks {
}
message DecodeFallbacks {
+ // Decode.fallbacks[].type
+ enum DecodeFallbacksType {
+ P2PKH = 0;
+ P2SH = 1;
+ P2WPKH = 2;
+ P2WSH = 3;
+ P2TR = 4;
+ }
optional string warning_invoice_fallbacks_version_invalid = 1;
+ DecodeFallbacksType item_type = 2;
+ optional string addr = 3;
+ bytes hex = 4;
}
message DecodeExtra {
@@ -1521,6 +1723,76 @@ message DecodeRestrictions {
string summary = 2;
}
+message DelpayRequest {
+ // DelPay.status
+ enum DelpayStatus {
+ COMPLETE = 0;
+ FAILED = 1;
+ }
+ bytes payment_hash = 1;
+ DelpayStatus status = 2;
+ optional uint64 partid = 3;
+ optional uint64 groupid = 4;
+}
+
+message DelpayResponse {
+ repeated DelpayPayments payments = 1;
+}
+
+message DelpayPayments {
+ // DelPay.payments[].status
+ enum DelpayPaymentsStatus {
+ PENDING = 0;
+ FAILED = 1;
+ COMPLETE = 2;
+ }
+ optional uint64 created_index = 1;
+ uint64 id = 2;
+ bytes payment_hash = 3;
+ DelpayPaymentsStatus status = 4;
+ Amount amount_sent_msat = 5;
+ optional uint64 partid = 6;
+ optional bytes destination = 7;
+ optional Amount amount_msat = 8;
+ uint64 created_at = 9;
+ optional uint64 updated_index = 10;
+ optional uint64 completed_at = 11;
+ optional uint64 groupid = 12;
+ optional bytes payment_preimage = 13;
+ optional string label = 14;
+ optional string bolt11 = 15;
+ optional string bolt12 = 16;
+ optional bytes erroronion = 17;
+}
+
+message DelforwardRequest {
+ // DelForward.status
+ enum DelforwardStatus {
+ SETTLED = 0;
+ LOCAL_FAILED = 1;
+ FAILED = 2;
+ }
+ string in_channel = 1;
+ uint64 in_htlc_id = 2;
+ DelforwardStatus status = 3;
+}
+
+message DelforwardResponse {
+}
+
+message DisableofferRequest {
+ bytes offer_id = 1;
+}
+
+message DisableofferResponse {
+ bytes offer_id = 1;
+ bool active = 2;
+ bool single_use = 3;
+ string bolt12 = 4;
+ bool used = 5;
+ optional string label = 6;
+}
+
message DisconnectRequest {
bytes id = 1;
optional bool force = 2;
@@ -1548,50 +1820,50 @@ message FeeratesResponse {
message FeeratesPerkb {
uint32 min_acceptable = 1;
uint32 max_acceptable = 2;
- optional uint32 floor = 10;
- repeated FeeratesPerkbEstimates estimates = 9;
optional uint32 opening = 3;
optional uint32 mutual_close = 4;
optional uint32 unilateral_close = 5;
- optional uint32 unilateral_anchor_close = 11;
optional uint32 delayed_to_us = 6;
optional uint32 htlc_resolution = 7;
optional uint32 penalty = 8;
+ repeated FeeratesPerkbEstimates estimates = 9;
+ optional uint32 floor = 10;
+ optional uint32 unilateral_anchor_close = 11;
}
message FeeratesPerkbEstimates {
- optional uint32 blockcount = 1;
- optional uint32 feerate = 2;
- optional uint32 smoothed_feerate = 3;
+ uint32 blockcount = 1;
+ uint32 feerate = 2;
+ uint32 smoothed_feerate = 3;
}
message FeeratesPerkw {
uint32 min_acceptable = 1;
uint32 max_acceptable = 2;
- optional uint32 floor = 10;
- repeated FeeratesPerkwEstimates estimates = 9;
optional uint32 opening = 3;
optional uint32 mutual_close = 4;
optional uint32 unilateral_close = 5;
- optional uint32 unilateral_anchor_close = 11;
optional uint32 delayed_to_us = 6;
optional uint32 htlc_resolution = 7;
optional uint32 penalty = 8;
+ repeated FeeratesPerkwEstimates estimates = 9;
+ optional uint32 floor = 10;
+ optional uint32 unilateral_anchor_close = 11;
}
message FeeratesPerkwEstimates {
- optional uint32 blockcount = 1;
- optional uint32 feerate = 2;
- optional uint32 smoothed_feerate = 3;
+ uint32 blockcount = 1;
+ uint32 feerate = 2;
+ uint32 smoothed_feerate = 3;
}
message FeeratesOnchain_fee_estimates {
uint64 opening_channel_satoshis = 1;
uint64 mutual_close_satoshis = 2;
uint64 unilateral_close_satoshis = 3;
- optional uint64 unilateral_close_nonanchor_satoshis = 6;
uint64 htlc_timeout_satoshis = 4;
uint64 htlc_success_satoshis = 5;
+ optional uint64 unilateral_close_nonanchor_satoshis = 6;
}
message FetchinvoiceRequest {
@@ -1627,16 +1899,34 @@ message FetchinvoiceNext_period {
uint64 paywindow_end = 5;
}
+message Fundchannel_cancelRequest {
+ bytes id = 1;
+}
+
+message Fundchannel_cancelResponse {
+ string cancelled = 1;
+}
+
+message Fundchannel_completeRequest {
+ bytes id = 1;
+ string psbt = 2;
+}
+
+message Fundchannel_completeResponse {
+ bytes channel_id = 1;
+ bool commitments_secured = 2;
+}
+
message FundchannelRequest {
- bytes id = 9;
AmountOrAll amount = 1;
optional Feerate feerate = 2;
optional bool announce = 3;
- optional uint32 minconf = 10;
optional Amount push_msat = 5;
optional string close_to = 6;
optional Amount request_amt = 7;
optional string compact_lease = 8;
+ bytes id = 9;
+ optional uint32 minconf = 10;
repeated Outpoint utxos = 11;
optional uint32 mindepth = 12;
optional Amount reserve = 13;
@@ -1648,9 +1938,9 @@ message FundchannelResponse {
bytes txid = 2;
uint32 outnum = 3;
bytes channel_id = 4;
- optional FundchannelChannel_type channel_type = 7;
optional bytes close_to = 5;
optional uint32 mindepth = 6;
+ optional FundchannelChannel_type channel_type = 7;
}
message FundchannelChannel_type {
@@ -1658,15 +1948,133 @@ message FundchannelChannel_type {
repeated ChannelTypeName names = 2;
}
+message Fundchannel_startRequest {
+ bytes id = 1;
+ Amount amount = 2;
+ optional Feerate feerate = 3;
+ optional bool announce = 4;
+ optional string close_to = 5;
+ optional Amount push_msat = 6;
+ optional uint32 mindepth = 7;
+ optional Amount reserve = 8;
+ repeated uint32 channel_type = 9;
+}
+
+message Fundchannel_startResponse {
+ string funding_address = 1;
+ bytes scriptpubkey = 2;
+ optional Fundchannel_startChannel_type channel_type = 3;
+ optional bytes close_to = 4;
+ string warning_usage = 5;
+ optional uint32 mindepth = 6;
+}
+
+message Fundchannel_startChannel_type {
+ repeated uint32 bits = 1;
+ repeated ChannelTypeName names = 2;
+}
+
+message GetlogRequest {
+ // GetLog.level
+ enum GetlogLevel {
+ BROKEN = 0;
+ UNUSUAL = 1;
+ INFO = 2;
+ DEBUG = 3;
+ IO = 4;
+ TRACE = 5;
+ }
+ optional GetlogLevel level = 1;
+}
+
+message GetlogResponse {
+ string created_at = 1;
+ uint32 bytes_used = 2;
+ uint32 bytes_max = 3;
+ repeated GetlogLog log = 4;
+}
+
+message GetlogLog {
+ // GetLog.log[].type
+ enum GetlogLogType {
+ SKIPPED = 0;
+ BROKEN = 1;
+ UNUSUAL = 2;
+ INFO = 3;
+ DEBUG = 4;
+ IO_IN = 5;
+ IO_OUT = 6;
+ TRACE = 7;
+ }
+ GetlogLogType item_type = 1;
+ optional uint32 num_skipped = 2;
+ optional string time = 3;
+ optional string source = 4;
+ optional string log = 5;
+ optional bytes node_id = 6;
+ optional bytes data = 7;
+}
+
+message FunderupdateRequest {
+ // FunderUpdate.policy
+ enum FunderupdatePolicy {
+ MATCH = 0;
+ AVAILABLE = 1;
+ FIXED = 2;
+ }
+ optional FunderupdatePolicy policy = 1;
+ optional Amount policy_mod = 2;
+ optional bool leases_only = 3;
+ optional Amount min_their_funding_msat = 4;
+ optional Amount max_their_funding_msat = 5;
+ optional Amount per_channel_min_msat = 6;
+ optional Amount per_channel_max_msat = 7;
+ optional Amount reserve_tank_msat = 8;
+ optional uint32 fuzz_percent = 9;
+ optional uint32 fund_probability = 10;
+ optional Amount lease_fee_base_msat = 11;
+ optional uint32 lease_fee_basis = 12;
+ optional uint32 funding_weight = 13;
+ optional Amount channel_fee_max_base_msat = 14;
+ optional uint32 channel_fee_max_proportional_thousandths = 15;
+ optional bytes compact_lease = 16;
+}
+
+message FunderupdateResponse {
+ // FunderUpdate.policy
+ enum FunderupdatePolicy {
+ MATCH = 0;
+ AVAILABLE = 1;
+ FIXED = 2;
+ }
+ string summary = 1;
+ FunderupdatePolicy policy = 2;
+ uint32 policy_mod = 3;
+ bool leases_only = 4;
+ Amount min_their_funding_msat = 5;
+ Amount max_their_funding_msat = 6;
+ Amount per_channel_min_msat = 7;
+ Amount per_channel_max_msat = 8;
+ Amount reserve_tank_msat = 9;
+ uint32 fuzz_percent = 10;
+ uint32 fund_probability = 11;
+ optional Amount lease_fee_base_msat = 12;
+ optional uint32 lease_fee_basis = 13;
+ optional uint32 funding_weight = 14;
+ optional Amount channel_fee_max_base_msat = 15;
+ optional uint32 channel_fee_max_proportional_thousandths = 16;
+ optional bytes compact_lease = 17;
+}
+
message GetrouteRequest {
bytes id = 1;
- Amount amount_msat = 9;
uint64 riskfactor = 3;
optional uint32 cltv = 4;
optional bytes fromid = 5;
optional uint32 fuzzpercent = 6;
repeated string exclude = 7;
optional uint32 maxhops = 8;
+ Amount amount_msat = 9;
}
message GetrouteResponse {
@@ -1724,18 +2132,21 @@ message ListforwardsForwards {
LEGACY = 0;
TLV = 1;
}
- optional uint64 created_index = 12;
string in_channel = 1;
- optional uint64 in_htlc_id = 10;
Amount in_msat = 2;
ListforwardsForwardsStatus status = 3;
double received_time = 4;
optional string out_channel = 5;
- optional uint64 out_htlc_id = 11;
- optional uint64 updated_index = 13;
- optional ListforwardsForwardsStyle style = 9;
optional Amount fee_msat = 7;
optional Amount out_msat = 8;
+ optional ListforwardsForwardsStyle style = 9;
+ optional uint64 in_htlc_id = 10;
+ optional uint64 out_htlc_id = 11;
+ optional uint64 created_index = 12;
+ optional uint64 updated_index = 13;
+ optional double resolved_time = 14;
+ optional uint32 failcode = 15;
+ optional string failreason = 16;
}
message ListoffersRequest {
@@ -1783,16 +2194,16 @@ message ListpaysPays {
ListpaysPaysStatus status = 2;
optional bytes destination = 3;
uint64 created_at = 4;
- optional uint64 completed_at = 12;
optional string label = 5;
optional string bolt11 = 6;
- optional string description = 11;
optional string bolt12 = 7;
optional Amount amount_msat = 8;
optional Amount amount_sent_msat = 9;
+ optional bytes erroronion = 10;
+ optional string description = 11;
+ optional uint64 completed_at = 12;
optional bytes preimage = 13;
optional uint64 number_of_parts = 14;
- optional bytes erroronion = 10;
}
message ListhtlcsRequest {
@@ -1818,6 +2229,77 @@ message ListhtlcsHtlcs {
HtlcState state = 7;
}
+message MultifundchannelRequest {
+ repeated MultifundchannelDestinations destinations = 1;
+ optional Feerate feerate = 2;
+ optional sint64 minconf = 3;
+ repeated Outpoint utxos = 4;
+ optional sint64 minchannels = 5;
+ optional Feerate commitment_feerate = 6;
+}
+
+message MultifundchannelResponse {
+ bytes tx = 1;
+ bytes txid = 2;
+ repeated MultifundchannelChannel_ids channel_ids = 3;
+ repeated MultifundchannelFailed failed = 4;
+}
+
+message MultifundchannelDestinations {
+ string id = 1;
+ AmountOrAll amount = 2;
+ optional bool announce = 3;
+ optional Amount push_msat = 4;
+ optional string close_to = 5;
+ optional Amount request_amt = 6;
+ optional string compact_lease = 7;
+ optional uint32 mindepth = 8;
+ optional Amount reserve = 9;
+}
+
+message MultifundchannelChannel_ids {
+ bytes id = 1;
+ uint32 outnum = 2;
+ bytes channel_id = 3;
+ optional MultifundchannelChannel_idsChannel_type channel_type = 4;
+ optional bytes close_to = 5;
+}
+
+message MultifundchannelChannel_idsChannel_type {
+ repeated uint32 bits = 1;
+ repeated ChannelTypeName names = 2;
+}
+
+message MultifundchannelFailed {
+ // MultiFundChannel.failed[].method
+ enum MultifundchannelFailedMethod {
+ CONNECT = 0;
+ OPENCHANNEL_INIT = 1;
+ FUNDCHANNEL_START = 2;
+ FUNDCHANNEL_COMPLETE = 3;
+ }
+ bytes id = 1;
+ MultifundchannelFailedMethod method = 2;
+ MultifundchannelFailedError error = 3;
+}
+
+message MultifundchannelFailedError {
+ sint64 code = 1;
+ string message = 2;
+}
+
+message MultiwithdrawRequest {
+ repeated OutputDesc outputs = 1;
+ optional Feerate feerate = 2;
+ optional uint32 minconf = 3;
+ repeated Outpoint utxos = 4;
+}
+
+message MultiwithdrawResponse {
+ bytes tx = 1;
+ bytes txid = 2;
+}
+
message OfferRequest {
string amount = 1;
string description = 2;
@@ -1828,7 +2310,7 @@ message OfferRequest {
optional string recurrence = 7;
optional string recurrence_base = 8;
optional string recurrence_paywindow = 9;
- optional uint64 recurrence_limit = 10;
+ optional uint32 recurrence_limit = 10;
optional bool single_use = 11;
}
@@ -1842,62 +2324,318 @@ message OfferResponse {
optional string label = 7;
}
-message PingRequest {
- bytes id = 1;
- optional uint32 len = 2;
- optional uint32 pongbytes = 3;
+message Openchannel_abortRequest {
+ bytes channel_id = 1;
}
-message PingResponse {
- uint32 totlen = 1;
+message Openchannel_abortResponse {
+ bytes channel_id = 1;
+ bool channel_canceled = 2;
+ string reason = 3;
}
-message SendcustommsgRequest {
- bytes node_id = 1;
- bytes msg = 2;
+message Openchannel_bumpRequest {
+ bytes channel_id = 1;
+ string initialpsbt = 2;
+ optional Feerate funding_feerate = 3;
+ Amount amount = 4;
}
-message SendcustommsgResponse {
- string status = 1;
+message Openchannel_bumpResponse {
+ bytes channel_id = 1;
+ optional Openchannel_bumpChannel_type channel_type = 2;
+ string psbt = 3;
+ bool commitments_secured = 4;
+ uint64 funding_serial = 5;
+ optional bool requires_confirmed_inputs = 6;
}
-message SetchannelRequest {
- string id = 1;
- optional Amount feebase = 2;
- optional uint32 feeppm = 3;
- optional Amount htlcmin = 4;
- optional Amount htlcmax = 5;
- optional uint32 enforcedelay = 6;
- optional bool ignorefeelimits = 7;
+message Openchannel_bumpChannel_type {
+ repeated uint32 bits = 1;
+ repeated ChannelTypeName names = 2;
}
-message SetchannelResponse {
- repeated SetchannelChannels channels = 1;
+message Openchannel_initRequest {
+ bytes id = 1;
+ string initialpsbt = 2;
+ optional Feerate commitment_feerate = 3;
+ optional Feerate funding_feerate = 4;
+ optional bool announce = 5;
+ optional string close_to = 6;
+ optional Amount request_amt = 7;
+ optional bytes compact_lease = 8;
+ repeated uint32 channel_type = 9;
+ Amount amount = 10;
}
-message SetchannelChannels {
- bytes peer_id = 1;
- bytes channel_id = 2;
- optional string short_channel_id = 3;
- Amount fee_base_msat = 4;
- uint32 fee_proportional_millionths = 5;
- optional bool ignore_fee_limits = 10;
- Amount minimum_htlc_out_msat = 6;
- optional string warning_htlcmin_too_low = 7;
- Amount maximum_htlc_out_msat = 8;
- optional string warning_htlcmax_too_high = 9;
+message Openchannel_initResponse {
+ bytes channel_id = 1;
+ string psbt = 2;
+ optional Openchannel_initChannel_type channel_type = 3;
+ bool commitments_secured = 4;
+ uint64 funding_serial = 5;
+ optional bool requires_confirmed_inputs = 6;
}
-message SigninvoiceRequest {
- string invstring = 1;
+message Openchannel_initChannel_type {
+ repeated uint32 bits = 1;
+ repeated ChannelTypeName names = 2;
}
-message SigninvoiceResponse {
- string bolt11 = 1;
+message Openchannel_signedRequest {
+ bytes channel_id = 1;
+ string signed_psbt = 2;
}
-message SignmessageRequest {
- string message = 1;
+message Openchannel_signedResponse {
+ bytes channel_id = 1;
+ bytes tx = 2;
+ bytes txid = 3;
+}
+
+message Openchannel_updateRequest {
+ bytes channel_id = 1;
+ string psbt = 2;
+}
+
+message Openchannel_updateResponse {
+ bytes channel_id = 1;
+ optional Openchannel_updateChannel_type channel_type = 2;
+ string psbt = 3;
+ bool commitments_secured = 4;
+ uint32 funding_outnum = 5;
+ optional bytes close_to = 6;
+ optional bool requires_confirmed_inputs = 7;
+}
+
+message Openchannel_updateChannel_type {
+ repeated uint32 bits = 1;
+ repeated ChannelTypeName names = 2;
+}
+
+message PingRequest {
+ bytes id = 1;
+ optional uint32 len = 2;
+ optional uint32 pongbytes = 3;
+}
+
+message PingResponse {
+ uint32 totlen = 1;
+}
+
+message PluginRequest {
+ PluginSubcommand subcommand = 1;
+ optional string plugin = 2;
+ optional string directory = 3;
+ repeated string options = 4;
+}
+
+message PluginResponse {
+ PluginSubcommand command = 1;
+ repeated PluginPlugins plugins = 2;
+ optional string result = 3;
+}
+
+message PluginPlugins {
+ string name = 1;
+ bool active = 2;
+ bool dynamic = 3;
+}
+
+message RenepaystatusRequest {
+ optional string invstring = 1;
+}
+
+message RenepaystatusResponse {
+ repeated RenepaystatusPaystatus paystatus = 1;
+}
+
+message RenepaystatusPaystatus {
+ // RenePayStatus.paystatus[].status
+ enum RenepaystatusPaystatusStatus {
+ COMPLETE = 0;
+ PENDING = 1;
+ FAILED = 2;
+ }
+ string bolt11 = 1;
+ optional bytes payment_preimage = 2;
+ bytes payment_hash = 3;
+ double created_at = 4;
+ uint32 groupid = 5;
+ optional uint32 parts = 6;
+ Amount amount_msat = 7;
+ optional Amount amount_sent_msat = 8;
+ RenepaystatusPaystatusStatus status = 9;
+ optional bytes destination = 10;
+ repeated string notes = 11;
+}
+
+message RenepayRequest {
+ string invstring = 1;
+ optional Amount amount_msat = 2;
+ optional Amount maxfee = 3;
+ optional uint32 maxdelay = 4;
+ optional uint32 retry_for = 5;
+ optional string description = 6;
+ optional string label = 7;
+ optional bool dev_use_shadow = 8;
+}
+
+message RenepayResponse {
+ // RenePay.status
+ enum RenepayStatus {
+ COMPLETE = 0;
+ PENDING = 1;
+ FAILED = 2;
+ }
+ bytes payment_preimage = 1;
+ bytes payment_hash = 2;
+ double created_at = 3;
+ uint32 parts = 4;
+ Amount amount_msat = 5;
+ Amount amount_sent_msat = 6;
+ RenepayStatus status = 7;
+ optional bytes destination = 8;
+}
+
+message ReserveinputsRequest {
+ string psbt = 1;
+ optional bool exclusive = 2;
+ optional uint32 reserve = 3;
+}
+
+message ReserveinputsResponse {
+ repeated ReserveinputsReservations reservations = 1;
+}
+
+message ReserveinputsReservations {
+ bytes txid = 1;
+ uint32 vout = 2;
+ bool was_reserved = 3;
+ bool reserved = 4;
+ uint32 reserved_to_block = 5;
+}
+
+message SendcustommsgRequest {
+ bytes node_id = 1;
+ bytes msg = 2;
+}
+
+message SendcustommsgResponse {
+ string status = 1;
+}
+
+message SendinvoiceRequest {
+ string invreq = 1;
+ string label = 2;
+ optional Amount amount_msat = 3;
+ optional uint32 timeout = 4;
+ optional uint64 quantity = 5;
+}
+
+message SendinvoiceResponse {
+ // SendInvoice.status
+ enum SendinvoiceStatus {
+ UNPAID = 0;
+ PAID = 1;
+ EXPIRED = 2;
+ }
+ string label = 1;
+ string description = 2;
+ bytes payment_hash = 3;
+ SendinvoiceStatus status = 4;
+ uint64 expires_at = 5;
+ optional Amount amount_msat = 6;
+ optional string bolt12 = 7;
+ optional uint64 created_index = 8;
+ optional uint64 updated_index = 9;
+ optional uint64 pay_index = 10;
+ optional Amount amount_received_msat = 11;
+ optional uint64 paid_at = 12;
+ optional bytes payment_preimage = 13;
+}
+
+message SendonionmessageRequest {
+ bytes first_id = 1;
+ bytes blinding = 2;
+ repeated SendonionmessageHops hops = 3;
+}
+
+message SendonionmessageResponse {
+}
+
+message SendonionmessageHops {
+ bytes node = 1;
+ uint32 tlv = 2;
+}
+
+message SetchannelRequest {
+ string id = 1;
+ optional Amount feebase = 2;
+ optional uint32 feeppm = 3;
+ optional Amount htlcmin = 4;
+ optional Amount htlcmax = 5;
+ optional uint32 enforcedelay = 6;
+ optional bool ignorefeelimits = 7;
+}
+
+message SetchannelResponse {
+ repeated SetchannelChannels channels = 1;
+}
+
+message SetchannelChannels {
+ bytes peer_id = 1;
+ bytes channel_id = 2;
+ optional string short_channel_id = 3;
+ Amount fee_base_msat = 4;
+ uint32 fee_proportional_millionths = 5;
+ Amount minimum_htlc_out_msat = 6;
+ optional string warning_htlcmin_too_low = 7;
+ Amount maximum_htlc_out_msat = 8;
+ optional string warning_htlcmax_too_high = 9;
+ optional bool ignore_fee_limits = 10;
+}
+
+message SetconfigRequest {
+ string config = 1;
+ optional string val = 2;
+}
+
+message SetconfigResponse {
+ SetconfigConfig config = 1;
+}
+
+message SetconfigConfig {
+ string config = 1;
+ string source = 2;
+ optional string plugin = 3;
+ bool dynamic = 4;
+ optional bool set = 5;
+ optional string value_str = 6;
+ optional Amount value_msat = 7;
+ optional sint64 value_int = 8;
+ optional bool value_bool = 9;
+}
+
+message SetpsbtversionRequest {
+ string psbt = 1;
+ uint32 version = 2;
+}
+
+message SetpsbtversionResponse {
+ string psbt = 1;
+}
+
+message SigninvoiceRequest {
+ string invstring = 1;
+}
+
+message SigninvoiceResponse {
+ string bolt11 = 1;
+}
+
+message SignmessageRequest {
+ string message = 1;
}
message SignmessageResponse {
@@ -1906,6 +2644,68 @@ message SignmessageResponse {
string zbase = 3;
}
+message Splice_initRequest {
+ bytes channel_id = 1;
+ sint64 relative_amount = 2;
+ optional string initialpsbt = 3;
+ optional uint32 feerate_per_kw = 4;
+ optional bool force_feerate = 5;
+}
+
+message Splice_initResponse {
+ string psbt = 1;
+}
+
+message Splice_signedRequest {
+ bytes channel_id = 1;
+ string psbt = 2;
+ optional bool sign_first = 3;
+}
+
+message Splice_signedResponse {
+ bytes tx = 1;
+ bytes txid = 2;
+}
+
+message Splice_updateRequest {
+ bytes channel_id = 1;
+ string psbt = 2;
+}
+
+message Splice_updateResponse {
+ string psbt = 1;
+ bool commitments_secured = 2;
+}
+
+message UnreserveinputsRequest {
+ string psbt = 1;
+ optional uint32 reserve = 2;
+}
+
+message UnreserveinputsResponse {
+ repeated UnreserveinputsReservations reservations = 1;
+}
+
+message UnreserveinputsReservations {
+ bytes txid = 1;
+ uint32 vout = 2;
+ bool was_reserved = 3;
+ bool reserved = 4;
+ optional uint32 reserved_to_block = 5;
+}
+
+message UpgradewalletRequest {
+ optional Feerate feerate = 1;
+ optional bool reservedok = 2;
+}
+
+message UpgradewalletResponse {
+ optional uint64 upgraded_outs = 1;
+ optional string psbt = 2;
+ optional bytes tx = 3;
+ optional bytes txid = 4;
+}
+
message WaitblockheightRequest {
uint32 blockheight = 1;
optional uint32 timeout = 2;
@@ -1944,25 +2744,608 @@ message WaitResponse {
optional uint64 created = 2;
optional uint64 updated = 3;
optional uint64 deleted = 4;
+ optional WaitDetails details = 5;
+}
+
+message WaitDetails {
+ // Wait.details.status
+ enum WaitDetailsStatus {
+ UNPAID = 0;
+ PAID = 1;
+ EXPIRED = 2;
+ PENDING = 3;
+ FAILED = 4;
+ COMPLETE = 5;
+ OFFERED = 6;
+ SETTLED = 7;
+ LOCAL_FAILED = 8;
+ }
+ optional WaitDetailsStatus status = 1;
+ optional string label = 2;
+ optional string description = 3;
+ optional string bolt11 = 4;
+ optional string bolt12 = 5;
+ optional uint64 partid = 6;
+ optional uint64 groupid = 7;
+ optional bytes payment_hash = 8;
+ optional string in_channel = 9;
+ optional uint64 in_htlc_id = 10;
+ optional Amount in_msat = 11;
+ optional string out_channel = 12;
+}
+
+message ListconfigsRequest {
+ optional string config = 1;
+}
+
+message ListconfigsResponse {
+ optional ListconfigsConfigs configs = 1;
+ repeated ListconfigsPlugins plugins = 3;
+ repeated ListconfigsImportantplugins important_plugins = 4;
+ optional string conf = 5;
+ optional string lightning_dir = 6;
+ optional string network = 7;
+ optional bool allow_deprecated_apis = 8;
+ optional string rpc_file = 9;
+ repeated string disable_plugin = 10;
+ optional string bookkeeper_dir = 11;
+ optional string bookkeeper_db = 12;
+ optional bool always_use_proxy = 13;
+ optional bool daemon = 14;
+ optional string wallet = 15;
+ optional bool large_channels = 16;
+ optional bool experimental_dual_fund = 17;
+ optional bool experimental_splicing = 18;
+ optional bool experimental_onion_messages = 19;
+ optional bool experimental_offers = 20;
+ optional bool experimental_shutdown_wrong_funding = 21;
+ optional bool experimental_peer_storage = 22;
+ optional bool experimental_quiesce = 23;
+ optional bool experimental_upgrade_protocol = 24;
+ optional bool invoices_onchain_fallback = 25;
+ optional bool database_upgrade = 26;
+ optional bytes rgb = 27;
+ optional string alias = 28;
+ optional string pid_file = 29;
+ optional bool ignore_fee_limits = 30;
+ optional uint32 watchtime_blocks = 31;
+ optional uint32 max_locktime_blocks = 32;
+ optional uint32 funding_confirms = 33;
+ optional uint32 cltv_delta = 34;
+ optional uint32 cltv_final = 35;
+ optional uint32 commit_time = 36;
+ optional uint32 fee_base = 37;
+ optional sint64 rescan = 38;
+ optional uint32 fee_per_satoshi = 39;
+ optional uint32 max_concurrent_htlcs = 40;
+ optional Amount htlc_minimum_msat = 41;
+ optional Amount htlc_maximum_msat = 42;
+ optional Amount max_dust_htlc_exposure_msat = 43;
+ optional uint64 min_capacity_sat = 44;
+ optional string addr = 45;
+ optional string announce_addr = 46;
+ optional string bind_addr = 47;
+ optional bool offline = 48;
+ optional bool autolisten = 49;
+ optional string proxy = 50;
+ optional bool disable_dns = 51;
+ optional string announce_addr_discovered = 52;
+ optional sint64 announce_addr_discovered_port = 53;
+ optional bool encrypted_hsm = 54;
+ optional string rpc_file_mode = 55;
+ optional string log_level = 56;
+ optional string log_prefix = 57;
+ optional string log_file = 58;
+ optional bool log_timestamps = 59;
+ optional string force_feerates = 60;
+ optional string subdaemon = 61;
+ optional bool fetchinvoice_noconnect = 62;
+ optional string accept_htlc_tlv_types = 63;
+ optional string tor_service_password = 64;
+ optional bool dev_allowdustreserve = 65;
+ optional bool announce_addr_dns = 66;
+ optional bool require_confirmed_inputs = 67;
+ optional bool developer = 68;
+ optional uint64 commit_fee = 69;
+ optional Amount min_emergency_msat = 70;
+ optional uint32 commit_feerate_offset = 71;
+}
+
+message ListconfigsConfigs {
+ optional ListconfigsConfigsConf conf = 1;
+ optional ListconfigsConfigsDeveloper developer = 2;
+ optional ListconfigsConfigsClearplugins clear_plugins = 3;
+ optional ListconfigsConfigsDisablempp disable_mpp = 4;
+ optional ListconfigsConfigsMainnet mainnet = 5;
+ optional ListconfigsConfigsRegtest regtest = 6;
+ optional ListconfigsConfigsSignet signet = 7;
+ optional ListconfigsConfigsTestnet testnet = 8;
+ optional ListconfigsConfigsImportantplugin important_plugin = 9;
+ optional ListconfigsConfigsPlugin plugin = 10;
+ optional ListconfigsConfigsPlugindir plugin_dir = 11;
+ optional ListconfigsConfigsLightningdir lightning_dir = 12;
+ optional ListconfigsConfigsNetwork network = 13;
+ optional ListconfigsConfigsAllowdeprecatedapis allow_deprecated_apis = 14;
+ optional ListconfigsConfigsRpcfile rpc_file = 15;
+ optional ListconfigsConfigsDisableplugin disable_plugin = 16;
+ optional ListconfigsConfigsAlwaysuseproxy always_use_proxy = 17;
+ optional ListconfigsConfigsDaemon daemon = 18;
+ optional ListconfigsConfigsWallet wallet = 19;
+ optional ListconfigsConfigsLargechannels large_channels = 20;
+ optional ListconfigsConfigsExperimentaldualfund experimental_dual_fund = 21;
+ optional ListconfigsConfigsExperimentalsplicing experimental_splicing = 22;
+ optional ListconfigsConfigsExperimentalonionmessages experimental_onion_messages = 23;
+ optional ListconfigsConfigsExperimentaloffers experimental_offers = 24;
+ optional ListconfigsConfigsExperimentalshutdownwrongfunding experimental_shutdown_wrong_funding = 25;
+ optional ListconfigsConfigsExperimentalpeerstorage experimental_peer_storage = 26;
+ optional ListconfigsConfigsExperimentalanchors experimental_anchors = 27;
+ optional ListconfigsConfigsDatabaseupgrade database_upgrade = 28;
+ optional ListconfigsConfigsRgb rgb = 29;
+ optional ListconfigsConfigsAlias alias = 30;
+ optional ListconfigsConfigsPidfile pid_file = 31;
+ optional ListconfigsConfigsIgnorefeelimits ignore_fee_limits = 32;
+ optional ListconfigsConfigsWatchtimeblocks watchtime_blocks = 33;
+ optional ListconfigsConfigsMaxlocktimeblocks max_locktime_blocks = 34;
+ optional ListconfigsConfigsFundingconfirms funding_confirms = 35;
+ optional ListconfigsConfigsCltvdelta cltv_delta = 36;
+ optional ListconfigsConfigsCltvfinal cltv_final = 37;
+ optional ListconfigsConfigsCommittime commit_time = 38;
+ optional ListconfigsConfigsFeebase fee_base = 39;
+ optional ListconfigsConfigsRescan rescan = 40;
+ optional ListconfigsConfigsFeepersatoshi fee_per_satoshi = 41;
+ optional ListconfigsConfigsMaxconcurrenthtlcs max_concurrent_htlcs = 42;
+ optional ListconfigsConfigsHtlcminimummsat htlc_minimum_msat = 43;
+ optional ListconfigsConfigsHtlcmaximummsat htlc_maximum_msat = 44;
+ optional ListconfigsConfigsMaxdusthtlcexposuremsat max_dust_htlc_exposure_msat = 45;
+ optional ListconfigsConfigsMincapacitysat min_capacity_sat = 46;
+ optional ListconfigsConfigsAddr addr = 47;
+ optional ListconfigsConfigsAnnounceaddr announce_addr = 48;
+ optional ListconfigsConfigsBindaddr bind_addr = 49;
+ optional ListconfigsConfigsOffline offline = 50;
+ optional ListconfigsConfigsAutolisten autolisten = 51;
+ optional ListconfigsConfigsProxy proxy = 52;
+ optional ListconfigsConfigsDisabledns disable_dns = 53;
+ optional ListconfigsConfigsAnnounceaddrdiscovered announce_addr_discovered = 54;
+ optional ListconfigsConfigsAnnounceaddrdiscoveredport announce_addr_discovered_port = 55;
+ optional ListconfigsConfigsEncryptedhsm encrypted_hsm = 56;
+ optional ListconfigsConfigsRpcfilemode rpc_file_mode = 57;
+ optional ListconfigsConfigsLoglevel log_level = 58;
+ optional ListconfigsConfigsLogprefix log_prefix = 59;
+ optional ListconfigsConfigsLogfile log_file = 60;
+ optional ListconfigsConfigsLogtimestamps log_timestamps = 61;
+ optional ListconfigsConfigsForcefeerates force_feerates = 62;
+ optional ListconfigsConfigsSubdaemon subdaemon = 63;
+ optional ListconfigsConfigsFetchinvoicenoconnect fetchinvoice_noconnect = 64;
+ optional ListconfigsConfigsAccepthtlctlvtypes accept_htlc_tlv_types = 65;
+ optional ListconfigsConfigsTorservicepassword tor_service_password = 66;
+ optional ListconfigsConfigsAnnounceaddrdns announce_addr_dns = 67;
+ optional ListconfigsConfigsRequireconfirmedinputs require_confirmed_inputs = 68;
+ optional ListconfigsConfigsCommitfee commit_fee = 69;
+ optional ListconfigsConfigsCommitfeerateoffset commit_feerate_offset = 70;
+}
+
+message ListconfigsConfigsConf {
+ // ListConfigs.configs.conf.source
+ enum ListconfigsConfigsConfSource {
+ CMDLINE = 0;
+ }
+ string value_str = 1;
+ ListconfigsConfigsConfSource source = 2;
+}
+
+message ListconfigsConfigsDeveloper {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsClearplugins {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsDisablempp {
+ bool set = 1;
+ string source = 2;
+ optional string plugin = 3;
+}
+
+message ListconfigsConfigsMainnet {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRegtest {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsSignet {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsTestnet {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsImportantplugin {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsPlugin {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsPlugindir {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsLightningdir {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsNetwork {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAllowdeprecatedapis {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRpcfile {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsDisableplugin {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsAlwaysuseproxy {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsDaemon {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsWallet {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsLargechannels {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentaldualfund {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentalsplicing {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentalonionmessages {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentaloffers {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentalshutdownwrongfunding {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentalpeerstorage {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsExperimentalanchors {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsDatabaseupgrade {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRgb {
+ bytes value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAlias {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsPidfile {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsIgnorefeelimits {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsWatchtimeblocks {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsMaxlocktimeblocks {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsFundingconfirms {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsCltvdelta {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsCltvfinal {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsCommittime {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsFeebase {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRescan {
+ sint64 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsFeepersatoshi {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsMaxconcurrenthtlcs {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsHtlcminimummsat {
+ Amount value_msat = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsHtlcmaximummsat {
+ Amount value_msat = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsMaxdusthtlcexposuremsat {
+ Amount value_msat = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsMincapacitysat {
+ uint64 value_int = 1;
+ string source = 2;
+ optional bool dynamic = 3;
+}
+
+message ListconfigsConfigsAddr {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsAnnounceaddr {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsBindaddr {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsOffline {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAutolisten {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsProxy {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsDisabledns {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAnnounceaddrdiscovered {
+ // ListConfigs.configs.announce-addr-discovered.value_str
+ enum ListconfigsConfigsAnnounceaddrdiscoveredValue_str {
+ TRUE = 0;
+ FALSE = 1;
+ AUTO = 2;
+ }
+ ListconfigsConfigsAnnounceaddrdiscoveredValue_str value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAnnounceaddrdiscoveredport {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsEncryptedhsm {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRpcfilemode {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsLoglevel {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsLogprefix {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsLogfile {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsLogtimestamps {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsForcefeerates {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsSubdaemon {
+ repeated string values_str = 1;
+ repeated string sources = 2;
+}
+
+message ListconfigsConfigsFetchinvoicenoconnect {
+ bool set = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAccepthtlctlvtypes {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsTorservicepassword {
+ string value_str = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsAnnounceaddrdns {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsRequireconfirmedinputs {
+ bool value_bool = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsCommitfee {
+ uint64 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsConfigsCommitfeerateoffset {
+ uint32 value_int = 1;
+ string source = 2;
+}
+
+message ListconfigsPlugins {
+ string path = 1;
+ string name = 2;
+ optional ListconfigsPluginsOptions options = 3;
+}
+
+message ListconfigsPluginsOptions {
+}
+
+message ListconfigsImportantplugins {
+ string path = 1;
+ string name = 2;
+ optional ListconfigsImportantpluginsOptions options = 3;
+}
+
+message ListconfigsImportantpluginsOptions {
}
message StopRequest {
}
message StopResponse {
+ // Stop.result
+ enum StopResult {
+ SHUTDOWN_COMPLETE = 0;
+ }
+ optional StopResult result = 1;
+}
+
+message HelpRequest {
+ optional string command = 1;
+}
+
+message HelpResponse {
+ // Help.format-hint
+ enum HelpFormathint {
+ SIMPLE = 0;
+ }
+ repeated HelpHelp help = 1;
+ optional HelpFormathint format_hint = 2;
+}
+
+message HelpHelp {
+ string command = 1;
+ string category = 2;
+ string description = 3;
+ string verbose = 4;
}
message PreapprovekeysendRequest {
- optional bytes destination = 1;
- optional bytes payment_hash = 2;
- optional Amount amount_msat = 3;
+ bytes destination = 1;
+ bytes payment_hash = 2;
+ Amount amount_msat = 3;
}
message PreapprovekeysendResponse {
}
message PreapproveinvoiceRequest {
- optional string bolt11 = 1;
+ string bolt11 = 1;
}
message PreapproveinvoiceResponse {
@@ -1975,6 +3358,144 @@ message StaticbackupResponse {
repeated bytes scb = 1;
}
+message BkprchannelsapyRequest {
+ optional uint64 start_time = 1;
+ optional uint64 end_time = 2;
+}
+
+message BkprchannelsapyResponse {
+ repeated BkprchannelsapyChannels_apy channels_apy = 1;
+}
+
+message BkprchannelsapyChannels_apy {
+ string account = 1;
+ Amount routed_out_msat = 2;
+ Amount routed_in_msat = 3;
+ Amount lease_fee_paid_msat = 4;
+ Amount lease_fee_earned_msat = 5;
+ Amount pushed_out_msat = 6;
+ Amount pushed_in_msat = 7;
+ Amount our_start_balance_msat = 8;
+ Amount channel_start_balance_msat = 9;
+ Amount fees_out_msat = 10;
+ optional Amount fees_in_msat = 11;
+ string utilization_out = 12;
+ optional string utilization_out_initial = 13;
+ string utilization_in = 14;
+ optional string utilization_in_initial = 15;
+ string apy_out = 16;
+ optional string apy_out_initial = 17;
+ string apy_in = 18;
+ optional string apy_in_initial = 19;
+ string apy_total = 20;
+ optional string apy_total_initial = 21;
+ optional string apy_lease = 22;
+}
+
+message BkprdumpincomecsvRequest {
+ string csv_format = 1;
+ optional string csv_file = 2;
+ optional bool consolidate_fees = 3;
+ optional uint64 start_time = 4;
+ optional uint64 end_time = 5;
+}
+
+message BkprdumpincomecsvResponse {
+ // Bkpr-DumpIncomeCsv.csv_format
+ enum BkprdumpincomecsvCsv_format {
+ COINTRACKER = 0;
+ KOINLY = 1;
+ HARMONY = 2;
+ QUICKBOOKS = 3;
+ }
+ string csv_file = 1;
+ BkprdumpincomecsvCsv_format csv_format = 2;
+}
+
+message BkprinspectRequest {
+ string account = 1;
+}
+
+message BkprinspectResponse {
+ repeated BkprinspectTxs txs = 1;
+}
+
+message BkprinspectTxs {
+ bytes txid = 1;
+ optional uint32 blockheight = 2;
+ Amount fees_paid_msat = 3;
+ repeated BkprinspectTxsOutputs outputs = 4;
+}
+
+message BkprinspectTxsOutputs {
+ string account = 1;
+ uint32 outnum = 2;
+ Amount output_value_msat = 3;
+ string currency = 4;
+ optional Amount credit_msat = 5;
+ optional Amount debit_msat = 6;
+ optional string originating_account = 7;
+ optional string output_tag = 8;
+ optional string spend_tag = 9;
+ optional bytes spending_txid = 10;
+ optional bytes payment_id = 11;
+}
+
+message BkprlistaccounteventsRequest {
+ optional string account = 1;
+}
+
+message BkprlistaccounteventsResponse {
+ repeated BkprlistaccounteventsEvents events = 1;
+}
+
+message BkprlistaccounteventsEvents {
+ // Bkpr-ListAccountEvents.events[].type
+ enum BkprlistaccounteventsEventsType {
+ ONCHAIN_FEE = 0;
+ CHAIN = 1;
+ CHANNEL = 2;
+ }
+ string account = 1;
+ BkprlistaccounteventsEventsType item_type = 2;
+ string tag = 3;
+ Amount credit_msat = 4;
+ Amount debit_msat = 5;
+ string currency = 6;
+ uint32 timestamp = 7;
+ optional string outpoint = 8;
+ optional uint32 blockheight = 9;
+ optional string origin = 10;
+ optional bytes payment_id = 11;
+ optional bytes txid = 12;
+ optional string description = 13;
+ optional Amount fees_msat = 14;
+ optional bool is_rebalance = 15;
+ optional uint32 part_id = 16;
+}
+
+message BkprlistbalancesRequest {
+}
+
+message BkprlistbalancesResponse {
+ repeated BkprlistbalancesAccounts accounts = 1;
+}
+
+message BkprlistbalancesAccounts {
+ string account = 1;
+ repeated BkprlistbalancesAccountsBalances balances = 2;
+ optional bytes peer_id = 3;
+ optional bool we_opened = 4;
+ optional bool account_closed = 5;
+ optional bool account_resolved = 6;
+ optional uint32 resolved_at_block = 7;
+}
+
+message BkprlistbalancesAccountsBalances {
+ Amount balance_msat = 1;
+ string coin_type = 2;
+}
+
message BkprlistincomeRequest {
optional bool consolidate_fees = 1;
optional uint32 start_time = 2;
@@ -1997,3 +3518,132 @@ message BkprlistincomeIncome_events {
optional bytes txid = 9;
optional bytes payment_id = 10;
}
+
+message BlacklistruneRequest {
+ optional uint64 start = 1;
+ optional uint64 end = 2;
+}
+
+message BlacklistruneResponse {
+ repeated BlacklistruneBlacklist blacklist = 1;
+}
+
+message BlacklistruneBlacklist {
+ uint64 start = 1;
+ uint64 end = 2;
+}
+
+message CheckruneRequest {
+ string rune = 1;
+ optional string nodeid = 2;
+ optional string method = 3;
+ repeated string params = 4;
+}
+
+message CheckruneResponse {
+ bool valid = 1;
+}
+
+message CreateruneRequest {
+ optional string rune = 1;
+ repeated string restrictions = 2;
+}
+
+message CreateruneResponse {
+ string rune = 1;
+ string unique_id = 2;
+ optional string warning_unrestricted_rune = 3;
+}
+
+message ShowrunesRequest {
+ optional string rune = 1;
+}
+
+message ShowrunesResponse {
+ repeated ShowrunesRunes runes = 1;
+}
+
+message ShowrunesRunes {
+ string rune = 1;
+ string unique_id = 2;
+ repeated ShowrunesRunesRestrictions restrictions = 3;
+ string restrictions_as_english = 4;
+ optional bool stored = 5;
+ optional bool blacklisted = 6;
+ optional double last_used = 7;
+ optional bool our_rune = 8;
+}
+
+message ShowrunesRunesRestrictions {
+ repeated ShowrunesRunesRestrictionsAlternatives alternatives = 1;
+ string english = 2;
+}
+
+message ShowrunesRunesRestrictionsAlternatives {
+ string fieldname = 1;
+ string value = 2;
+ string condition = 3;
+ string english = 4;
+}
+
+message StreamBlockAddedRequest {
+}
+
+message BlockAddedNotification {
+ bytes hash = 1;
+ uint32 height = 2;
+}
+
+message StreamChannelOpenFailedRequest {
+}
+
+message ChannelOpenFailedNotification {
+ bytes channel_id = 1;
+}
+
+message StreamChannelOpenedRequest {
+}
+
+message ChannelOpenedNotification {
+ optional bytes id = 1;
+ Amount funding_msat = 2;
+ bytes funding_txid = 3;
+ bool channel_ready = 4;
+}
+
+message StreamConnectRequest {
+}
+
+message PeerConnectNotification {
+ // connect.direction
+ enum PeerConnectDirection {
+ IN = 0;
+ OUT = 1;
+ }
+ bytes id = 1;
+ PeerConnectDirection direction = 2;
+ PeerConnectAddress address = 3;
+}
+
+message PeerConnectAddress {
+ // connect.address.type
+ enum PeerConnectAddressType {
+ LOCAL_SOCKET = 0;
+ IPV4 = 1;
+ IPV6 = 2;
+ TORV2 = 3;
+ TORV3 = 4;
+ }
+ PeerConnectAddressType item_type = 1;
+ optional string socket = 2;
+ optional string address = 3;
+ optional uint32 port = 4;
+}
+
+message StreamCustomMsgRequest {
+}
+
+message CustomMsgNotification {
+ bytes peer_id = 1;
+ bytes payload = 2;
+}
diff --git a/cln/rpc/node_grpc.pb.go b/cln/rpc/node_grpc.pb.go
index 80ebb252..f3eb48be 100644
--- a/cln/rpc/node_grpc.pb.go
+++ b/cln/rpc/node_grpc.pb.go
@@ -28,7 +28,10 @@ type NodeClient interface {
SendPay(ctx context.Context, in *SendpayRequest, opts ...grpc.CallOption) (*SendpayResponse, error)
ListChannels(ctx context.Context, in *ListchannelsRequest, opts ...grpc.CallOption) (*ListchannelsResponse, error)
AddGossip(ctx context.Context, in *AddgossipRequest, opts ...grpc.CallOption) (*AddgossipResponse, error)
+ AddPsbtOutput(ctx context.Context, in *AddpsbtoutputRequest, opts ...grpc.CallOption) (*AddpsbtoutputResponse, error)
AutoCleanInvoice(ctx context.Context, in *AutocleaninvoiceRequest, opts ...grpc.CallOption) (*AutocleaninvoiceResponse, error)
+ AutoCleanOnce(ctx context.Context, in *AutocleanonceRequest, opts ...grpc.CallOption) (*AutocleanonceResponse, error)
+ AutoCleanStatus(ctx context.Context, in *AutocleanstatusRequest, opts ...grpc.CallOption) (*AutocleanstatusResponse, error)
CheckMessage(ctx context.Context, in *CheckmessageRequest, opts ...grpc.CallOption) (*CheckmessageResponse, error)
Close(ctx context.Context, in *CloseRequest, opts ...grpc.CallOption) (*CloseResponse, error)
ConnectPeer(ctx context.Context, in *ConnectRequest, opts ...grpc.CallOption) (*ConnectResponse, error)
@@ -37,14 +40,21 @@ type NodeClient interface {
DatastoreUsage(ctx context.Context, in *DatastoreusageRequest, opts ...grpc.CallOption) (*DatastoreusageResponse, error)
CreateOnion(ctx context.Context, in *CreateonionRequest, opts ...grpc.CallOption) (*CreateonionResponse, error)
DelDatastore(ctx context.Context, in *DeldatastoreRequest, opts ...grpc.CallOption) (*DeldatastoreResponse, error)
- DelExpiredInvoice(ctx context.Context, in *DelexpiredinvoiceRequest, opts ...grpc.CallOption) (*DelexpiredinvoiceResponse, error)
DelInvoice(ctx context.Context, in *DelinvoiceRequest, opts ...grpc.CallOption) (*DelinvoiceResponse, error)
+ DevForgetChannel(ctx context.Context, in *DevforgetchannelRequest, opts ...grpc.CallOption) (*DevforgetchannelResponse, error)
+ EmergencyRecover(ctx context.Context, in *EmergencyrecoverRequest, opts ...grpc.CallOption) (*EmergencyrecoverResponse, error)
+ Recover(ctx context.Context, in *RecoverRequest, opts ...grpc.CallOption) (*RecoverResponse, error)
+ RecoverChannel(ctx context.Context, in *RecoverchannelRequest, opts ...grpc.CallOption) (*RecoverchannelResponse, error)
Invoice(ctx context.Context, in *InvoiceRequest, opts ...grpc.CallOption) (*InvoiceResponse, error)
+ CreateInvoiceRequest(ctx context.Context, in *InvoicerequestRequest, opts ...grpc.CallOption) (*InvoicerequestResponse, error)
+ DisableInvoiceRequest(ctx context.Context, in *DisableinvoicerequestRequest, opts ...grpc.CallOption) (*DisableinvoicerequestResponse, error)
+ ListInvoiceRequests(ctx context.Context, in *ListinvoicerequestsRequest, opts ...grpc.CallOption) (*ListinvoicerequestsResponse, error)
ListDatastore(ctx context.Context, in *ListdatastoreRequest, opts ...grpc.CallOption) (*ListdatastoreResponse, error)
ListInvoices(ctx context.Context, in *ListinvoicesRequest, opts ...grpc.CallOption) (*ListinvoicesResponse, error)
SendOnion(ctx context.Context, in *SendonionRequest, opts ...grpc.CallOption) (*SendonionResponse, error)
ListSendPays(ctx context.Context, in *ListsendpaysRequest, opts ...grpc.CallOption) (*ListsendpaysResponse, error)
ListTransactions(ctx context.Context, in *ListtransactionsRequest, opts ...grpc.CallOption) (*ListtransactionsResponse, error)
+ MakeSecret(ctx context.Context, in *MakesecretRequest, opts ...grpc.CallOption) (*MakesecretResponse, error)
Pay(ctx context.Context, in *PayRequest, opts ...grpc.CallOption) (*PayResponse, error)
ListNodes(ctx context.Context, in *ListnodesRequest, opts ...grpc.CallOption) (*ListnodesResponse, error)
WaitAnyInvoice(ctx context.Context, in *WaitanyinvoiceRequest, opts ...grpc.CallOption) (*WaitanyinvoiceResponse, error)
@@ -64,28 +74,72 @@ type NodeClient interface {
ListClosedChannels(ctx context.Context, in *ListclosedchannelsRequest, opts ...grpc.CallOption) (*ListclosedchannelsResponse, error)
DecodePay(ctx context.Context, in *DecodepayRequest, opts ...grpc.CallOption) (*DecodepayResponse, error)
Decode(ctx context.Context, in *DecodeRequest, opts ...grpc.CallOption) (*DecodeResponse, error)
+ DelPay(ctx context.Context, in *DelpayRequest, opts ...grpc.CallOption) (*DelpayResponse, error)
+ DelForward(ctx context.Context, in *DelforwardRequest, opts ...grpc.CallOption) (*DelforwardResponse, error)
+ DisableOffer(ctx context.Context, in *DisableofferRequest, opts ...grpc.CallOption) (*DisableofferResponse, error)
Disconnect(ctx context.Context, in *DisconnectRequest, opts ...grpc.CallOption) (*DisconnectResponse, error)
Feerates(ctx context.Context, in *FeeratesRequest, opts ...grpc.CallOption) (*FeeratesResponse, error)
FetchInvoice(ctx context.Context, in *FetchinvoiceRequest, opts ...grpc.CallOption) (*FetchinvoiceResponse, error)
+ FundChannel_Cancel(ctx context.Context, in *FundchannelCancelRequest, opts ...grpc.CallOption) (*FundchannelCancelResponse, error)
+ FundChannel_Complete(ctx context.Context, in *FundchannelCompleteRequest, opts ...grpc.CallOption) (*FundchannelCompleteResponse, error)
FundChannel(ctx context.Context, in *FundchannelRequest, opts ...grpc.CallOption) (*FundchannelResponse, error)
+ FundChannel_Start(ctx context.Context, in *FundchannelStartRequest, opts ...grpc.CallOption) (*FundchannelStartResponse, error)
+ GetLog(ctx context.Context, in *GetlogRequest, opts ...grpc.CallOption) (*GetlogResponse, error)
+ FunderUpdate(ctx context.Context, in *FunderupdateRequest, opts ...grpc.CallOption) (*FunderupdateResponse, error)
GetRoute(ctx context.Context, in *GetrouteRequest, opts ...grpc.CallOption) (*GetrouteResponse, error)
ListForwards(ctx context.Context, in *ListforwardsRequest, opts ...grpc.CallOption) (*ListforwardsResponse, error)
ListOffers(ctx context.Context, in *ListoffersRequest, opts ...grpc.CallOption) (*ListoffersResponse, error)
ListPays(ctx context.Context, in *ListpaysRequest, opts ...grpc.CallOption) (*ListpaysResponse, error)
ListHtlcs(ctx context.Context, in *ListhtlcsRequest, opts ...grpc.CallOption) (*ListhtlcsResponse, error)
+ MultiFundChannel(ctx context.Context, in *MultifundchannelRequest, opts ...grpc.CallOption) (*MultifundchannelResponse, error)
+ MultiWithdraw(ctx context.Context, in *MultiwithdrawRequest, opts ...grpc.CallOption) (*MultiwithdrawResponse, error)
Offer(ctx context.Context, in *OfferRequest, opts ...grpc.CallOption) (*OfferResponse, error)
+ OpenChannel_Abort(ctx context.Context, in *OpenchannelAbortRequest, opts ...grpc.CallOption) (*OpenchannelAbortResponse, error)
+ OpenChannel_Bump(ctx context.Context, in *OpenchannelBumpRequest, opts ...grpc.CallOption) (*OpenchannelBumpResponse, error)
+ OpenChannel_Init(ctx context.Context, in *OpenchannelInitRequest, opts ...grpc.CallOption) (*OpenchannelInitResponse, error)
+ OpenChannel_Signed(ctx context.Context, in *OpenchannelSignedRequest, opts ...grpc.CallOption) (*OpenchannelSignedResponse, error)
+ OpenChannel_Update(ctx context.Context, in *OpenchannelUpdateRequest, opts ...grpc.CallOption) (*OpenchannelUpdateResponse, error)
Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*PingResponse, error)
+ Plugin(ctx context.Context, in *PluginRequest, opts ...grpc.CallOption) (*PluginResponse, error)
+ RenePayStatus(ctx context.Context, in *RenepaystatusRequest, opts ...grpc.CallOption) (*RenepaystatusResponse, error)
+ RenePay(ctx context.Context, in *RenepayRequest, opts ...grpc.CallOption) (*RenepayResponse, error)
+ ReserveInputs(ctx context.Context, in *ReserveinputsRequest, opts ...grpc.CallOption) (*ReserveinputsResponse, error)
SendCustomMsg(ctx context.Context, in *SendcustommsgRequest, opts ...grpc.CallOption) (*SendcustommsgResponse, error)
+ SendInvoice(ctx context.Context, in *SendinvoiceRequest, opts ...grpc.CallOption) (*SendinvoiceResponse, error)
+ SendOnionMessage(ctx context.Context, in *SendonionmessageRequest, opts ...grpc.CallOption) (*SendonionmessageResponse, error)
SetChannel(ctx context.Context, in *SetchannelRequest, opts ...grpc.CallOption) (*SetchannelResponse, error)
+ SetConfig(ctx context.Context, in *SetconfigRequest, opts ...grpc.CallOption) (*SetconfigResponse, error)
+ SetPsbtVersion(ctx context.Context, in *SetpsbtversionRequest, opts ...grpc.CallOption) (*SetpsbtversionResponse, error)
SignInvoice(ctx context.Context, in *SigninvoiceRequest, opts ...grpc.CallOption) (*SigninvoiceResponse, error)
SignMessage(ctx context.Context, in *SignmessageRequest, opts ...grpc.CallOption) (*SignmessageResponse, error)
+ Splice_Init(ctx context.Context, in *SpliceInitRequest, opts ...grpc.CallOption) (*SpliceInitResponse, error)
+ Splice_Signed(ctx context.Context, in *SpliceSignedRequest, opts ...grpc.CallOption) (*SpliceSignedResponse, error)
+ Splice_Update(ctx context.Context, in *SpliceUpdateRequest, opts ...grpc.CallOption) (*SpliceUpdateResponse, error)
+ UnreserveInputs(ctx context.Context, in *UnreserveinputsRequest, opts ...grpc.CallOption) (*UnreserveinputsResponse, error)
+ UpgradeWallet(ctx context.Context, in *UpgradewalletRequest, opts ...grpc.CallOption) (*UpgradewalletResponse, error)
WaitBlockHeight(ctx context.Context, in *WaitblockheightRequest, opts ...grpc.CallOption) (*WaitblockheightResponse, error)
Wait(ctx context.Context, in *WaitRequest, opts ...grpc.CallOption) (*WaitResponse, error)
+ ListConfigs(ctx context.Context, in *ListconfigsRequest, opts ...grpc.CallOption) (*ListconfigsResponse, error)
Stop(ctx context.Context, in *StopRequest, opts ...grpc.CallOption) (*StopResponse, error)
+ Help(ctx context.Context, in *HelpRequest, opts ...grpc.CallOption) (*HelpResponse, error)
PreApproveKeysend(ctx context.Context, in *PreapprovekeysendRequest, opts ...grpc.CallOption) (*PreapprovekeysendResponse, error)
PreApproveInvoice(ctx context.Context, in *PreapproveinvoiceRequest, opts ...grpc.CallOption) (*PreapproveinvoiceResponse, error)
StaticBackup(ctx context.Context, in *StaticbackupRequest, opts ...grpc.CallOption) (*StaticbackupResponse, error)
+ BkprChannelsApy(ctx context.Context, in *BkprchannelsapyRequest, opts ...grpc.CallOption) (*BkprchannelsapyResponse, error)
+ BkprDumpIncomeCsv(ctx context.Context, in *BkprdumpincomecsvRequest, opts ...grpc.CallOption) (*BkprdumpincomecsvResponse, error)
+ BkprInspect(ctx context.Context, in *BkprinspectRequest, opts ...grpc.CallOption) (*BkprinspectResponse, error)
+ BkprListAccountEvents(ctx context.Context, in *BkprlistaccounteventsRequest, opts ...grpc.CallOption) (*BkprlistaccounteventsResponse, error)
+ BkprListBalances(ctx context.Context, in *BkprlistbalancesRequest, opts ...grpc.CallOption) (*BkprlistbalancesResponse, error)
BkprListIncome(ctx context.Context, in *BkprlistincomeRequest, opts ...grpc.CallOption) (*BkprlistincomeResponse, error)
+ BlacklistRune(ctx context.Context, in *BlacklistruneRequest, opts ...grpc.CallOption) (*BlacklistruneResponse, error)
+ CheckRune(ctx context.Context, in *CheckruneRequest, opts ...grpc.CallOption) (*CheckruneResponse, error)
+ CreateRune(ctx context.Context, in *CreateruneRequest, opts ...grpc.CallOption) (*CreateruneResponse, error)
+ ShowRunes(ctx context.Context, in *ShowrunesRequest, opts ...grpc.CallOption) (*ShowrunesResponse, error)
+ SubscribeBlockAdded(ctx context.Context, in *StreamBlockAddedRequest, opts ...grpc.CallOption) (Node_SubscribeBlockAddedClient, error)
+ SubscribeChannelOpenFailed(ctx context.Context, in *StreamChannelOpenFailedRequest, opts ...grpc.CallOption) (Node_SubscribeChannelOpenFailedClient, error)
+ SubscribeChannelOpened(ctx context.Context, in *StreamChannelOpenedRequest, opts ...grpc.CallOption) (Node_SubscribeChannelOpenedClient, error)
+ SubscribeConnect(ctx context.Context, in *StreamConnectRequest, opts ...grpc.CallOption) (Node_SubscribeConnectClient, error)
+ SubscribeCustomMsg(ctx context.Context, in *StreamCustomMsgRequest, opts ...grpc.CallOption) (Node_SubscribeCustomMsgClient, error)
}
type nodeClient struct {
@@ -150,6 +204,15 @@ func (c *nodeClient) AddGossip(ctx context.Context, in *AddgossipRequest, opts .
return out, nil
}
+func (c *nodeClient) AddPsbtOutput(ctx context.Context, in *AddpsbtoutputRequest, opts ...grpc.CallOption) (*AddpsbtoutputResponse, error) {
+ out := new(AddpsbtoutputResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/AddPsbtOutput", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) AutoCleanInvoice(ctx context.Context, in *AutocleaninvoiceRequest, opts ...grpc.CallOption) (*AutocleaninvoiceResponse, error) {
out := new(AutocleaninvoiceResponse)
err := c.cc.Invoke(ctx, "/cln.Node/AutoCleanInvoice", in, out, opts...)
@@ -159,6 +222,24 @@ func (c *nodeClient) AutoCleanInvoice(ctx context.Context, in *AutocleaninvoiceR
return out, nil
}
+func (c *nodeClient) AutoCleanOnce(ctx context.Context, in *AutocleanonceRequest, opts ...grpc.CallOption) (*AutocleanonceResponse, error) {
+ out := new(AutocleanonceResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/AutoCleanOnce", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) AutoCleanStatus(ctx context.Context, in *AutocleanstatusRequest, opts ...grpc.CallOption) (*AutocleanstatusResponse, error) {
+ out := new(AutocleanstatusResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/AutoCleanStatus", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) CheckMessage(ctx context.Context, in *CheckmessageRequest, opts ...grpc.CallOption) (*CheckmessageResponse, error) {
out := new(CheckmessageResponse)
err := c.cc.Invoke(ctx, "/cln.Node/CheckMessage", in, out, opts...)
@@ -231,18 +312,45 @@ func (c *nodeClient) DelDatastore(ctx context.Context, in *DeldatastoreRequest,
return out, nil
}
-func (c *nodeClient) DelExpiredInvoice(ctx context.Context, in *DelexpiredinvoiceRequest, opts ...grpc.CallOption) (*DelexpiredinvoiceResponse, error) {
- out := new(DelexpiredinvoiceResponse)
- err := c.cc.Invoke(ctx, "/cln.Node/DelExpiredInvoice", in, out, opts...)
+func (c *nodeClient) DelInvoice(ctx context.Context, in *DelinvoiceRequest, opts ...grpc.CallOption) (*DelinvoiceResponse, error) {
+ out := new(DelinvoiceResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DelInvoice", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
-func (c *nodeClient) DelInvoice(ctx context.Context, in *DelinvoiceRequest, opts ...grpc.CallOption) (*DelinvoiceResponse, error) {
- out := new(DelinvoiceResponse)
- err := c.cc.Invoke(ctx, "/cln.Node/DelInvoice", in, out, opts...)
+func (c *nodeClient) DevForgetChannel(ctx context.Context, in *DevforgetchannelRequest, opts ...grpc.CallOption) (*DevforgetchannelResponse, error) {
+ out := new(DevforgetchannelResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DevForgetChannel", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) EmergencyRecover(ctx context.Context, in *EmergencyrecoverRequest, opts ...grpc.CallOption) (*EmergencyrecoverResponse, error) {
+ out := new(EmergencyrecoverResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/EmergencyRecover", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) Recover(ctx context.Context, in *RecoverRequest, opts ...grpc.CallOption) (*RecoverResponse, error) {
+ out := new(RecoverResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Recover", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) RecoverChannel(ctx context.Context, in *RecoverchannelRequest, opts ...grpc.CallOption) (*RecoverchannelResponse, error) {
+ out := new(RecoverchannelResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/RecoverChannel", in, out, opts...)
if err != nil {
return nil, err
}
@@ -258,6 +366,33 @@ func (c *nodeClient) Invoice(ctx context.Context, in *InvoiceRequest, opts ...gr
return out, nil
}
+func (c *nodeClient) CreateInvoiceRequest(ctx context.Context, in *InvoicerequestRequest, opts ...grpc.CallOption) (*InvoicerequestResponse, error) {
+ out := new(InvoicerequestResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/CreateInvoiceRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) DisableInvoiceRequest(ctx context.Context, in *DisableinvoicerequestRequest, opts ...grpc.CallOption) (*DisableinvoicerequestResponse, error) {
+ out := new(DisableinvoicerequestResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DisableInvoiceRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) ListInvoiceRequests(ctx context.Context, in *ListinvoicerequestsRequest, opts ...grpc.CallOption) (*ListinvoicerequestsResponse, error) {
+ out := new(ListinvoicerequestsResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/ListInvoiceRequests", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) ListDatastore(ctx context.Context, in *ListdatastoreRequest, opts ...grpc.CallOption) (*ListdatastoreResponse, error) {
out := new(ListdatastoreResponse)
err := c.cc.Invoke(ctx, "/cln.Node/ListDatastore", in, out, opts...)
@@ -303,6 +438,15 @@ func (c *nodeClient) ListTransactions(ctx context.Context, in *ListtransactionsR
return out, nil
}
+func (c *nodeClient) MakeSecret(ctx context.Context, in *MakesecretRequest, opts ...grpc.CallOption) (*MakesecretResponse, error) {
+ out := new(MakesecretResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/MakeSecret", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) Pay(ctx context.Context, in *PayRequest, opts ...grpc.CallOption) (*PayResponse, error) {
out := new(PayResponse)
err := c.cc.Invoke(ctx, "/cln.Node/Pay", in, out, opts...)
@@ -474,6 +618,33 @@ func (c *nodeClient) Decode(ctx context.Context, in *DecodeRequest, opts ...grpc
return out, nil
}
+func (c *nodeClient) DelPay(ctx context.Context, in *DelpayRequest, opts ...grpc.CallOption) (*DelpayResponse, error) {
+ out := new(DelpayResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DelPay", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) DelForward(ctx context.Context, in *DelforwardRequest, opts ...grpc.CallOption) (*DelforwardResponse, error) {
+ out := new(DelforwardResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DelForward", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) DisableOffer(ctx context.Context, in *DisableofferRequest, opts ...grpc.CallOption) (*DisableofferResponse, error) {
+ out := new(DisableofferResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/DisableOffer", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) Disconnect(ctx context.Context, in *DisconnectRequest, opts ...grpc.CallOption) (*DisconnectResponse, error) {
out := new(DisconnectResponse)
err := c.cc.Invoke(ctx, "/cln.Node/Disconnect", in, out, opts...)
@@ -501,6 +672,24 @@ func (c *nodeClient) FetchInvoice(ctx context.Context, in *FetchinvoiceRequest,
return out, nil
}
+func (c *nodeClient) FundChannel_Cancel(ctx context.Context, in *FundchannelCancelRequest, opts ...grpc.CallOption) (*FundchannelCancelResponse, error) {
+ out := new(FundchannelCancelResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/FundChannel_Cancel", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) FundChannel_Complete(ctx context.Context, in *FundchannelCompleteRequest, opts ...grpc.CallOption) (*FundchannelCompleteResponse, error) {
+ out := new(FundchannelCompleteResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/FundChannel_Complete", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) FundChannel(ctx context.Context, in *FundchannelRequest, opts ...grpc.CallOption) (*FundchannelResponse, error) {
out := new(FundchannelResponse)
err := c.cc.Invoke(ctx, "/cln.Node/FundChannel", in, out, opts...)
@@ -510,6 +699,33 @@ func (c *nodeClient) FundChannel(ctx context.Context, in *FundchannelRequest, op
return out, nil
}
+func (c *nodeClient) FundChannel_Start(ctx context.Context, in *FundchannelStartRequest, opts ...grpc.CallOption) (*FundchannelStartResponse, error) {
+ out := new(FundchannelStartResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/FundChannel_Start", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) GetLog(ctx context.Context, in *GetlogRequest, opts ...grpc.CallOption) (*GetlogResponse, error) {
+ out := new(GetlogResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/GetLog", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) FunderUpdate(ctx context.Context, in *FunderupdateRequest, opts ...grpc.CallOption) (*FunderupdateResponse, error) {
+ out := new(FunderupdateResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/FunderUpdate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) GetRoute(ctx context.Context, in *GetrouteRequest, opts ...grpc.CallOption) (*GetrouteResponse, error) {
out := new(GetrouteResponse)
err := c.cc.Invoke(ctx, "/cln.Node/GetRoute", in, out, opts...)
@@ -555,6 +771,24 @@ func (c *nodeClient) ListHtlcs(ctx context.Context, in *ListhtlcsRequest, opts .
return out, nil
}
+func (c *nodeClient) MultiFundChannel(ctx context.Context, in *MultifundchannelRequest, opts ...grpc.CallOption) (*MultifundchannelResponse, error) {
+ out := new(MultifundchannelResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/MultiFundChannel", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) MultiWithdraw(ctx context.Context, in *MultiwithdrawRequest, opts ...grpc.CallOption) (*MultiwithdrawResponse, error) {
+ out := new(MultiwithdrawResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/MultiWithdraw", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) Offer(ctx context.Context, in *OfferRequest, opts ...grpc.CallOption) (*OfferResponse, error) {
out := new(OfferResponse)
err := c.cc.Invoke(ctx, "/cln.Node/Offer", in, out, opts...)
@@ -564,6 +798,51 @@ func (c *nodeClient) Offer(ctx context.Context, in *OfferRequest, opts ...grpc.C
return out, nil
}
+func (c *nodeClient) OpenChannel_Abort(ctx context.Context, in *OpenchannelAbortRequest, opts ...grpc.CallOption) (*OpenchannelAbortResponse, error) {
+ out := new(OpenchannelAbortResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/OpenChannel_Abort", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) OpenChannel_Bump(ctx context.Context, in *OpenchannelBumpRequest, opts ...grpc.CallOption) (*OpenchannelBumpResponse, error) {
+ out := new(OpenchannelBumpResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/OpenChannel_Bump", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) OpenChannel_Init(ctx context.Context, in *OpenchannelInitRequest, opts ...grpc.CallOption) (*OpenchannelInitResponse, error) {
+ out := new(OpenchannelInitResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/OpenChannel_Init", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) OpenChannel_Signed(ctx context.Context, in *OpenchannelSignedRequest, opts ...grpc.CallOption) (*OpenchannelSignedResponse, error) {
+ out := new(OpenchannelSignedResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/OpenChannel_Signed", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) OpenChannel_Update(ctx context.Context, in *OpenchannelUpdateRequest, opts ...grpc.CallOption) (*OpenchannelUpdateResponse, error) {
+ out := new(OpenchannelUpdateResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/OpenChannel_Update", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*PingResponse, error) {
out := new(PingResponse)
err := c.cc.Invoke(ctx, "/cln.Node/Ping", in, out, opts...)
@@ -573,6 +852,42 @@ func (c *nodeClient) Ping(ctx context.Context, in *PingRequest, opts ...grpc.Cal
return out, nil
}
+func (c *nodeClient) Plugin(ctx context.Context, in *PluginRequest, opts ...grpc.CallOption) (*PluginResponse, error) {
+ out := new(PluginResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Plugin", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) RenePayStatus(ctx context.Context, in *RenepaystatusRequest, opts ...grpc.CallOption) (*RenepaystatusResponse, error) {
+ out := new(RenepaystatusResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/RenePayStatus", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) RenePay(ctx context.Context, in *RenepayRequest, opts ...grpc.CallOption) (*RenepayResponse, error) {
+ out := new(RenepayResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/RenePay", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) ReserveInputs(ctx context.Context, in *ReserveinputsRequest, opts ...grpc.CallOption) (*ReserveinputsResponse, error) {
+ out := new(ReserveinputsResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/ReserveInputs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) SendCustomMsg(ctx context.Context, in *SendcustommsgRequest, opts ...grpc.CallOption) (*SendcustommsgResponse, error) {
out := new(SendcustommsgResponse)
err := c.cc.Invoke(ctx, "/cln.Node/SendCustomMsg", in, out, opts...)
@@ -582,6 +897,24 @@ func (c *nodeClient) SendCustomMsg(ctx context.Context, in *SendcustommsgRequest
return out, nil
}
+func (c *nodeClient) SendInvoice(ctx context.Context, in *SendinvoiceRequest, opts ...grpc.CallOption) (*SendinvoiceResponse, error) {
+ out := new(SendinvoiceResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/SendInvoice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) SendOnionMessage(ctx context.Context, in *SendonionmessageRequest, opts ...grpc.CallOption) (*SendonionmessageResponse, error) {
+ out := new(SendonionmessageResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/SendOnionMessage", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) SetChannel(ctx context.Context, in *SetchannelRequest, opts ...grpc.CallOption) (*SetchannelResponse, error) {
out := new(SetchannelResponse)
err := c.cc.Invoke(ctx, "/cln.Node/SetChannel", in, out, opts...)
@@ -591,6 +924,24 @@ func (c *nodeClient) SetChannel(ctx context.Context, in *SetchannelRequest, opts
return out, nil
}
+func (c *nodeClient) SetConfig(ctx context.Context, in *SetconfigRequest, opts ...grpc.CallOption) (*SetconfigResponse, error) {
+ out := new(SetconfigResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/SetConfig", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) SetPsbtVersion(ctx context.Context, in *SetpsbtversionRequest, opts ...grpc.CallOption) (*SetpsbtversionResponse, error) {
+ out := new(SetpsbtversionResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/SetPsbtVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) SignInvoice(ctx context.Context, in *SigninvoiceRequest, opts ...grpc.CallOption) (*SigninvoiceResponse, error) {
out := new(SigninvoiceResponse)
err := c.cc.Invoke(ctx, "/cln.Node/SignInvoice", in, out, opts...)
@@ -609,6 +960,51 @@ func (c *nodeClient) SignMessage(ctx context.Context, in *SignmessageRequest, op
return out, nil
}
+func (c *nodeClient) Splice_Init(ctx context.Context, in *SpliceInitRequest, opts ...grpc.CallOption) (*SpliceInitResponse, error) {
+ out := new(SpliceInitResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Splice_Init", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) Splice_Signed(ctx context.Context, in *SpliceSignedRequest, opts ...grpc.CallOption) (*SpliceSignedResponse, error) {
+ out := new(SpliceSignedResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Splice_Signed", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) Splice_Update(ctx context.Context, in *SpliceUpdateRequest, opts ...grpc.CallOption) (*SpliceUpdateResponse, error) {
+ out := new(SpliceUpdateResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Splice_Update", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) UnreserveInputs(ctx context.Context, in *UnreserveinputsRequest, opts ...grpc.CallOption) (*UnreserveinputsResponse, error) {
+ out := new(UnreserveinputsResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/UnreserveInputs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) UpgradeWallet(ctx context.Context, in *UpgradewalletRequest, opts ...grpc.CallOption) (*UpgradewalletResponse, error) {
+ out := new(UpgradewalletResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/UpgradeWallet", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) WaitBlockHeight(ctx context.Context, in *WaitblockheightRequest, opts ...grpc.CallOption) (*WaitblockheightResponse, error) {
out := new(WaitblockheightResponse)
err := c.cc.Invoke(ctx, "/cln.Node/WaitBlockHeight", in, out, opts...)
@@ -627,6 +1023,15 @@ func (c *nodeClient) Wait(ctx context.Context, in *WaitRequest, opts ...grpc.Cal
return out, nil
}
+func (c *nodeClient) ListConfigs(ctx context.Context, in *ListconfigsRequest, opts ...grpc.CallOption) (*ListconfigsResponse, error) {
+ out := new(ListconfigsResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/ListConfigs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) Stop(ctx context.Context, in *StopRequest, opts ...grpc.CallOption) (*StopResponse, error) {
out := new(StopResponse)
err := c.cc.Invoke(ctx, "/cln.Node/Stop", in, out, opts...)
@@ -636,6 +1041,15 @@ func (c *nodeClient) Stop(ctx context.Context, in *StopRequest, opts ...grpc.Cal
return out, nil
}
+func (c *nodeClient) Help(ctx context.Context, in *HelpRequest, opts ...grpc.CallOption) (*HelpResponse, error) {
+ out := new(HelpResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/Help", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *nodeClient) PreApproveKeysend(ctx context.Context, in *PreapprovekeysendRequest, opts ...grpc.CallOption) (*PreapprovekeysendResponse, error) {
out := new(PreapprovekeysendResponse)
err := c.cc.Invoke(ctx, "/cln.Node/PreApproveKeysend", in, out, opts...)
@@ -663,26 +1077,270 @@ func (c *nodeClient) StaticBackup(ctx context.Context, in *StaticbackupRequest,
return out, nil
}
-func (c *nodeClient) BkprListIncome(ctx context.Context, in *BkprlistincomeRequest, opts ...grpc.CallOption) (*BkprlistincomeResponse, error) {
- out := new(BkprlistincomeResponse)
- err := c.cc.Invoke(ctx, "/cln.Node/BkprListIncome", in, out, opts...)
+func (c *nodeClient) BkprChannelsApy(ctx context.Context, in *BkprchannelsapyRequest, opts ...grpc.CallOption) (*BkprchannelsapyResponse, error) {
+ out := new(BkprchannelsapyResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprChannelsApy", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
-// NodeServer is the server API for Node service.
-// All implementations must embed UnimplementedNodeServer
-// for forward compatibility
-type NodeServer interface {
- Getinfo(context.Context, *GetinfoRequest) (*GetinfoResponse, error)
- ListPeers(context.Context, *ListpeersRequest) (*ListpeersResponse, error)
- ListFunds(context.Context, *ListfundsRequest) (*ListfundsResponse, error)
+func (c *nodeClient) BkprDumpIncomeCsv(ctx context.Context, in *BkprdumpincomecsvRequest, opts ...grpc.CallOption) (*BkprdumpincomecsvResponse, error) {
+ out := new(BkprdumpincomecsvResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprDumpIncomeCsv", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) BkprInspect(ctx context.Context, in *BkprinspectRequest, opts ...grpc.CallOption) (*BkprinspectResponse, error) {
+ out := new(BkprinspectResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprInspect", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) BkprListAccountEvents(ctx context.Context, in *BkprlistaccounteventsRequest, opts ...grpc.CallOption) (*BkprlistaccounteventsResponse, error) {
+ out := new(BkprlistaccounteventsResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprListAccountEvents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) BkprListBalances(ctx context.Context, in *BkprlistbalancesRequest, opts ...grpc.CallOption) (*BkprlistbalancesResponse, error) {
+ out := new(BkprlistbalancesResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprListBalances", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) BkprListIncome(ctx context.Context, in *BkprlistincomeRequest, opts ...grpc.CallOption) (*BkprlistincomeResponse, error) {
+ out := new(BkprlistincomeResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BkprListIncome", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) BlacklistRune(ctx context.Context, in *BlacklistruneRequest, opts ...grpc.CallOption) (*BlacklistruneResponse, error) {
+ out := new(BlacklistruneResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/BlacklistRune", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) CheckRune(ctx context.Context, in *CheckruneRequest, opts ...grpc.CallOption) (*CheckruneResponse, error) {
+ out := new(CheckruneResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/CheckRune", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) CreateRune(ctx context.Context, in *CreateruneRequest, opts ...grpc.CallOption) (*CreateruneResponse, error) {
+ out := new(CreateruneResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/CreateRune", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) ShowRunes(ctx context.Context, in *ShowrunesRequest, opts ...grpc.CallOption) (*ShowrunesResponse, error) {
+ out := new(ShowrunesResponse)
+ err := c.cc.Invoke(ctx, "/cln.Node/ShowRunes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *nodeClient) SubscribeBlockAdded(ctx context.Context, in *StreamBlockAddedRequest, opts ...grpc.CallOption) (Node_SubscribeBlockAddedClient, error) {
+ stream, err := c.cc.NewStream(ctx, &Node_ServiceDesc.Streams[0], "/cln.Node/SubscribeBlockAdded", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &nodeSubscribeBlockAddedClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type Node_SubscribeBlockAddedClient interface {
+ Recv() (*BlockAddedNotification, error)
+ grpc.ClientStream
+}
+
+type nodeSubscribeBlockAddedClient struct {
+ grpc.ClientStream
+}
+
+func (x *nodeSubscribeBlockAddedClient) Recv() (*BlockAddedNotification, error) {
+ m := new(BlockAddedNotification)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *nodeClient) SubscribeChannelOpenFailed(ctx context.Context, in *StreamChannelOpenFailedRequest, opts ...grpc.CallOption) (Node_SubscribeChannelOpenFailedClient, error) {
+ stream, err := c.cc.NewStream(ctx, &Node_ServiceDesc.Streams[1], "/cln.Node/SubscribeChannelOpenFailed", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &nodeSubscribeChannelOpenFailedClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type Node_SubscribeChannelOpenFailedClient interface {
+ Recv() (*ChannelOpenFailedNotification, error)
+ grpc.ClientStream
+}
+
+type nodeSubscribeChannelOpenFailedClient struct {
+ grpc.ClientStream
+}
+
+func (x *nodeSubscribeChannelOpenFailedClient) Recv() (*ChannelOpenFailedNotification, error) {
+ m := new(ChannelOpenFailedNotification)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *nodeClient) SubscribeChannelOpened(ctx context.Context, in *StreamChannelOpenedRequest, opts ...grpc.CallOption) (Node_SubscribeChannelOpenedClient, error) {
+ stream, err := c.cc.NewStream(ctx, &Node_ServiceDesc.Streams[2], "/cln.Node/SubscribeChannelOpened", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &nodeSubscribeChannelOpenedClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type Node_SubscribeChannelOpenedClient interface {
+ Recv() (*ChannelOpenedNotification, error)
+ grpc.ClientStream
+}
+
+type nodeSubscribeChannelOpenedClient struct {
+ grpc.ClientStream
+}
+
+func (x *nodeSubscribeChannelOpenedClient) Recv() (*ChannelOpenedNotification, error) {
+ m := new(ChannelOpenedNotification)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *nodeClient) SubscribeConnect(ctx context.Context, in *StreamConnectRequest, opts ...grpc.CallOption) (Node_SubscribeConnectClient, error) {
+ stream, err := c.cc.NewStream(ctx, &Node_ServiceDesc.Streams[3], "/cln.Node/SubscribeConnect", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &nodeSubscribeConnectClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type Node_SubscribeConnectClient interface {
+ Recv() (*PeerConnectNotification, error)
+ grpc.ClientStream
+}
+
+type nodeSubscribeConnectClient struct {
+ grpc.ClientStream
+}
+
+func (x *nodeSubscribeConnectClient) Recv() (*PeerConnectNotification, error) {
+ m := new(PeerConnectNotification)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *nodeClient) SubscribeCustomMsg(ctx context.Context, in *StreamCustomMsgRequest, opts ...grpc.CallOption) (Node_SubscribeCustomMsgClient, error) {
+ stream, err := c.cc.NewStream(ctx, &Node_ServiceDesc.Streams[4], "/cln.Node/SubscribeCustomMsg", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &nodeSubscribeCustomMsgClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type Node_SubscribeCustomMsgClient interface {
+ Recv() (*CustomMsgNotification, error)
+ grpc.ClientStream
+}
+
+type nodeSubscribeCustomMsgClient struct {
+ grpc.ClientStream
+}
+
+func (x *nodeSubscribeCustomMsgClient) Recv() (*CustomMsgNotification, error) {
+ m := new(CustomMsgNotification)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+// NodeServer is the server API for Node service.
+// All implementations must embed UnimplementedNodeServer
+// for forward compatibility
+type NodeServer interface {
+ Getinfo(context.Context, *GetinfoRequest) (*GetinfoResponse, error)
+ ListPeers(context.Context, *ListpeersRequest) (*ListpeersResponse, error)
+ ListFunds(context.Context, *ListfundsRequest) (*ListfundsResponse, error)
SendPay(context.Context, *SendpayRequest) (*SendpayResponse, error)
ListChannels(context.Context, *ListchannelsRequest) (*ListchannelsResponse, error)
AddGossip(context.Context, *AddgossipRequest) (*AddgossipResponse, error)
+ AddPsbtOutput(context.Context, *AddpsbtoutputRequest) (*AddpsbtoutputResponse, error)
AutoCleanInvoice(context.Context, *AutocleaninvoiceRequest) (*AutocleaninvoiceResponse, error)
+ AutoCleanOnce(context.Context, *AutocleanonceRequest) (*AutocleanonceResponse, error)
+ AutoCleanStatus(context.Context, *AutocleanstatusRequest) (*AutocleanstatusResponse, error)
CheckMessage(context.Context, *CheckmessageRequest) (*CheckmessageResponse, error)
Close(context.Context, *CloseRequest) (*CloseResponse, error)
ConnectPeer(context.Context, *ConnectRequest) (*ConnectResponse, error)
@@ -691,14 +1349,21 @@ type NodeServer interface {
DatastoreUsage(context.Context, *DatastoreusageRequest) (*DatastoreusageResponse, error)
CreateOnion(context.Context, *CreateonionRequest) (*CreateonionResponse, error)
DelDatastore(context.Context, *DeldatastoreRequest) (*DeldatastoreResponse, error)
- DelExpiredInvoice(context.Context, *DelexpiredinvoiceRequest) (*DelexpiredinvoiceResponse, error)
DelInvoice(context.Context, *DelinvoiceRequest) (*DelinvoiceResponse, error)
+ DevForgetChannel(context.Context, *DevforgetchannelRequest) (*DevforgetchannelResponse, error)
+ EmergencyRecover(context.Context, *EmergencyrecoverRequest) (*EmergencyrecoverResponse, error)
+ Recover(context.Context, *RecoverRequest) (*RecoverResponse, error)
+ RecoverChannel(context.Context, *RecoverchannelRequest) (*RecoverchannelResponse, error)
Invoice(context.Context, *InvoiceRequest) (*InvoiceResponse, error)
+ CreateInvoiceRequest(context.Context, *InvoicerequestRequest) (*InvoicerequestResponse, error)
+ DisableInvoiceRequest(context.Context, *DisableinvoicerequestRequest) (*DisableinvoicerequestResponse, error)
+ ListInvoiceRequests(context.Context, *ListinvoicerequestsRequest) (*ListinvoicerequestsResponse, error)
ListDatastore(context.Context, *ListdatastoreRequest) (*ListdatastoreResponse, error)
ListInvoices(context.Context, *ListinvoicesRequest) (*ListinvoicesResponse, error)
SendOnion(context.Context, *SendonionRequest) (*SendonionResponse, error)
ListSendPays(context.Context, *ListsendpaysRequest) (*ListsendpaysResponse, error)
ListTransactions(context.Context, *ListtransactionsRequest) (*ListtransactionsResponse, error)
+ MakeSecret(context.Context, *MakesecretRequest) (*MakesecretResponse, error)
Pay(context.Context, *PayRequest) (*PayResponse, error)
ListNodes(context.Context, *ListnodesRequest) (*ListnodesResponse, error)
WaitAnyInvoice(context.Context, *WaitanyinvoiceRequest) (*WaitanyinvoiceResponse, error)
@@ -718,28 +1383,72 @@ type NodeServer interface {
ListClosedChannels(context.Context, *ListclosedchannelsRequest) (*ListclosedchannelsResponse, error)
DecodePay(context.Context, *DecodepayRequest) (*DecodepayResponse, error)
Decode(context.Context, *DecodeRequest) (*DecodeResponse, error)
+ DelPay(context.Context, *DelpayRequest) (*DelpayResponse, error)
+ DelForward(context.Context, *DelforwardRequest) (*DelforwardResponse, error)
+ DisableOffer(context.Context, *DisableofferRequest) (*DisableofferResponse, error)
Disconnect(context.Context, *DisconnectRequest) (*DisconnectResponse, error)
Feerates(context.Context, *FeeratesRequest) (*FeeratesResponse, error)
FetchInvoice(context.Context, *FetchinvoiceRequest) (*FetchinvoiceResponse, error)
+ FundChannel_Cancel(context.Context, *FundchannelCancelRequest) (*FundchannelCancelResponse, error)
+ FundChannel_Complete(context.Context, *FundchannelCompleteRequest) (*FundchannelCompleteResponse, error)
FundChannel(context.Context, *FundchannelRequest) (*FundchannelResponse, error)
+ FundChannel_Start(context.Context, *FundchannelStartRequest) (*FundchannelStartResponse, error)
+ GetLog(context.Context, *GetlogRequest) (*GetlogResponse, error)
+ FunderUpdate(context.Context, *FunderupdateRequest) (*FunderupdateResponse, error)
GetRoute(context.Context, *GetrouteRequest) (*GetrouteResponse, error)
ListForwards(context.Context, *ListforwardsRequest) (*ListforwardsResponse, error)
ListOffers(context.Context, *ListoffersRequest) (*ListoffersResponse, error)
ListPays(context.Context, *ListpaysRequest) (*ListpaysResponse, error)
ListHtlcs(context.Context, *ListhtlcsRequest) (*ListhtlcsResponse, error)
+ MultiFundChannel(context.Context, *MultifundchannelRequest) (*MultifundchannelResponse, error)
+ MultiWithdraw(context.Context, *MultiwithdrawRequest) (*MultiwithdrawResponse, error)
Offer(context.Context, *OfferRequest) (*OfferResponse, error)
+ OpenChannel_Abort(context.Context, *OpenchannelAbortRequest) (*OpenchannelAbortResponse, error)
+ OpenChannel_Bump(context.Context, *OpenchannelBumpRequest) (*OpenchannelBumpResponse, error)
+ OpenChannel_Init(context.Context, *OpenchannelInitRequest) (*OpenchannelInitResponse, error)
+ OpenChannel_Signed(context.Context, *OpenchannelSignedRequest) (*OpenchannelSignedResponse, error)
+ OpenChannel_Update(context.Context, *OpenchannelUpdateRequest) (*OpenchannelUpdateResponse, error)
Ping(context.Context, *PingRequest) (*PingResponse, error)
+ Plugin(context.Context, *PluginRequest) (*PluginResponse, error)
+ RenePayStatus(context.Context, *RenepaystatusRequest) (*RenepaystatusResponse, error)
+ RenePay(context.Context, *RenepayRequest) (*RenepayResponse, error)
+ ReserveInputs(context.Context, *ReserveinputsRequest) (*ReserveinputsResponse, error)
SendCustomMsg(context.Context, *SendcustommsgRequest) (*SendcustommsgResponse, error)
+ SendInvoice(context.Context, *SendinvoiceRequest) (*SendinvoiceResponse, error)
+ SendOnionMessage(context.Context, *SendonionmessageRequest) (*SendonionmessageResponse, error)
SetChannel(context.Context, *SetchannelRequest) (*SetchannelResponse, error)
+ SetConfig(context.Context, *SetconfigRequest) (*SetconfigResponse, error)
+ SetPsbtVersion(context.Context, *SetpsbtversionRequest) (*SetpsbtversionResponse, error)
SignInvoice(context.Context, *SigninvoiceRequest) (*SigninvoiceResponse, error)
SignMessage(context.Context, *SignmessageRequest) (*SignmessageResponse, error)
+ Splice_Init(context.Context, *SpliceInitRequest) (*SpliceInitResponse, error)
+ Splice_Signed(context.Context, *SpliceSignedRequest) (*SpliceSignedResponse, error)
+ Splice_Update(context.Context, *SpliceUpdateRequest) (*SpliceUpdateResponse, error)
+ UnreserveInputs(context.Context, *UnreserveinputsRequest) (*UnreserveinputsResponse, error)
+ UpgradeWallet(context.Context, *UpgradewalletRequest) (*UpgradewalletResponse, error)
WaitBlockHeight(context.Context, *WaitblockheightRequest) (*WaitblockheightResponse, error)
Wait(context.Context, *WaitRequest) (*WaitResponse, error)
+ ListConfigs(context.Context, *ListconfigsRequest) (*ListconfigsResponse, error)
Stop(context.Context, *StopRequest) (*StopResponse, error)
+ Help(context.Context, *HelpRequest) (*HelpResponse, error)
PreApproveKeysend(context.Context, *PreapprovekeysendRequest) (*PreapprovekeysendResponse, error)
PreApproveInvoice(context.Context, *PreapproveinvoiceRequest) (*PreapproveinvoiceResponse, error)
StaticBackup(context.Context, *StaticbackupRequest) (*StaticbackupResponse, error)
+ BkprChannelsApy(context.Context, *BkprchannelsapyRequest) (*BkprchannelsapyResponse, error)
+ BkprDumpIncomeCsv(context.Context, *BkprdumpincomecsvRequest) (*BkprdumpincomecsvResponse, error)
+ BkprInspect(context.Context, *BkprinspectRequest) (*BkprinspectResponse, error)
+ BkprListAccountEvents(context.Context, *BkprlistaccounteventsRequest) (*BkprlistaccounteventsResponse, error)
+ BkprListBalances(context.Context, *BkprlistbalancesRequest) (*BkprlistbalancesResponse, error)
BkprListIncome(context.Context, *BkprlistincomeRequest) (*BkprlistincomeResponse, error)
+ BlacklistRune(context.Context, *BlacklistruneRequest) (*BlacklistruneResponse, error)
+ CheckRune(context.Context, *CheckruneRequest) (*CheckruneResponse, error)
+ CreateRune(context.Context, *CreateruneRequest) (*CreateruneResponse, error)
+ ShowRunes(context.Context, *ShowrunesRequest) (*ShowrunesResponse, error)
+ SubscribeBlockAdded(*StreamBlockAddedRequest, Node_SubscribeBlockAddedServer) error
+ SubscribeChannelOpenFailed(*StreamChannelOpenFailedRequest, Node_SubscribeChannelOpenFailedServer) error
+ SubscribeChannelOpened(*StreamChannelOpenedRequest, Node_SubscribeChannelOpenedServer) error
+ SubscribeConnect(*StreamConnectRequest, Node_SubscribeConnectServer) error
+ SubscribeCustomMsg(*StreamCustomMsgRequest, Node_SubscribeCustomMsgServer) error
mustEmbedUnimplementedNodeServer()
}
@@ -765,9 +1474,18 @@ func (UnimplementedNodeServer) ListChannels(context.Context, *ListchannelsReques
func (UnimplementedNodeServer) AddGossip(context.Context, *AddgossipRequest) (*AddgossipResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method AddGossip not implemented")
}
+func (UnimplementedNodeServer) AddPsbtOutput(context.Context, *AddpsbtoutputRequest) (*AddpsbtoutputResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method AddPsbtOutput not implemented")
+}
func (UnimplementedNodeServer) AutoCleanInvoice(context.Context, *AutocleaninvoiceRequest) (*AutocleaninvoiceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method AutoCleanInvoice not implemented")
}
+func (UnimplementedNodeServer) AutoCleanOnce(context.Context, *AutocleanonceRequest) (*AutocleanonceResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method AutoCleanOnce not implemented")
+}
+func (UnimplementedNodeServer) AutoCleanStatus(context.Context, *AutocleanstatusRequest) (*AutocleanstatusResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method AutoCleanStatus not implemented")
+}
func (UnimplementedNodeServer) CheckMessage(context.Context, *CheckmessageRequest) (*CheckmessageResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CheckMessage not implemented")
}
@@ -792,15 +1510,33 @@ func (UnimplementedNodeServer) CreateOnion(context.Context, *CreateonionRequest)
func (UnimplementedNodeServer) DelDatastore(context.Context, *DeldatastoreRequest) (*DeldatastoreResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method DelDatastore not implemented")
}
-func (UnimplementedNodeServer) DelExpiredInvoice(context.Context, *DelexpiredinvoiceRequest) (*DelexpiredinvoiceResponse, error) {
- return nil, status.Errorf(codes.Unimplemented, "method DelExpiredInvoice not implemented")
-}
func (UnimplementedNodeServer) DelInvoice(context.Context, *DelinvoiceRequest) (*DelinvoiceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method DelInvoice not implemented")
}
+func (UnimplementedNodeServer) DevForgetChannel(context.Context, *DevforgetchannelRequest) (*DevforgetchannelResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DevForgetChannel not implemented")
+}
+func (UnimplementedNodeServer) EmergencyRecover(context.Context, *EmergencyrecoverRequest) (*EmergencyrecoverResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method EmergencyRecover not implemented")
+}
+func (UnimplementedNodeServer) Recover(context.Context, *RecoverRequest) (*RecoverResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Recover not implemented")
+}
+func (UnimplementedNodeServer) RecoverChannel(context.Context, *RecoverchannelRequest) (*RecoverchannelResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RecoverChannel not implemented")
+}
func (UnimplementedNodeServer) Invoice(context.Context, *InvoiceRequest) (*InvoiceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Invoice not implemented")
}
+func (UnimplementedNodeServer) CreateInvoiceRequest(context.Context, *InvoicerequestRequest) (*InvoicerequestResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateInvoiceRequest not implemented")
+}
+func (UnimplementedNodeServer) DisableInvoiceRequest(context.Context, *DisableinvoicerequestRequest) (*DisableinvoicerequestResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DisableInvoiceRequest not implemented")
+}
+func (UnimplementedNodeServer) ListInvoiceRequests(context.Context, *ListinvoicerequestsRequest) (*ListinvoicerequestsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListInvoiceRequests not implemented")
+}
func (UnimplementedNodeServer) ListDatastore(context.Context, *ListdatastoreRequest) (*ListdatastoreResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListDatastore not implemented")
}
@@ -816,6 +1552,9 @@ func (UnimplementedNodeServer) ListSendPays(context.Context, *ListsendpaysReques
func (UnimplementedNodeServer) ListTransactions(context.Context, *ListtransactionsRequest) (*ListtransactionsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListTransactions not implemented")
}
+func (UnimplementedNodeServer) MakeSecret(context.Context, *MakesecretRequest) (*MakesecretResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MakeSecret not implemented")
+}
func (UnimplementedNodeServer) Pay(context.Context, *PayRequest) (*PayResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Pay not implemented")
}
@@ -873,6 +1612,15 @@ func (UnimplementedNodeServer) DecodePay(context.Context, *DecodepayRequest) (*D
func (UnimplementedNodeServer) Decode(context.Context, *DecodeRequest) (*DecodeResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Decode not implemented")
}
+func (UnimplementedNodeServer) DelPay(context.Context, *DelpayRequest) (*DelpayResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DelPay not implemented")
+}
+func (UnimplementedNodeServer) DelForward(context.Context, *DelforwardRequest) (*DelforwardResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DelForward not implemented")
+}
+func (UnimplementedNodeServer) DisableOffer(context.Context, *DisableofferRequest) (*DisableofferResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DisableOffer not implemented")
+}
func (UnimplementedNodeServer) Disconnect(context.Context, *DisconnectRequest) (*DisconnectResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Disconnect not implemented")
}
@@ -882,9 +1630,24 @@ func (UnimplementedNodeServer) Feerates(context.Context, *FeeratesRequest) (*Fee
func (UnimplementedNodeServer) FetchInvoice(context.Context, *FetchinvoiceRequest) (*FetchinvoiceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FetchInvoice not implemented")
}
+func (UnimplementedNodeServer) FundChannel_Cancel(context.Context, *FundchannelCancelRequest) (*FundchannelCancelResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method FundChannel_Cancel not implemented")
+}
+func (UnimplementedNodeServer) FundChannel_Complete(context.Context, *FundchannelCompleteRequest) (*FundchannelCompleteResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method FundChannel_Complete not implemented")
+}
func (UnimplementedNodeServer) FundChannel(context.Context, *FundchannelRequest) (*FundchannelResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FundChannel not implemented")
}
+func (UnimplementedNodeServer) FundChannel_Start(context.Context, *FundchannelStartRequest) (*FundchannelStartResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method FundChannel_Start not implemented")
+}
+func (UnimplementedNodeServer) GetLog(context.Context, *GetlogRequest) (*GetlogResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetLog not implemented")
+}
+func (UnimplementedNodeServer) FunderUpdate(context.Context, *FunderupdateRequest) (*FunderupdateResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method FunderUpdate not implemented")
+}
func (UnimplementedNodeServer) GetRoute(context.Context, *GetrouteRequest) (*GetrouteResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetRoute not implemented")
}
@@ -900,33 +1663,99 @@ func (UnimplementedNodeServer) ListPays(context.Context, *ListpaysRequest) (*Lis
func (UnimplementedNodeServer) ListHtlcs(context.Context, *ListhtlcsRequest) (*ListhtlcsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListHtlcs not implemented")
}
+func (UnimplementedNodeServer) MultiFundChannel(context.Context, *MultifundchannelRequest) (*MultifundchannelResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MultiFundChannel not implemented")
+}
+func (UnimplementedNodeServer) MultiWithdraw(context.Context, *MultiwithdrawRequest) (*MultiwithdrawResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MultiWithdraw not implemented")
+}
func (UnimplementedNodeServer) Offer(context.Context, *OfferRequest) (*OfferResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Offer not implemented")
}
+func (UnimplementedNodeServer) OpenChannel_Abort(context.Context, *OpenchannelAbortRequest) (*OpenchannelAbortResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method OpenChannel_Abort not implemented")
+}
+func (UnimplementedNodeServer) OpenChannel_Bump(context.Context, *OpenchannelBumpRequest) (*OpenchannelBumpResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method OpenChannel_Bump not implemented")
+}
+func (UnimplementedNodeServer) OpenChannel_Init(context.Context, *OpenchannelInitRequest) (*OpenchannelInitResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method OpenChannel_Init not implemented")
+}
+func (UnimplementedNodeServer) OpenChannel_Signed(context.Context, *OpenchannelSignedRequest) (*OpenchannelSignedResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method OpenChannel_Signed not implemented")
+}
+func (UnimplementedNodeServer) OpenChannel_Update(context.Context, *OpenchannelUpdateRequest) (*OpenchannelUpdateResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method OpenChannel_Update not implemented")
+}
func (UnimplementedNodeServer) Ping(context.Context, *PingRequest) (*PingResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Ping not implemented")
}
+func (UnimplementedNodeServer) Plugin(context.Context, *PluginRequest) (*PluginResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Plugin not implemented")
+}
+func (UnimplementedNodeServer) RenePayStatus(context.Context, *RenepaystatusRequest) (*RenepaystatusResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RenePayStatus not implemented")
+}
+func (UnimplementedNodeServer) RenePay(context.Context, *RenepayRequest) (*RenepayResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RenePay not implemented")
+}
+func (UnimplementedNodeServer) ReserveInputs(context.Context, *ReserveinputsRequest) (*ReserveinputsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ReserveInputs not implemented")
+}
func (UnimplementedNodeServer) SendCustomMsg(context.Context, *SendcustommsgRequest) (*SendcustommsgResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SendCustomMsg not implemented")
}
+func (UnimplementedNodeServer) SendInvoice(context.Context, *SendinvoiceRequest) (*SendinvoiceResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SendInvoice not implemented")
+}
+func (UnimplementedNodeServer) SendOnionMessage(context.Context, *SendonionmessageRequest) (*SendonionmessageResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SendOnionMessage not implemented")
+}
func (UnimplementedNodeServer) SetChannel(context.Context, *SetchannelRequest) (*SetchannelResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SetChannel not implemented")
}
+func (UnimplementedNodeServer) SetConfig(context.Context, *SetconfigRequest) (*SetconfigResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SetConfig not implemented")
+}
+func (UnimplementedNodeServer) SetPsbtVersion(context.Context, *SetpsbtversionRequest) (*SetpsbtversionResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SetPsbtVersion not implemented")
+}
func (UnimplementedNodeServer) SignInvoice(context.Context, *SigninvoiceRequest) (*SigninvoiceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SignInvoice not implemented")
}
func (UnimplementedNodeServer) SignMessage(context.Context, *SignmessageRequest) (*SignmessageResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SignMessage not implemented")
}
+func (UnimplementedNodeServer) Splice_Init(context.Context, *SpliceInitRequest) (*SpliceInitResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Splice_Init not implemented")
+}
+func (UnimplementedNodeServer) Splice_Signed(context.Context, *SpliceSignedRequest) (*SpliceSignedResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Splice_Signed not implemented")
+}
+func (UnimplementedNodeServer) Splice_Update(context.Context, *SpliceUpdateRequest) (*SpliceUpdateResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Splice_Update not implemented")
+}
+func (UnimplementedNodeServer) UnreserveInputs(context.Context, *UnreserveinputsRequest) (*UnreserveinputsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UnreserveInputs not implemented")
+}
+func (UnimplementedNodeServer) UpgradeWallet(context.Context, *UpgradewalletRequest) (*UpgradewalletResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpgradeWallet not implemented")
+}
func (UnimplementedNodeServer) WaitBlockHeight(context.Context, *WaitblockheightRequest) (*WaitblockheightResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method WaitBlockHeight not implemented")
}
func (UnimplementedNodeServer) Wait(context.Context, *WaitRequest) (*WaitResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Wait not implemented")
}
+func (UnimplementedNodeServer) ListConfigs(context.Context, *ListconfigsRequest) (*ListconfigsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListConfigs not implemented")
+}
func (UnimplementedNodeServer) Stop(context.Context, *StopRequest) (*StopResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Stop not implemented")
}
+func (UnimplementedNodeServer) Help(context.Context, *HelpRequest) (*HelpResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Help not implemented")
+}
func (UnimplementedNodeServer) PreApproveKeysend(context.Context, *PreapprovekeysendRequest) (*PreapprovekeysendResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method PreApproveKeysend not implemented")
}
@@ -936,9 +1765,51 @@ func (UnimplementedNodeServer) PreApproveInvoice(context.Context, *Preapproveinv
func (UnimplementedNodeServer) StaticBackup(context.Context, *StaticbackupRequest) (*StaticbackupResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method StaticBackup not implemented")
}
+func (UnimplementedNodeServer) BkprChannelsApy(context.Context, *BkprchannelsapyRequest) (*BkprchannelsapyResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BkprChannelsApy not implemented")
+}
+func (UnimplementedNodeServer) BkprDumpIncomeCsv(context.Context, *BkprdumpincomecsvRequest) (*BkprdumpincomecsvResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BkprDumpIncomeCsv not implemented")
+}
+func (UnimplementedNodeServer) BkprInspect(context.Context, *BkprinspectRequest) (*BkprinspectResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BkprInspect not implemented")
+}
+func (UnimplementedNodeServer) BkprListAccountEvents(context.Context, *BkprlistaccounteventsRequest) (*BkprlistaccounteventsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BkprListAccountEvents not implemented")
+}
+func (UnimplementedNodeServer) BkprListBalances(context.Context, *BkprlistbalancesRequest) (*BkprlistbalancesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BkprListBalances not implemented")
+}
func (UnimplementedNodeServer) BkprListIncome(context.Context, *BkprlistincomeRequest) (*BkprlistincomeResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method BkprListIncome not implemented")
}
+func (UnimplementedNodeServer) BlacklistRune(context.Context, *BlacklistruneRequest) (*BlacklistruneResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BlacklistRune not implemented")
+}
+func (UnimplementedNodeServer) CheckRune(context.Context, *CheckruneRequest) (*CheckruneResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CheckRune not implemented")
+}
+func (UnimplementedNodeServer) CreateRune(context.Context, *CreateruneRequest) (*CreateruneResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateRune not implemented")
+}
+func (UnimplementedNodeServer) ShowRunes(context.Context, *ShowrunesRequest) (*ShowrunesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ShowRunes not implemented")
+}
+func (UnimplementedNodeServer) SubscribeBlockAdded(*StreamBlockAddedRequest, Node_SubscribeBlockAddedServer) error {
+ return status.Errorf(codes.Unimplemented, "method SubscribeBlockAdded not implemented")
+}
+func (UnimplementedNodeServer) SubscribeChannelOpenFailed(*StreamChannelOpenFailedRequest, Node_SubscribeChannelOpenFailedServer) error {
+ return status.Errorf(codes.Unimplemented, "method SubscribeChannelOpenFailed not implemented")
+}
+func (UnimplementedNodeServer) SubscribeChannelOpened(*StreamChannelOpenedRequest, Node_SubscribeChannelOpenedServer) error {
+ return status.Errorf(codes.Unimplemented, "method SubscribeChannelOpened not implemented")
+}
+func (UnimplementedNodeServer) SubscribeConnect(*StreamConnectRequest, Node_SubscribeConnectServer) error {
+ return status.Errorf(codes.Unimplemented, "method SubscribeConnect not implemented")
+}
+func (UnimplementedNodeServer) SubscribeCustomMsg(*StreamCustomMsgRequest, Node_SubscribeCustomMsgServer) error {
+ return status.Errorf(codes.Unimplemented, "method SubscribeCustomMsg not implemented")
+}
func (UnimplementedNodeServer) mustEmbedUnimplementedNodeServer() {}
// UnsafeNodeServer may be embedded to opt out of forward compatibility for this service.
@@ -1060,6 +1931,24 @@ func _Node_AddGossip_Handler(srv interface{}, ctx context.Context, dec func(inte
return interceptor(ctx, in, info, handler)
}
+func _Node_AddPsbtOutput_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AddpsbtoutputRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).AddPsbtOutput(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/AddPsbtOutput",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).AddPsbtOutput(ctx, req.(*AddpsbtoutputRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_AutoCleanInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(AutocleaninvoiceRequest)
if err := dec(in); err != nil {
@@ -1078,6 +1967,42 @@ func _Node_AutoCleanInvoice_Handler(srv interface{}, ctx context.Context, dec fu
return interceptor(ctx, in, info, handler)
}
+func _Node_AutoCleanOnce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AutocleanonceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).AutoCleanOnce(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/AutoCleanOnce",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).AutoCleanOnce(ctx, req.(*AutocleanonceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_AutoCleanStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AutocleanstatusRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).AutoCleanStatus(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/AutoCleanStatus",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).AutoCleanStatus(ctx, req.(*AutocleanstatusRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_CheckMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CheckmessageRequest)
if err := dec(in); err != nil {
@@ -1222,44 +2147,98 @@ func _Node_DelDatastore_Handler(srv interface{}, ctx context.Context, dec func(i
return interceptor(ctx, in, info, handler)
}
-func _Node_DelExpiredInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(DelexpiredinvoiceRequest)
+func _Node_DelInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DelinvoiceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).DelExpiredInvoice(ctx, in)
+ return srv.(NodeServer).DelInvoice(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/DelExpiredInvoice",
+ FullMethod: "/cln.Node/DelInvoice",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).DelExpiredInvoice(ctx, req.(*DelexpiredinvoiceRequest))
+ return srv.(NodeServer).DelInvoice(ctx, req.(*DelinvoiceRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_DelInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(DelinvoiceRequest)
+func _Node_DevForgetChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DevforgetchannelRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).DelInvoice(ctx, in)
+ return srv.(NodeServer).DevForgetChannel(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/DelInvoice",
+ FullMethod: "/cln.Node/DevForgetChannel",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).DelInvoice(ctx, req.(*DelinvoiceRequest))
+ return srv.(NodeServer).DevForgetChannel(ctx, req.(*DevforgetchannelRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_Invoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(InvoiceRequest)
+func _Node_EmergencyRecover_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(EmergencyrecoverRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).EmergencyRecover(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/EmergencyRecover",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).EmergencyRecover(ctx, req.(*EmergencyrecoverRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Recover_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RecoverRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Recover(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Recover",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Recover(ctx, req.(*RecoverRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_RecoverChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RecoverchannelRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).RecoverChannel(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/RecoverChannel",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).RecoverChannel(ctx, req.(*RecoverchannelRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Invoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvoiceRequest)
if err := dec(in); err != nil {
return nil, err
}
@@ -1276,6 +2255,60 @@ func _Node_Invoice_Handler(srv interface{}, ctx context.Context, dec func(interf
return interceptor(ctx, in, info, handler)
}
+func _Node_CreateInvoiceRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvoicerequestRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).CreateInvoiceRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/CreateInvoiceRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).CreateInvoiceRequest(ctx, req.(*InvoicerequestRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_DisableInvoiceRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DisableinvoicerequestRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).DisableInvoiceRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/DisableInvoiceRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).DisableInvoiceRequest(ctx, req.(*DisableinvoicerequestRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_ListInvoiceRequests_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListinvoicerequestsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).ListInvoiceRequests(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/ListInvoiceRequests",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).ListInvoiceRequests(ctx, req.(*ListinvoicerequestsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_ListDatastore_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListdatastoreRequest)
if err := dec(in); err != nil {
@@ -1366,6 +2399,24 @@ func _Node_ListTransactions_Handler(srv interface{}, ctx context.Context, dec fu
return interceptor(ctx, in, info, handler)
}
+func _Node_MakeSecret_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MakesecretRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).MakeSecret(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/MakeSecret",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).MakeSecret(ctx, req.(*MakesecretRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_Pay_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(PayRequest)
if err := dec(in); err != nil {
@@ -1708,6 +2759,60 @@ func _Node_Decode_Handler(srv interface{}, ctx context.Context, dec func(interfa
return interceptor(ctx, in, info, handler)
}
+func _Node_DelPay_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DelpayRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).DelPay(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/DelPay",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).DelPay(ctx, req.(*DelpayRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_DelForward_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DelforwardRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).DelForward(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/DelForward",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).DelForward(ctx, req.(*DelforwardRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_DisableOffer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DisableofferRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).DisableOffer(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/DisableOffer",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).DisableOffer(ctx, req.(*DisableofferRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_Disconnect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DisconnectRequest)
if err := dec(in); err != nil {
@@ -1762,6 +2867,42 @@ func _Node_FetchInvoice_Handler(srv interface{}, ctx context.Context, dec func(i
return interceptor(ctx, in, info, handler)
}
+func _Node_FundChannel_Cancel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FundchannelCancelRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).FundChannel_Cancel(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/FundChannel_Cancel",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).FundChannel_Cancel(ctx, req.(*FundchannelCancelRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_FundChannel_Complete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FundchannelCompleteRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).FundChannel_Complete(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/FundChannel_Complete",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).FundChannel_Complete(ctx, req.(*FundchannelCompleteRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_FundChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FundchannelRequest)
if err := dec(in); err != nil {
@@ -1780,6 +2921,60 @@ func _Node_FundChannel_Handler(srv interface{}, ctx context.Context, dec func(in
return interceptor(ctx, in, info, handler)
}
+func _Node_FundChannel_Start_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FundchannelStartRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).FundChannel_Start(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/FundChannel_Start",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).FundChannel_Start(ctx, req.(*FundchannelStartRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_GetLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetlogRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).GetLog(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/GetLog",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).GetLog(ctx, req.(*GetlogRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_FunderUpdate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FunderupdateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).FunderUpdate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/FunderUpdate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).FunderUpdate(ctx, req.(*FunderupdateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Node_GetRoute_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetrouteRequest)
if err := dec(in); err != nil {
@@ -1870,179 +3065,575 @@ func _Node_ListHtlcs_Handler(srv interface{}, ctx context.Context, dec func(inte
return interceptor(ctx, in, info, handler)
}
-func _Node_Offer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(OfferRequest)
+func _Node_MultiFundChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MultifundchannelRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).Offer(ctx, in)
+ return srv.(NodeServer).MultiFundChannel(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/Offer",
+ FullMethod: "/cln.Node/MultiFundChannel",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).Offer(ctx, req.(*OfferRequest))
+ return srv.(NodeServer).MultiFundChannel(ctx, req.(*MultifundchannelRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_Ping_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PingRequest)
+func _Node_MultiWithdraw_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MultiwithdrawRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).Ping(ctx, in)
+ return srv.(NodeServer).MultiWithdraw(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/Ping",
+ FullMethod: "/cln.Node/MultiWithdraw",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).Ping(ctx, req.(*PingRequest))
+ return srv.(NodeServer).MultiWithdraw(ctx, req.(*MultiwithdrawRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_SendCustomMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(SendcustommsgRequest)
+func _Node_Offer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OfferRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).SendCustomMsg(ctx, in)
+ return srv.(NodeServer).Offer(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/SendCustomMsg",
+ FullMethod: "/cln.Node/Offer",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).SendCustomMsg(ctx, req.(*SendcustommsgRequest))
+ return srv.(NodeServer).Offer(ctx, req.(*OfferRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_SetChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(SetchannelRequest)
+func _Node_OpenChannel_Abort_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OpenchannelAbortRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).SetChannel(ctx, in)
+ return srv.(NodeServer).OpenChannel_Abort(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/SetChannel",
+ FullMethod: "/cln.Node/OpenChannel_Abort",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).SetChannel(ctx, req.(*SetchannelRequest))
+ return srv.(NodeServer).OpenChannel_Abort(ctx, req.(*OpenchannelAbortRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_SignInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(SigninvoiceRequest)
+func _Node_OpenChannel_Bump_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OpenchannelBumpRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).SignInvoice(ctx, in)
+ return srv.(NodeServer).OpenChannel_Bump(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/SignInvoice",
+ FullMethod: "/cln.Node/OpenChannel_Bump",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).SignInvoice(ctx, req.(*SigninvoiceRequest))
+ return srv.(NodeServer).OpenChannel_Bump(ctx, req.(*OpenchannelBumpRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_SignMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(SignmessageRequest)
+func _Node_OpenChannel_Init_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OpenchannelInitRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).SignMessage(ctx, in)
+ return srv.(NodeServer).OpenChannel_Init(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/SignMessage",
+ FullMethod: "/cln.Node/OpenChannel_Init",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).SignMessage(ctx, req.(*SignmessageRequest))
+ return srv.(NodeServer).OpenChannel_Init(ctx, req.(*OpenchannelInitRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_WaitBlockHeight_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(WaitblockheightRequest)
+func _Node_OpenChannel_Signed_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OpenchannelSignedRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).WaitBlockHeight(ctx, in)
+ return srv.(NodeServer).OpenChannel_Signed(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/WaitBlockHeight",
+ FullMethod: "/cln.Node/OpenChannel_Signed",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).WaitBlockHeight(ctx, req.(*WaitblockheightRequest))
+ return srv.(NodeServer).OpenChannel_Signed(ctx, req.(*OpenchannelSignedRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_Wait_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(WaitRequest)
+func _Node_OpenChannel_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OpenchannelUpdateRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).Wait(ctx, in)
+ return srv.(NodeServer).OpenChannel_Update(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/Wait",
+ FullMethod: "/cln.Node/OpenChannel_Update",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).Wait(ctx, req.(*WaitRequest))
+ return srv.(NodeServer).OpenChannel_Update(ctx, req.(*OpenchannelUpdateRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_Stop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(StopRequest)
+func _Node_Ping_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PingRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).Stop(ctx, in)
+ return srv.(NodeServer).Ping(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/Stop",
+ FullMethod: "/cln.Node/Ping",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).Stop(ctx, req.(*StopRequest))
+ return srv.(NodeServer).Ping(ctx, req.(*PingRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_PreApproveKeysend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PreapprovekeysendRequest)
+func _Node_Plugin_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PluginRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).PreApproveKeysend(ctx, in)
+ return srv.(NodeServer).Plugin(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/PreApproveKeysend",
+ FullMethod: "/cln.Node/Plugin",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Plugin(ctx, req.(*PluginRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_RenePayStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RenepaystatusRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).RenePayStatus(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/RenePayStatus",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).RenePayStatus(ctx, req.(*RenepaystatusRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_RenePay_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RenepayRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).RenePay(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/RenePay",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).RenePay(ctx, req.(*RenepayRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_ReserveInputs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ReserveinputsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).ReserveInputs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/ReserveInputs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).ReserveInputs(ctx, req.(*ReserveinputsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SendCustomMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SendcustommsgRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SendCustomMsg(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SendCustomMsg",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SendCustomMsg(ctx, req.(*SendcustommsgRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SendInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SendinvoiceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SendInvoice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SendInvoice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SendInvoice(ctx, req.(*SendinvoiceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SendOnionMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SendonionmessageRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SendOnionMessage(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SendOnionMessage",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SendOnionMessage(ctx, req.(*SendonionmessageRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SetChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetchannelRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SetChannel(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SetChannel",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SetChannel(ctx, req.(*SetchannelRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SetConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetconfigRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SetConfig(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SetConfig",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SetConfig(ctx, req.(*SetconfigRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SetPsbtVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetpsbtversionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SetPsbtVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SetPsbtVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SetPsbtVersion(ctx, req.(*SetpsbtversionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SignInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SigninvoiceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SignInvoice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SignInvoice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SignInvoice(ctx, req.(*SigninvoiceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SignMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SignmessageRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).SignMessage(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/SignMessage",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).SignMessage(ctx, req.(*SignmessageRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Splice_Init_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SpliceInitRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Splice_Init(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Splice_Init",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Splice_Init(ctx, req.(*SpliceInitRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Splice_Signed_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SpliceSignedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Splice_Signed(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Splice_Signed",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Splice_Signed(ctx, req.(*SpliceSignedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Splice_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SpliceUpdateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Splice_Update(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Splice_Update",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Splice_Update(ctx, req.(*SpliceUpdateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_UnreserveInputs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UnreserveinputsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).UnreserveInputs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/UnreserveInputs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).UnreserveInputs(ctx, req.(*UnreserveinputsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_UpgradeWallet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpgradewalletRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).UpgradeWallet(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/UpgradeWallet",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).UpgradeWallet(ctx, req.(*UpgradewalletRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_WaitBlockHeight_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(WaitblockheightRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).WaitBlockHeight(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/WaitBlockHeight",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).WaitBlockHeight(ctx, req.(*WaitblockheightRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Wait_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(WaitRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Wait(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Wait",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Wait(ctx, req.(*WaitRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_ListConfigs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListconfigsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).ListConfigs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/ListConfigs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).ListConfigs(ctx, req.(*ListconfigsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Stop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(StopRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Stop(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Stop",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Stop(ctx, req.(*StopRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_Help_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HelpRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).Help(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/Help",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).Help(ctx, req.(*HelpRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_PreApproveKeysend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PreapprovekeysendRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).PreApproveKeysend(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/PreApproveKeysend",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(NodeServer).PreApproveKeysend(ctx, req.(*PreapprovekeysendRequest))
@@ -2050,38 +3641,128 @@ func _Node_PreApproveKeysend_Handler(srv interface{}, ctx context.Context, dec f
return interceptor(ctx, in, info, handler)
}
-func _Node_PreApproveInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PreapproveinvoiceRequest)
+func _Node_PreApproveInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PreapproveinvoiceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).PreApproveInvoice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/PreApproveInvoice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).PreApproveInvoice(ctx, req.(*PreapproveinvoiceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_StaticBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(StaticbackupRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).StaticBackup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/StaticBackup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).StaticBackup(ctx, req.(*StaticbackupRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_BkprChannelsApy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BkprchannelsapyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).BkprChannelsApy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/BkprChannelsApy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).BkprChannelsApy(ctx, req.(*BkprchannelsapyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_BkprDumpIncomeCsv_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BkprdumpincomecsvRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).PreApproveInvoice(ctx, in)
+ return srv.(NodeServer).BkprDumpIncomeCsv(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/PreApproveInvoice",
+ FullMethod: "/cln.Node/BkprDumpIncomeCsv",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).PreApproveInvoice(ctx, req.(*PreapproveinvoiceRequest))
+ return srv.(NodeServer).BkprDumpIncomeCsv(ctx, req.(*BkprdumpincomecsvRequest))
}
return interceptor(ctx, in, info, handler)
}
-func _Node_StaticBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(StaticbackupRequest)
+func _Node_BkprInspect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BkprinspectRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
- return srv.(NodeServer).StaticBackup(ctx, in)
+ return srv.(NodeServer).BkprInspect(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
- FullMethod: "/cln.Node/StaticBackup",
+ FullMethod: "/cln.Node/BkprInspect",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NodeServer).StaticBackup(ctx, req.(*StaticbackupRequest))
+ return srv.(NodeServer).BkprInspect(ctx, req.(*BkprinspectRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_BkprListAccountEvents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BkprlistaccounteventsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).BkprListAccountEvents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/BkprListAccountEvents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).BkprListAccountEvents(ctx, req.(*BkprlistaccounteventsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_BkprListBalances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BkprlistbalancesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).BkprListBalances(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/BkprListBalances",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).BkprListBalances(ctx, req.(*BkprlistbalancesRequest))
}
return interceptor(ctx, in, info, handler)
}
@@ -2104,6 +3785,183 @@ func _Node_BkprListIncome_Handler(srv interface{}, ctx context.Context, dec func
return interceptor(ctx, in, info, handler)
}
+func _Node_BlacklistRune_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BlacklistruneRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).BlacklistRune(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/BlacklistRune",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).BlacklistRune(ctx, req.(*BlacklistruneRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_CheckRune_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CheckruneRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).CheckRune(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/CheckRune",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).CheckRune(ctx, req.(*CheckruneRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_CreateRune_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateruneRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).CreateRune(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/CreateRune",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).CreateRune(ctx, req.(*CreateruneRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_ShowRunes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ShowrunesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NodeServer).ShowRunes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/cln.Node/ShowRunes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NodeServer).ShowRunes(ctx, req.(*ShowrunesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Node_SubscribeBlockAdded_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(StreamBlockAddedRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(NodeServer).SubscribeBlockAdded(m, &nodeSubscribeBlockAddedServer{stream})
+}
+
+type Node_SubscribeBlockAddedServer interface {
+ Send(*BlockAddedNotification) error
+ grpc.ServerStream
+}
+
+type nodeSubscribeBlockAddedServer struct {
+ grpc.ServerStream
+}
+
+func (x *nodeSubscribeBlockAddedServer) Send(m *BlockAddedNotification) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _Node_SubscribeChannelOpenFailed_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(StreamChannelOpenFailedRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(NodeServer).SubscribeChannelOpenFailed(m, &nodeSubscribeChannelOpenFailedServer{stream})
+}
+
+type Node_SubscribeChannelOpenFailedServer interface {
+ Send(*ChannelOpenFailedNotification) error
+ grpc.ServerStream
+}
+
+type nodeSubscribeChannelOpenFailedServer struct {
+ grpc.ServerStream
+}
+
+func (x *nodeSubscribeChannelOpenFailedServer) Send(m *ChannelOpenFailedNotification) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _Node_SubscribeChannelOpened_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(StreamChannelOpenedRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(NodeServer).SubscribeChannelOpened(m, &nodeSubscribeChannelOpenedServer{stream})
+}
+
+type Node_SubscribeChannelOpenedServer interface {
+ Send(*ChannelOpenedNotification) error
+ grpc.ServerStream
+}
+
+type nodeSubscribeChannelOpenedServer struct {
+ grpc.ServerStream
+}
+
+func (x *nodeSubscribeChannelOpenedServer) Send(m *ChannelOpenedNotification) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _Node_SubscribeConnect_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(StreamConnectRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(NodeServer).SubscribeConnect(m, &nodeSubscribeConnectServer{stream})
+}
+
+type Node_SubscribeConnectServer interface {
+ Send(*PeerConnectNotification) error
+ grpc.ServerStream
+}
+
+type nodeSubscribeConnectServer struct {
+ grpc.ServerStream
+}
+
+func (x *nodeSubscribeConnectServer) Send(m *PeerConnectNotification) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _Node_SubscribeCustomMsg_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(StreamCustomMsgRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(NodeServer).SubscribeCustomMsg(m, &nodeSubscribeCustomMsgServer{stream})
+}
+
+type Node_SubscribeCustomMsgServer interface {
+ Send(*CustomMsgNotification) error
+ grpc.ServerStream
+}
+
+type nodeSubscribeCustomMsgServer struct {
+ grpc.ServerStream
+}
+
+func (x *nodeSubscribeCustomMsgServer) Send(m *CustomMsgNotification) error {
+ return x.ServerStream.SendMsg(m)
+}
+
// Node_ServiceDesc is the grpc.ServiceDesc for Node service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -2135,10 +3993,22 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "AddGossip",
Handler: _Node_AddGossip_Handler,
},
+ {
+ MethodName: "AddPsbtOutput",
+ Handler: _Node_AddPsbtOutput_Handler,
+ },
{
MethodName: "AutoCleanInvoice",
Handler: _Node_AutoCleanInvoice_Handler,
},
+ {
+ MethodName: "AutoCleanOnce",
+ Handler: _Node_AutoCleanOnce_Handler,
+ },
+ {
+ MethodName: "AutoCleanStatus",
+ Handler: _Node_AutoCleanStatus_Handler,
+ },
{
MethodName: "CheckMessage",
Handler: _Node_CheckMessage_Handler,
@@ -2171,18 +4041,42 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "DelDatastore",
Handler: _Node_DelDatastore_Handler,
},
- {
- MethodName: "DelExpiredInvoice",
- Handler: _Node_DelExpiredInvoice_Handler,
- },
{
MethodName: "DelInvoice",
Handler: _Node_DelInvoice_Handler,
},
+ {
+ MethodName: "DevForgetChannel",
+ Handler: _Node_DevForgetChannel_Handler,
+ },
+ {
+ MethodName: "EmergencyRecover",
+ Handler: _Node_EmergencyRecover_Handler,
+ },
+ {
+ MethodName: "Recover",
+ Handler: _Node_Recover_Handler,
+ },
+ {
+ MethodName: "RecoverChannel",
+ Handler: _Node_RecoverChannel_Handler,
+ },
{
MethodName: "Invoice",
Handler: _Node_Invoice_Handler,
},
+ {
+ MethodName: "CreateInvoiceRequest",
+ Handler: _Node_CreateInvoiceRequest_Handler,
+ },
+ {
+ MethodName: "DisableInvoiceRequest",
+ Handler: _Node_DisableInvoiceRequest_Handler,
+ },
+ {
+ MethodName: "ListInvoiceRequests",
+ Handler: _Node_ListInvoiceRequests_Handler,
+ },
{
MethodName: "ListDatastore",
Handler: _Node_ListDatastore_Handler,
@@ -2203,6 +4097,10 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "ListTransactions",
Handler: _Node_ListTransactions_Handler,
},
+ {
+ MethodName: "MakeSecret",
+ Handler: _Node_MakeSecret_Handler,
+ },
{
MethodName: "Pay",
Handler: _Node_Pay_Handler,
@@ -2279,6 +4177,18 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "Decode",
Handler: _Node_Decode_Handler,
},
+ {
+ MethodName: "DelPay",
+ Handler: _Node_DelPay_Handler,
+ },
+ {
+ MethodName: "DelForward",
+ Handler: _Node_DelForward_Handler,
+ },
+ {
+ MethodName: "DisableOffer",
+ Handler: _Node_DisableOffer_Handler,
+ },
{
MethodName: "Disconnect",
Handler: _Node_Disconnect_Handler,
@@ -2291,10 +4201,30 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "FetchInvoice",
Handler: _Node_FetchInvoice_Handler,
},
+ {
+ MethodName: "FundChannel_Cancel",
+ Handler: _Node_FundChannel_Cancel_Handler,
+ },
+ {
+ MethodName: "FundChannel_Complete",
+ Handler: _Node_FundChannel_Complete_Handler,
+ },
{
MethodName: "FundChannel",
Handler: _Node_FundChannel_Handler,
},
+ {
+ MethodName: "FundChannel_Start",
+ Handler: _Node_FundChannel_Start_Handler,
+ },
+ {
+ MethodName: "GetLog",
+ Handler: _Node_GetLog_Handler,
+ },
+ {
+ MethodName: "FunderUpdate",
+ Handler: _Node_FunderUpdate_Handler,
+ },
{
MethodName: "GetRoute",
Handler: _Node_GetRoute_Handler,
@@ -2315,22 +4245,82 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "ListHtlcs",
Handler: _Node_ListHtlcs_Handler,
},
+ {
+ MethodName: "MultiFundChannel",
+ Handler: _Node_MultiFundChannel_Handler,
+ },
+ {
+ MethodName: "MultiWithdraw",
+ Handler: _Node_MultiWithdraw_Handler,
+ },
{
MethodName: "Offer",
Handler: _Node_Offer_Handler,
},
+ {
+ MethodName: "OpenChannel_Abort",
+ Handler: _Node_OpenChannel_Abort_Handler,
+ },
+ {
+ MethodName: "OpenChannel_Bump",
+ Handler: _Node_OpenChannel_Bump_Handler,
+ },
+ {
+ MethodName: "OpenChannel_Init",
+ Handler: _Node_OpenChannel_Init_Handler,
+ },
+ {
+ MethodName: "OpenChannel_Signed",
+ Handler: _Node_OpenChannel_Signed_Handler,
+ },
+ {
+ MethodName: "OpenChannel_Update",
+ Handler: _Node_OpenChannel_Update_Handler,
+ },
{
MethodName: "Ping",
Handler: _Node_Ping_Handler,
},
+ {
+ MethodName: "Plugin",
+ Handler: _Node_Plugin_Handler,
+ },
+ {
+ MethodName: "RenePayStatus",
+ Handler: _Node_RenePayStatus_Handler,
+ },
+ {
+ MethodName: "RenePay",
+ Handler: _Node_RenePay_Handler,
+ },
+ {
+ MethodName: "ReserveInputs",
+ Handler: _Node_ReserveInputs_Handler,
+ },
{
MethodName: "SendCustomMsg",
Handler: _Node_SendCustomMsg_Handler,
},
+ {
+ MethodName: "SendInvoice",
+ Handler: _Node_SendInvoice_Handler,
+ },
+ {
+ MethodName: "SendOnionMessage",
+ Handler: _Node_SendOnionMessage_Handler,
+ },
{
MethodName: "SetChannel",
Handler: _Node_SetChannel_Handler,
},
+ {
+ MethodName: "SetConfig",
+ Handler: _Node_SetConfig_Handler,
+ },
+ {
+ MethodName: "SetPsbtVersion",
+ Handler: _Node_SetPsbtVersion_Handler,
+ },
{
MethodName: "SignInvoice",
Handler: _Node_SignInvoice_Handler,
@@ -2339,6 +4329,26 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "SignMessage",
Handler: _Node_SignMessage_Handler,
},
+ {
+ MethodName: "Splice_Init",
+ Handler: _Node_Splice_Init_Handler,
+ },
+ {
+ MethodName: "Splice_Signed",
+ Handler: _Node_Splice_Signed_Handler,
+ },
+ {
+ MethodName: "Splice_Update",
+ Handler: _Node_Splice_Update_Handler,
+ },
+ {
+ MethodName: "UnreserveInputs",
+ Handler: _Node_UnreserveInputs_Handler,
+ },
+ {
+ MethodName: "UpgradeWallet",
+ Handler: _Node_UpgradeWallet_Handler,
+ },
{
MethodName: "WaitBlockHeight",
Handler: _Node_WaitBlockHeight_Handler,
@@ -2347,10 +4357,18 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "Wait",
Handler: _Node_Wait_Handler,
},
+ {
+ MethodName: "ListConfigs",
+ Handler: _Node_ListConfigs_Handler,
+ },
{
MethodName: "Stop",
Handler: _Node_Stop_Handler,
},
+ {
+ MethodName: "Help",
+ Handler: _Node_Help_Handler,
+ },
{
MethodName: "PreApproveKeysend",
Handler: _Node_PreApproveKeysend_Handler,
@@ -2363,11 +4381,73 @@ var Node_ServiceDesc = grpc.ServiceDesc{
MethodName: "StaticBackup",
Handler: _Node_StaticBackup_Handler,
},
+ {
+ MethodName: "BkprChannelsApy",
+ Handler: _Node_BkprChannelsApy_Handler,
+ },
+ {
+ MethodName: "BkprDumpIncomeCsv",
+ Handler: _Node_BkprDumpIncomeCsv_Handler,
+ },
+ {
+ MethodName: "BkprInspect",
+ Handler: _Node_BkprInspect_Handler,
+ },
+ {
+ MethodName: "BkprListAccountEvents",
+ Handler: _Node_BkprListAccountEvents_Handler,
+ },
+ {
+ MethodName: "BkprListBalances",
+ Handler: _Node_BkprListBalances_Handler,
+ },
{
MethodName: "BkprListIncome",
Handler: _Node_BkprListIncome_Handler,
},
+ {
+ MethodName: "BlacklistRune",
+ Handler: _Node_BlacklistRune_Handler,
+ },
+ {
+ MethodName: "CheckRune",
+ Handler: _Node_CheckRune_Handler,
+ },
+ {
+ MethodName: "CreateRune",
+ Handler: _Node_CreateRune_Handler,
+ },
+ {
+ MethodName: "ShowRunes",
+ Handler: _Node_ShowRunes_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "SubscribeBlockAdded",
+ Handler: _Node_SubscribeBlockAdded_Handler,
+ ServerStreams: true,
+ },
+ {
+ StreamName: "SubscribeChannelOpenFailed",
+ Handler: _Node_SubscribeChannelOpenFailed_Handler,
+ ServerStreams: true,
+ },
+ {
+ StreamName: "SubscribeChannelOpened",
+ Handler: _Node_SubscribeChannelOpened_Handler,
+ ServerStreams: true,
+ },
+ {
+ StreamName: "SubscribeConnect",
+ Handler: _Node_SubscribeConnect_Handler,
+ ServerStreams: true,
+ },
+ {
+ StreamName: "SubscribeCustomMsg",
+ Handler: _Node_SubscribeCustomMsg_Handler,
+ ServerStreams: true,
+ },
},
- Streams: []grpc.StreamDesc{},
Metadata: "node.proto",
}
diff --git a/cln/rpc/primitives.pb.go b/cln/rpc/primitives.pb.go
index 61fa7ed5..46f0c269 100644
--- a/cln/rpc/primitives.pb.go
+++ b/cln/rpc/primitives.pb.go
@@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.28.1
+// protoc-gen-go v1.33.0
// protoc v4.25.3
// source: primitives.proto
@@ -297,6 +297,119 @@ func (ChannelTypeName) EnumDescriptor() ([]byte, []int) {
return file_primitives_proto_rawDescGZIP(), []int{3}
}
+type AutocleanSubsystem int32
+
+const (
+ AutocleanSubsystem_SUCCEEDEDFORWARDS AutocleanSubsystem = 0
+ AutocleanSubsystem_FAILEDFORWARDS AutocleanSubsystem = 1
+ AutocleanSubsystem_SUCCEEDEDPAYS AutocleanSubsystem = 2
+ AutocleanSubsystem_FAILEDPAYS AutocleanSubsystem = 3
+ AutocleanSubsystem_PAIDINVOICES AutocleanSubsystem = 4
+ AutocleanSubsystem_EXPIREDINVOICES AutocleanSubsystem = 5
+)
+
+// Enum value maps for AutocleanSubsystem.
+var (
+ AutocleanSubsystem_name = map[int32]string{
+ 0: "SUCCEEDEDFORWARDS",
+ 1: "FAILEDFORWARDS",
+ 2: "SUCCEEDEDPAYS",
+ 3: "FAILEDPAYS",
+ 4: "PAIDINVOICES",
+ 5: "EXPIREDINVOICES",
+ }
+ AutocleanSubsystem_value = map[string]int32{
+ "SUCCEEDEDFORWARDS": 0,
+ "FAILEDFORWARDS": 1,
+ "SUCCEEDEDPAYS": 2,
+ "FAILEDPAYS": 3,
+ "PAIDINVOICES": 4,
+ "EXPIREDINVOICES": 5,
+ }
+)
+
+func (x AutocleanSubsystem) Enum() *AutocleanSubsystem {
+ p := new(AutocleanSubsystem)
+ *p = x
+ return p
+}
+
+func (x AutocleanSubsystem) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AutocleanSubsystem) Descriptor() protoreflect.EnumDescriptor {
+ return file_primitives_proto_enumTypes[4].Descriptor()
+}
+
+func (AutocleanSubsystem) Type() protoreflect.EnumType {
+ return &file_primitives_proto_enumTypes[4]
+}
+
+func (x AutocleanSubsystem) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AutocleanSubsystem.Descriptor instead.
+func (AutocleanSubsystem) EnumDescriptor() ([]byte, []int) {
+ return file_primitives_proto_rawDescGZIP(), []int{4}
+}
+
+type PluginSubcommand int32
+
+const (
+ PluginSubcommand_START PluginSubcommand = 0
+ PluginSubcommand_STOP PluginSubcommand = 1
+ PluginSubcommand_RESCAN PluginSubcommand = 2
+ PluginSubcommand_STARTDIR PluginSubcommand = 3
+ PluginSubcommand_LIST PluginSubcommand = 4
+)
+
+// Enum value maps for PluginSubcommand.
+var (
+ PluginSubcommand_name = map[int32]string{
+ 0: "START",
+ 1: "STOP",
+ 2: "RESCAN",
+ 3: "STARTDIR",
+ 4: "LIST",
+ }
+ PluginSubcommand_value = map[string]int32{
+ "START": 0,
+ "STOP": 1,
+ "RESCAN": 2,
+ "STARTDIR": 3,
+ "LIST": 4,
+ }
+)
+
+func (x PluginSubcommand) Enum() *PluginSubcommand {
+ p := new(PluginSubcommand)
+ *p = x
+ return p
+}
+
+func (x PluginSubcommand) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (PluginSubcommand) Descriptor() protoreflect.EnumDescriptor {
+ return file_primitives_proto_enumTypes[5].Descriptor()
+}
+
+func (PluginSubcommand) Type() protoreflect.EnumType {
+ return &file_primitives_proto_enumTypes[5]
+}
+
+func (x PluginSubcommand) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use PluginSubcommand.Descriptor instead.
+func (PluginSubcommand) EnumDescriptor() ([]byte, []int) {
+ return file_primitives_proto_rawDescGZIP(), []int{5}
+}
+
type Amount struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -782,11 +895,11 @@ type RouteHop struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
- ShortChannelId string `protobuf:"bytes,2,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
- Feebase *Amount `protobuf:"bytes,3,opt,name=feebase,proto3" json:"feebase,omitempty"`
- Feeprop uint32 `protobuf:"varint,4,opt,name=feeprop,proto3" json:"feeprop,omitempty"`
- Expirydelta uint32 `protobuf:"varint,5,opt,name=expirydelta,proto3" json:"expirydelta,omitempty"`
+ Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Scid string `protobuf:"bytes,2,opt,name=scid,proto3" json:"scid,omitempty"`
+ Feebase *Amount `protobuf:"bytes,3,opt,name=feebase,proto3" json:"feebase,omitempty"`
+ Feeprop uint32 `protobuf:"varint,4,opt,name=feeprop,proto3" json:"feeprop,omitempty"`
+ Expirydelta uint32 `protobuf:"varint,5,opt,name=expirydelta,proto3" json:"expirydelta,omitempty"`
}
func (x *RouteHop) Reset() {
@@ -828,9 +941,9 @@ func (x *RouteHop) GetId() []byte {
return nil
}
-func (x *RouteHop) GetShortChannelId() string {
+func (x *RouteHop) GetScid() string {
if x != nil {
- return x.ShortChannelId
+ return x.Scid
}
return ""
}
@@ -950,6 +1063,179 @@ func (x *RoutehintList) GetHints() []*Routehint {
return nil
}
+type DecodeRouteHop struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Pubkey []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
+ ShortChannelId string `protobuf:"bytes,2,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
+ FeeBaseMsat *Amount `protobuf:"bytes,3,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
+ FeeProportionalMillionths uint32 `protobuf:"varint,4,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
+ CltvExpiryDelta uint32 `protobuf:"varint,5,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"`
+}
+
+func (x *DecodeRouteHop) Reset() {
+ *x = DecodeRouteHop{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_primitives_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DecodeRouteHop) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DecodeRouteHop) ProtoMessage() {}
+
+func (x *DecodeRouteHop) ProtoReflect() protoreflect.Message {
+ mi := &file_primitives_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 DecodeRouteHop.ProtoReflect.Descriptor instead.
+func (*DecodeRouteHop) Descriptor() ([]byte, []int) {
+ return file_primitives_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *DecodeRouteHop) GetPubkey() []byte {
+ if x != nil {
+ return x.Pubkey
+ }
+ return nil
+}
+
+func (x *DecodeRouteHop) GetShortChannelId() string {
+ if x != nil {
+ return x.ShortChannelId
+ }
+ return ""
+}
+
+func (x *DecodeRouteHop) GetFeeBaseMsat() *Amount {
+ if x != nil {
+ return x.FeeBaseMsat
+ }
+ return nil
+}
+
+func (x *DecodeRouteHop) GetFeeProportionalMillionths() uint32 {
+ if x != nil {
+ return x.FeeProportionalMillionths
+ }
+ return 0
+}
+
+func (x *DecodeRouteHop) GetCltvExpiryDelta() uint32 {
+ if x != nil {
+ return x.CltvExpiryDelta
+ }
+ return 0
+}
+
+type DecodeRoutehint struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Hops []*DecodeRouteHop `protobuf:"bytes,1,rep,name=hops,proto3" json:"hops,omitempty"`
+}
+
+func (x *DecodeRoutehint) Reset() {
+ *x = DecodeRoutehint{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_primitives_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DecodeRoutehint) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DecodeRoutehint) ProtoMessage() {}
+
+func (x *DecodeRoutehint) ProtoReflect() protoreflect.Message {
+ mi := &file_primitives_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 DecodeRoutehint.ProtoReflect.Descriptor instead.
+func (*DecodeRoutehint) Descriptor() ([]byte, []int) {
+ return file_primitives_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *DecodeRoutehint) GetHops() []*DecodeRouteHop {
+ if x != nil {
+ return x.Hops
+ }
+ return nil
+}
+
+type DecodeRoutehintList struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Hints []*DecodeRoutehint `protobuf:"bytes,2,rep,name=hints,proto3" json:"hints,omitempty"`
+}
+
+func (x *DecodeRoutehintList) Reset() {
+ *x = DecodeRoutehintList{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_primitives_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DecodeRoutehintList) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DecodeRoutehintList) ProtoMessage() {}
+
+func (x *DecodeRoutehintList) ProtoReflect() protoreflect.Message {
+ mi := &file_primitives_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 DecodeRoutehintList.ProtoReflect.Descriptor instead.
+func (*DecodeRoutehintList) Descriptor() ([]byte, []int) {
+ return file_primitives_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *DecodeRoutehintList) GetHints() []*DecodeRoutehint {
+ if x != nil {
+ return x.Hints
+ }
+ return nil
+}
+
type TlvEntry struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -962,7 +1248,7 @@ type TlvEntry struct {
func (x *TlvEntry) Reset() {
*x = TlvEntry{}
if protoimpl.UnsafeEnabled {
- mi := &file_primitives_proto_msgTypes[10]
+ mi := &file_primitives_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -975,7 +1261,7 @@ func (x *TlvEntry) String() string {
func (*TlvEntry) ProtoMessage() {}
func (x *TlvEntry) ProtoReflect() protoreflect.Message {
- mi := &file_primitives_proto_msgTypes[10]
+ mi := &file_primitives_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -988,7 +1274,7 @@ func (x *TlvEntry) ProtoReflect() protoreflect.Message {
// Deprecated: Use TlvEntry.ProtoReflect.Descriptor instead.
func (*TlvEntry) Descriptor() ([]byte, []int) {
- return file_primitives_proto_rawDescGZIP(), []int{10}
+ return file_primitives_proto_rawDescGZIP(), []int{13}
}
func (x *TlvEntry) GetType() uint64 {
@@ -1016,7 +1302,7 @@ type TlvStream struct {
func (x *TlvStream) Reset() {
*x = TlvStream{}
if protoimpl.UnsafeEnabled {
- mi := &file_primitives_proto_msgTypes[11]
+ mi := &file_primitives_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1029,7 +1315,7 @@ func (x *TlvStream) String() string {
func (*TlvStream) ProtoMessage() {}
func (x *TlvStream) ProtoReflect() protoreflect.Message {
- mi := &file_primitives_proto_msgTypes[11]
+ mi := &file_primitives_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1042,7 +1328,7 @@ func (x *TlvStream) ProtoReflect() protoreflect.Message {
// Deprecated: Use TlvStream.ProtoReflect.Descriptor instead.
func (*TlvStream) Descriptor() ([]byte, []int) {
- return file_primitives_proto_rawDescGZIP(), []int{11}
+ return file_primitives_proto_rawDescGZIP(), []int{14}
}
func (x *TlvStream) GetEntries() []*TlvEntry {
@@ -1087,93 +1373,128 @@ var file_primitives_proto_rawDesc = []byte{
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64,
0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x08, 0x52,
+ 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x91, 0x01, 0x0a, 0x08, 0x52,
0x6f, 0x75, 0x74, 0x65, 0x48, 0x6f, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74,
- 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
- 0x64, 0x12, 0x25, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
- 0x07, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x70,
- 0x72, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x65, 0x70, 0x72,
- 0x6f, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x64, 0x65, 0x6c, 0x74,
- 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x64,
- 0x65, 0x6c, 0x74, 0x61, 0x22, 0x2e, 0x0a, 0x09, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e,
- 0x74, 0x12, 0x21, 0x0a, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x6f, 0x70, 0x52, 0x04,
- 0x68, 0x6f, 0x70, 0x73, 0x22, 0x35, 0x0a, 0x0d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e,
- 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02,
- 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65,
- 0x68, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x34, 0x0a, 0x08, 0x54,
- 0x6c, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
- 0x65, 0x22, 0x34, 0x0a, 0x09, 0x54, 0x6c, 0x76, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x27,
- 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x6c, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07,
- 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x2a, 0x24, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10,
- 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x01, 0x2a, 0xa0, 0x02,
- 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0c,
- 0x0a, 0x08, 0x4f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67,
- 0x4c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x64, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14,
- 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x64, 0x53, 0x68, 0x75, 0x74, 0x74, 0x69, 0x6e, 0x67,
- 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x69, 0x6e,
- 0x67, 0x64, 0x53, 0x69, 0x67, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x04, 0x12,
- 0x14, 0x0a, 0x10, 0x43, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c,
- 0x65, 0x74, 0x65, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e,
- 0x67, 0x55, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x10, 0x06, 0x12, 0x14, 0x0a,
- 0x10, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x53, 0x65, 0x65,
- 0x6e, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x10, 0x08,
- 0x12, 0x15, 0x0a, 0x11, 0x44, 0x75, 0x61, 0x6c, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x4f, 0x70, 0x65,
- 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x10, 0x09, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x75, 0x61, 0x6c, 0x6f,
- 0x70, 0x65, 0x6e, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x6b,
- 0x69, 0x6e, 0x10, 0x0a, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x64,
- 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x10, 0x0b,
- 0x2a, 0xd5, 0x03, 0x0a, 0x09, 0x48, 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0f,
- 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x00, 0x12,
- 0x11, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
- 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76,
- 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x63, 0x76,
- 0x64, 0x41, 0x64, 0x64, 0x41, 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x03, 0x12,
- 0x18, 0x0a, 0x14, 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76,
- 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x63, 0x76,
- 0x64, 0x41, 0x64, 0x64, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76,
- 0x65, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x63, 0x76, 0x64, 0x52,
- 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x07, 0x12, 0x18, 0x0a,
- 0x14, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x74, 0x52,
- 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x09,
- 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63,
- 0x6b, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0a, 0x12, 0x0f, 0x0a,
- 0x0b, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x0b, 0x12, 0x11,
- 0x0a, 0x0d, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10,
- 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x6f,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x74,
- 0x41, 0x64, 0x64, 0x41, 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x0e, 0x12, 0x12,
- 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x48, 0x74, 0x6c, 0x63,
- 0x10, 0x0f, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x10, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x63, 0x76, 0x64,
+ 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x63, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x63, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x07, 0x66,
+ 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
+ 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x66, 0x65, 0x65, 0x62, 0x61,
+ 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x70, 0x72, 0x6f, 0x70, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x65, 0x70, 0x72, 0x6f, 0x70, 0x12, 0x20, 0x0a, 0x0b,
+ 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0d, 0x52, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x22, 0x2e,
+ 0x0a, 0x09, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x04, 0x68,
+ 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x6f, 0x70, 0x52, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x22, 0x35,
+ 0x0a, 0x0d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12,
+ 0x24, 0x0a, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e,
+ 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x52, 0x05,
+ 0x68, 0x69, 0x6e, 0x74, 0x73, 0x22, 0xef, 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
+ 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x6f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b,
+ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
+ 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72,
+ 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65,
+ 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b,
+ 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66,
+ 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
+ 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61,
+ 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63,
+ 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69,
+ 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x22, 0x3a, 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x6f, 0x64,
+ 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x68, 0x6f,
+ 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
+ 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x6f, 0x70, 0x52, 0x04, 0x68,
+ 0x6f, 0x70, 0x73, 0x22, 0x41, 0x0a, 0x13, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x75,
+ 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x68, 0x69,
+ 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
+ 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x52,
+ 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x34, 0x0a, 0x08, 0x54, 0x6c, 0x76, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x34, 0x0a, 0x09,
+ 0x54, 0x6c, 0x76, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x27, 0x0a, 0x07, 0x65, 0x6e, 0x74,
+ 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e,
+ 0x2e, 0x54, 0x6c, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69,
+ 0x65, 0x73, 0x2a, 0x24, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64,
+ 0x65, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
+ 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x01, 0x2a, 0xa0, 0x02, 0x0a, 0x0c, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x70, 0x65,
+ 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x6b, 0x69,
+ 0x6e, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x64, 0x4e,
+ 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x64, 0x53, 0x68, 0x75, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x6f, 0x77, 0x6e, 0x10,
+ 0x03, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x64, 0x53, 0x69, 0x67,
+ 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x6c,
+ 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0x05,
+ 0x12, 0x16, 0x0a, 0x12, 0x41, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x69, 0x6c,
+ 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x75, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x53, 0x65, 0x65, 0x6e, 0x10, 0x07, 0x12, 0x0b,
+ 0x0a, 0x07, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x44,
+ 0x75, 0x61, 0x6c, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x6e, 0x69, 0x74,
+ 0x10, 0x09, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x75, 0x61, 0x6c, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x41,
+ 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x10, 0x0a, 0x12,
+ 0x1a, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x64, 0x41, 0x77, 0x61, 0x69, 0x74,
+ 0x69, 0x6e, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x10, 0x0b, 0x2a, 0xd5, 0x03, 0x0a, 0x09,
+ 0x48, 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x65, 0x6e,
+ 0x74, 0x41, 0x64, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x65,
+ 0x6e, 0x74, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x01, 0x12, 0x15, 0x0a,
+ 0x11, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x41,
+ 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x65,
+ 0x6e, 0x74, 0x41, 0x64, 0x64, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x63, 0x76, 0x64, 0x41, 0x64, 0x64, 0x41,
+ 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x12,
+ 0x0a, 0x0e, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x48, 0x74, 0x6c, 0x63,
+ 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
+ 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x65, 0x6e, 0x74,
0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x10, 0x11, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x41, 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x12, 0x12, 0x1b, 0x0a, 0x17, 0x53,
- 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x13, 0x2a, 0x90, 0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x15,
- 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x6b, 0x65, 0x79,
- 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x61, 0x6e, 0x63, 0x68, 0x6f,
- 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x01,
- 0x12, 0x21, 0x0a, 0x1d, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x5f, 0x7a, 0x65, 0x72, 0x6f,
- 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x78, 0x5f, 0x65, 0x76, 0x65,
- 0x6e, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x73, 0x63, 0x69, 0x64, 0x5f, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x7a, 0x65, 0x72, 0x6f,
- 0x63, 0x6f, 0x6e, 0x66, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x04, 0x42, 0x1f, 0x5a, 0x1d, 0x67,
- 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72, 0x65, 0x65, 0x7a, 0x2f,
- 0x6c, 0x73, 0x70, 0x64, 0x2f, 0x63, 0x6c, 0x6e, 0x2f, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
+ 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
+ 0x41, 0x63, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x09, 0x12, 0x1b, 0x0a, 0x17, 0x52,
+ 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0a, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x63, 0x76, 0x64,
+ 0x41, 0x64, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x0b, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x63, 0x76,
+ 0x64, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11,
+ 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x41, 0x63,
+ 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x0e, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x48, 0x74, 0x6c, 0x63, 0x10, 0x0f, 0x12, 0x14, 0x0a,
+ 0x10, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
+ 0x74, 0x10, 0x10, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76,
+ 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x11, 0x12, 0x17, 0x0a,
+ 0x13, 0x52, 0x63, 0x76, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63, 0x6b, 0x43, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x12, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x10, 0x13, 0x2a, 0x90, 0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54,
+ 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x69,
+ 0x63, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x6b, 0x65, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e,
+ 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x6f, 0x75, 0x74,
+ 0x70, 0x75, 0x74, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x61,
+ 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x66, 0x65, 0x65, 0x5f,
+ 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x78, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x10, 0x02, 0x12, 0x13,
+ 0x0a, 0x0f, 0x73, 0x63, 0x69, 0x64, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x5f, 0x65, 0x76, 0x65,
+ 0x6e, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x7a, 0x65, 0x72, 0x6f, 0x63, 0x6f, 0x6e, 0x66, 0x5f,
+ 0x65, 0x76, 0x65, 0x6e, 0x10, 0x04, 0x2a, 0x89, 0x01, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x6f, 0x63,
+ 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x15, 0x0a,
+ 0x11, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52,
+ 0x44, 0x53, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x46, 0x4f,
+ 0x52, 0x57, 0x41, 0x52, 0x44, 0x53, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x55, 0x43, 0x43,
+ 0x45, 0x45, 0x44, 0x45, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x46,
+ 0x41, 0x49, 0x4c, 0x45, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x50,
+ 0x41, 0x49, 0x44, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x53, 0x10, 0x04, 0x12, 0x13, 0x0a,
+ 0x0f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x53,
+ 0x10, 0x05, 0x2a, 0x4b, 0x0a, 0x10, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x75, 0x62, 0x63,
+ 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10,
+ 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52,
+ 0x45, 0x53, 0x43, 0x41, 0x4e, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x54, 0x41, 0x52, 0x54,
+ 0x44, 0x49, 0x52, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x04, 0x42,
+ 0x1f, 0x5a, 0x1d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72,
+ 0x65, 0x65, 0x7a, 0x2f, 0x6c, 0x73, 0x70, 0x64, 0x2f, 0x63, 0x6c, 0x6e, 0x2f, 0x72, 0x70, 0x63,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1188,39 +1509,47 @@ func file_primitives_proto_rawDescGZIP() []byte {
return file_primitives_proto_rawDescData
}
-var file_primitives_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
-var file_primitives_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
+var file_primitives_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
+var file_primitives_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
var file_primitives_proto_goTypes = []interface{}{
(ChannelSide)(0), // 0: cln.ChannelSide
(ChannelState)(0), // 1: cln.ChannelState
(HtlcState)(0), // 2: cln.HtlcState
(ChannelTypeName)(0), // 3: cln.ChannelTypeName
- (*Amount)(nil), // 4: cln.Amount
- (*AmountOrAll)(nil), // 5: cln.AmountOrAll
- (*AmountOrAny)(nil), // 6: cln.AmountOrAny
- (*ChannelStateChangeCause)(nil), // 7: cln.ChannelStateChangeCause
- (*Outpoint)(nil), // 8: cln.Outpoint
- (*Feerate)(nil), // 9: cln.Feerate
- (*OutputDesc)(nil), // 10: cln.OutputDesc
- (*RouteHop)(nil), // 11: cln.RouteHop
- (*Routehint)(nil), // 12: cln.Routehint
- (*RoutehintList)(nil), // 13: cln.RoutehintList
- (*TlvEntry)(nil), // 14: cln.TlvEntry
- (*TlvStream)(nil), // 15: cln.TlvStream
+ (AutocleanSubsystem)(0), // 4: cln.AutocleanSubsystem
+ (PluginSubcommand)(0), // 5: cln.PluginSubcommand
+ (*Amount)(nil), // 6: cln.Amount
+ (*AmountOrAll)(nil), // 7: cln.AmountOrAll
+ (*AmountOrAny)(nil), // 8: cln.AmountOrAny
+ (*ChannelStateChangeCause)(nil), // 9: cln.ChannelStateChangeCause
+ (*Outpoint)(nil), // 10: cln.Outpoint
+ (*Feerate)(nil), // 11: cln.Feerate
+ (*OutputDesc)(nil), // 12: cln.OutputDesc
+ (*RouteHop)(nil), // 13: cln.RouteHop
+ (*Routehint)(nil), // 14: cln.Routehint
+ (*RoutehintList)(nil), // 15: cln.RoutehintList
+ (*DecodeRouteHop)(nil), // 16: cln.DecodeRouteHop
+ (*DecodeRoutehint)(nil), // 17: cln.DecodeRoutehint
+ (*DecodeRoutehintList)(nil), // 18: cln.DecodeRoutehintList
+ (*TlvEntry)(nil), // 19: cln.TlvEntry
+ (*TlvStream)(nil), // 20: cln.TlvStream
}
var file_primitives_proto_depIdxs = []int32{
- 4, // 0: cln.AmountOrAll.amount:type_name -> cln.Amount
- 4, // 1: cln.AmountOrAny.amount:type_name -> cln.Amount
- 4, // 2: cln.OutputDesc.amount:type_name -> cln.Amount
- 4, // 3: cln.RouteHop.feebase:type_name -> cln.Amount
- 11, // 4: cln.Routehint.hops:type_name -> cln.RouteHop
- 12, // 5: cln.RoutehintList.hints:type_name -> cln.Routehint
- 14, // 6: cln.TlvStream.entries:type_name -> cln.TlvEntry
- 7, // [7:7] is the sub-list for method output_type
- 7, // [7:7] is the sub-list for method input_type
- 7, // [7:7] is the sub-list for extension type_name
- 7, // [7:7] is the sub-list for extension extendee
- 0, // [0:7] is the sub-list for field type_name
+ 6, // 0: cln.AmountOrAll.amount:type_name -> cln.Amount
+ 6, // 1: cln.AmountOrAny.amount:type_name -> cln.Amount
+ 6, // 2: cln.OutputDesc.amount:type_name -> cln.Amount
+ 6, // 3: cln.RouteHop.feebase:type_name -> cln.Amount
+ 13, // 4: cln.Routehint.hops:type_name -> cln.RouteHop
+ 14, // 5: cln.RoutehintList.hints:type_name -> cln.Routehint
+ 6, // 6: cln.DecodeRouteHop.fee_base_msat:type_name -> cln.Amount
+ 16, // 7: cln.DecodeRoutehint.hops:type_name -> cln.DecodeRouteHop
+ 17, // 8: cln.DecodeRoutehintList.hints:type_name -> cln.DecodeRoutehint
+ 19, // 9: cln.TlvStream.entries:type_name -> cln.TlvEntry
+ 10, // [10:10] is the sub-list for method output_type
+ 10, // [10:10] is the sub-list for method input_type
+ 10, // [10:10] is the sub-list for extension type_name
+ 10, // [10:10] is the sub-list for extension extendee
+ 0, // [0:10] is the sub-list for field type_name
}
func init() { file_primitives_proto_init() }
@@ -1350,7 +1679,7 @@ func file_primitives_proto_init() {
}
}
file_primitives_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TlvEntry); i {
+ switch v := v.(*DecodeRouteHop); i {
case 0:
return &v.state
case 1:
@@ -1362,6 +1691,42 @@ func file_primitives_proto_init() {
}
}
file_primitives_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeRoutehint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_primitives_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DecodeRoutehintList); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_primitives_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TlvEntry); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_primitives_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TlvStream); i {
case 0:
return &v.state
@@ -1394,8 +1759,8 @@ func file_primitives_proto_init() {
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_primitives_proto_rawDesc,
- NumEnums: 4,
- NumMessages: 12,
+ NumEnums: 6,
+ NumMessages: 15,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/cln/rpc/primitives.proto b/cln/rpc/primitives.proto
index 78836119..056ffb9c 100644
--- a/cln/rpc/primitives.proto
+++ b/cln/rpc/primitives.proto
@@ -2,7 +2,7 @@ syntax = "proto3";
package cln;
option go_package = "github.com/breez/lspd/cln/rpc";
-// This file was taken from cln v24.02.1
+// This file was taken from cln v24.05
message Amount {
uint64 msat = 1;
@@ -89,9 +89,9 @@ message OutputDesc {
message RouteHop {
bytes id = 1;
- string short_channel_id = 2;
+ string scid = 2;
Amount feebase = 3;
- uint32 feeprop = 4;
+ uint32 feeprop = 4;
uint32 expirydelta = 5;
}
message Routehint {
@@ -101,6 +101,19 @@ message RoutehintList {
repeated Routehint hints = 2;
}
+message DecodeRouteHop {
+ bytes pubkey = 1;
+ string short_channel_id = 2;
+ Amount fee_base_msat = 3;
+ uint32 fee_proportional_millionths = 4;
+ uint32 cltv_expiry_delta = 5;
+}
+message DecodeRoutehint {
+ repeated DecodeRouteHop hops = 1;
+}
+message DecodeRoutehintList {
+ repeated DecodeRoutehint hints = 2;
+}
message TlvEntry {
uint64 type = 1;
@@ -118,3 +131,20 @@ enum ChannelTypeName {
scid_alias_even = 3;
zeroconf_even = 4;
}
+
+enum AutocleanSubsystem {
+ SUCCEEDEDFORWARDS = 0;
+ FAILEDFORWARDS = 1;
+ SUCCEEDEDPAYS = 2;
+ FAILEDPAYS = 3;
+ PAIDINVOICES = 4;
+ EXPIREDINVOICES = 5;
+}
+
+enum PluginSubcommand {
+ START = 0;
+ STOP = 1;
+ RESCAN = 2;
+ STARTDIR = 3;
+ LIST = 4;
+}
diff --git a/cmd/lspd/main.go b/cmd/lspd/main.go
index a6dbb679..f4e85742 100644
--- a/cmd/lspd/main.go
+++ b/cmd/lspd/main.go
@@ -1,10 +1,15 @@
package main
import (
+ "context"
"log"
"os"
+ "os/signal"
+ "syscall"
+ "github.com/breez/lspd"
"github.com/breez/lspd/build"
+ "github.com/breez/lspd/config"
"github.com/urfave/cli"
)
@@ -13,7 +18,23 @@ func main() {
app.Name = "lspd"
app.Version = build.GetTag() + " commit=" + build.GetRevision()
app.Usage = "LSP implementation for LND and CLN"
- app.Action = runLspd
+ app.Action = func(cliCtx *cli.Context) error {
+ ctx, cancel := context.WithCancel(context.Background())
+ c := make(chan os.Signal, 1)
+ signal.Notify(c, syscall.SIGINT, syscall.SIGTERM)
+ go func() {
+ sig := <-c
+ log.Printf("Received stop signal %v. Stopping.", sig)
+ cancel()
+ }()
+
+ config, err := config.LoadConfig()
+ if err != nil {
+ return err
+ }
+
+ return lspd.Main(ctx, config)
+ }
app.Commands = []cli.Command{
genKeyCommand,
migrateCommand,
diff --git a/config/config.go b/config/config.go
index 48a0ecf6..584be772 100644
--- a/config/config.go
+++ b/config/config.go
@@ -1,131 +1,82 @@
package config
-type NodeConfig struct {
- // Name of the LSP. If empty, the node's alias will be taken instead. The
- // name is returned in the ChannelInformation api endpoint as a friendly
- // name.
- Name string `json:name,omitempty`
-
- // The public key of the lightning node. If empty, the node's pubkey will be
- // taken instead. The pubkey is returned in the ChannelInformation api
- // endpoint, s
- NodePubkey string `json:nodePubkey,omitempty`
-
- // Hex encoded private key of the LSP. This is used to decrypt traffic from
- // clients. Note this is not the private key of the node.
- LspdPrivateKey string `json:"lspdPrivateKey"`
-
- // Tokens used to authenticate to lspd. These tokens must be unique for each
- // configured node, so it's obvious which node an rpc call is meant for.
- Tokens []string `json:"tokens"`
-
- // If the used token is in the LegacyOnionTokens array, the forwarded htlc
- // will have the legacy onion format. As per the time of writing breezmobile
- // requires the legacy onion format.
- LegacyOnionTokens []string `json:"legacyOnionTokens"`
-
- // The network location of the lightning node, e.g. `12.34.56.78:9012` or
- // `localhost:10011`. The host is returned in the ChannelInformation api
- // endpoint so clients can connect to the node.
- Host string `json:"host"`
-
- // Public channel amount is a reserved amount for public channels. If a
- // zero conf channel is opened, it will never have this exact amount. This
- // configuration option is Breez specific and can be ignored by others
- // running lspd.
- PublicChannelAmount int64 `json:"publicChannelAmount,string,omitempty"`
-
- // Number of blocks after which an opened channel is considered confirmed.
- TargetConf uint32 `json:"targetConf,string"`
-
- // Minimum number of confirmations inputs for zero conf channel opens should
- // have.
- MinConfs *uint32 `json:"minConfs,string"`
-
- // Smallest htlc amount routed over channels a channel. It is configured on
- // the node itself, but this value is returned in the ChannelInformation rpc.
- MinHtlcMsat uint64 `json:"minHtlcMsat,string"`
-
- // The base fee for routing payments over the channel. It is configured on
- // the node itself, but this value is returned in the ChannelInformation rpc.
- BaseFeeMsat uint64 `json:"baseFeeMsat,string"`
-
- // The fee rate for routing payments over the channel. It is configured on
- // the node itself, but this value is returned in the ChannelInformation rpc.
- FeeRate float64 `json:"feeRate,string"`
-
- // Minimum timelock delta required for opening a zero conf channel.
- TimeLockDelta uint32 `json:"timeLockDelta,string"`
-
- // Fee for opening a zero conf channel in satoshi per 10000 satoshi based
- // on the incoming payment amount.
- // This field is for legacy support for clients that don't support
- // OpeningFeeParams.
- ChannelFeePermyriad int64 `json:"channelFeePermyriad,string"`
-
- // Minimum fee for opening a zero conf channel in millisatoshi. If the fee
- // using ChannelFeePermyriad is less than this amount, this amount is the
- // actual fee to be paid.
- // This field is for legacy support for clients that don't support
- // OpeningFeeParams.
- ChannelMinimumFeeMsat int64 `json:"channelMinimumFeeMsat,string"`
-
- // Channel capacity that is added on top of the incoming payment amount
- // when a new zero conf channel is opened. In satoshi.
- AdditionalChannelCapacity int64 `json:"additionalChannelCapacity,string"`
-
- // The channel can be closed if not used this duration in seconds. This is
- // not enforced by lspd, but gives an indication to clients.
- // This field is for legacy support for clients that don't support
- // OpeningFeeParams.
- MaxInactiveDuration uint64 `json:"maxInactiveDuration,string"`
-
- // The maximum time to hold a htlc after sending a notification when the
- // peer is offline. Defaults to 1m.
- NotificationTimeout string `json:"notificationTimeout,string"`
-
- // The minimum payment size accepted in LSPS2 forwards that need a channel
- // open.
- MinPaymentSizeMsat uint64 `json:"minPaymentSizeMsat,string"`
-
- // The maximum payment size accepted in LSPS2 forwards that need a channel
- // open.
- MaxPaymentSizeMsat uint64 `json:"maxPaymentSizeMsat,string"`
-
- // Set this field to connect to an LND node.
- Lnd *LndConfig `json:"lnd,omitempty"`
-
- // Set this field to connect to a CLN node.
- Cln *ClnConfig `json:"cln,omitempty"`
-}
-
-type LndConfig struct {
- // Address to the grpc api.
- Address string `json:"address"`
-
- // tls cert for the grpc api.
- Cert string `json:"cert"`
-
- // macaroon to use.
- Macaroon string `json:"macaroon"`
+import (
+ "encoding/json"
+ "errors"
+ "fmt"
+ "os"
+ "strconv"
+ "strings"
+
+ "github.com/breez/lspd/chain"
+)
+
+type Config struct {
+ Nodes []*NodeConfig
+ FeeStrategy chain.FeeStrategy
+ MempoolApiBaseUrl *string
+ DatabaseUrl string
+ AutoMigrateDb bool
+ ListenAddress string
+ CertmagicDomain string
+ OpenChannelEmail *Email
}
-type ClnConfig struct {
- // The address to the cln htlc acceptor grpc api shipped with lspd.
- PluginAddress string `json:"pluginAddress"`
-
- // The address to the cln grpc api.
- GrpcAddress string `json:"grpcAddress"`
-
- // CA cert for grpc access. Can either be a file path or the cert contents.
- // Typically stored in `lightningd-dir/mainnet/ca.pem`.
- CaCert string `json:"caCert"`
-
- // Client cert for grpc access. Can either be a file path or the cert
- // contents. Typically stored in `lightningd-dir/{network}/client.pem`.
- ClientCert string `json:"clientCert"`
-
- // Client key for grpc access. Can either be a file path or the key
- // contents. Typically stored in `lightningd-dir/{network}/client-key.pem`.
- ClientKey string `json:"clientKey"`
+func LoadConfig() (*Config, error) {
+ n := os.Getenv("NODES")
+ var nodes []*NodeConfig
+ err := json.Unmarshal([]byte(n), &nodes)
+ if err != nil {
+ return nil, fmt.Errorf("failed to unmarshal NODES env: %v", err)
+ }
+
+ if len(nodes) == 0 {
+ return nil, errors.New("need at least one node configured in NODES")
+ }
+
+ var feeStrategy chain.FeeStrategy
+ envFeeStrategy := os.Getenv("MEMPOOL_PRIORITY")
+ switch strings.ToLower(envFeeStrategy) {
+ case "minimum":
+ feeStrategy = chain.FeeStrategyMinimum
+ case "economy":
+ feeStrategy = chain.FeeStrategyEconomy
+ case "hour":
+ feeStrategy = chain.FeeStrategyHour
+ case "halfhour":
+ feeStrategy = chain.FeeStrategyHalfHour
+ case "fastest":
+ feeStrategy = chain.FeeStrategyFastest
+ default:
+ feeStrategy = chain.FeeStrategyEconomy
+ }
+
+ var mempoolUrl *string
+ mempoolUrlEnv := os.Getenv("MEMPOOL_API_BASE_URL")
+ if mempoolUrlEnv != "" {
+ mempoolUrl = &mempoolUrlEnv
+ }
+
+ databaseUrl := os.Getenv("DATABASE_URL")
+ if databaseUrl == "" {
+ return nil, fmt.Errorf("missing environment variable DATABASE_URL")
+ }
+
+ automigrate, _ := strconv.ParseBool(os.Getenv("AUTO_MIGRATE_DATABASE"))
+ address := os.Getenv("LISTEN_ADDRESS")
+ certMagicDomain := os.Getenv("CERTMAGIC_DOMAIN")
+ openChannelEmail, err := loadOpenChannelEmailSettings()
+ if err != nil {
+ return nil, err
+ }
+ return &Config{
+ Nodes: nodes,
+ FeeStrategy: feeStrategy,
+ MempoolApiBaseUrl: mempoolUrl,
+ DatabaseUrl: databaseUrl,
+ AutoMigrateDb: automigrate,
+ ListenAddress: address,
+ CertmagicDomain: certMagicDomain,
+ OpenChannelEmail: openChannelEmail,
+ }, nil
}
diff --git a/config/email.go b/config/email.go
new file mode 100644
index 00000000..09a3ffac
--- /dev/null
+++ b/config/email.go
@@ -0,0 +1,45 @@
+package config
+
+import (
+ "encoding/json"
+ "fmt"
+ "os"
+)
+
+type Email struct {
+ To []*string
+ Cc []*string
+ From string
+}
+
+func addresses(a string) ([]*string, error) {
+ var addr []*string
+ err := json.Unmarshal([]byte(a), &addr)
+ return addr, err
+}
+
+func loadOpenChannelEmailSettings() (*Email, error) {
+ from := os.Getenv("OPENCHANNEL_NOTIFICATION_FROM")
+ to := os.Getenv("OPENCHANNEL_NOTIFICATION_TO")
+ cc := os.Getenv("OPENCHANNEL_NOTIFICATION_CC")
+
+ if from == "" && to == "" && cc == "" {
+ return nil, nil
+ }
+
+ t, err := addresses(to)
+ if err != nil {
+ return nil, fmt.Errorf("invalid OPENCHANNEL_NOTIFICATION_TO: %v", err)
+ }
+
+ c, err := addresses(cc)
+ if err != nil {
+ return nil, fmt.Errorf("invalid OPENCHANNEL_NOTIFICATION_CC: %v", err)
+ }
+
+ return &Email{
+ To: t,
+ Cc: c,
+ From: from,
+ }, nil
+}
diff --git a/config/node.go b/config/node.go
new file mode 100644
index 00000000..a5c4a044
--- /dev/null
+++ b/config/node.go
@@ -0,0 +1,132 @@
+package config
+
+type NodeConfig struct {
+ // Name of the LSP. If empty, the node's alias will be taken instead. The
+ // name is returned in the ChannelInformation api endpoint as a friendly
+ // name.
+ Name string `json:name,omitempty`
+
+ // The public key of the lightning node. If empty, the node's pubkey will be
+ // taken instead. The pubkey is returned in the ChannelInformation api
+ // endpoint, s
+ NodePubkey string `json:nodePubkey,omitempty`
+
+ // Hex encoded private key of the LSP. This is used to decrypt traffic from
+ // clients. Note this is not the private key of the node.
+ LspdPrivateKey string `json:"lspdPrivateKey"`
+
+ // Tokens used to authenticate to lspd. These tokens must be unique for each
+ // configured node, so it's obvious which node an rpc call is meant for.
+ Tokens []string `json:"tokens"`
+
+ // If the used token is in the LegacyOnionTokens array, the forwarded htlc
+ // will have the legacy onion format. As per the time of writing breezmobile
+ // requires the legacy onion format.
+ LegacyOnionTokens []string `json:"legacyOnionTokens"`
+
+ // The network location of the lightning node, e.g. `12.34.56.78:9012` or
+ // `localhost:10011`. The host is returned in the ChannelInformation api
+ // endpoint so clients can connect to the node.
+ Host string `json:"host"`
+
+ // Public channel amount is a reserved amount for public channels. If a
+ // zero conf channel is opened, it will never have this exact amount. This
+ // configuration option is Breez specific and can be ignored by others
+ // running lspd.
+ PublicChannelAmount int64 `json:"publicChannelAmount,string,omitempty"`
+
+ // Number of blocks after which an opened channel is considered confirmed.
+ TargetConf uint32 `json:"targetConf,string"`
+
+ // Minimum number of confirmations inputs for zero conf channel opens should
+ // have.
+ MinConfs *uint32 `json:"minConfs,string"`
+
+ // Smallest htlc amount routed over channels a channel. It is configured on
+ // the node itself, but this value is returned in the ChannelInformation rpc.
+ MinHtlcMsat uint64 `json:"minHtlcMsat,string"`
+
+ // The base fee for routing payments over the channel. It is configured on
+ // the node itself, but this value is returned in the ChannelInformation rpc.
+ BaseFeeMsat uint64 `json:"baseFeeMsat,string"`
+
+ // The fee rate for routing payments over the channel. It is configured on
+ // the node itself, but this value is returned in the ChannelInformation rpc.
+ FeeRate float64 `json:"feeRate,string"`
+
+ // Minimum timelock delta required for opening a zero conf channel.
+ TimeLockDelta uint32 `json:"timeLockDelta,string"`
+
+ // Fee for opening a zero conf channel in satoshi per 10000 satoshi based
+ // on the incoming payment amount.
+ // This field is for legacy support for clients that don't support
+ // OpeningFeeParams.
+ ChannelFeePermyriad int64 `json:"channelFeePermyriad,string"`
+
+ // Minimum fee for opening a zero conf channel in millisatoshi. If the fee
+ // using ChannelFeePermyriad is less than this amount, this amount is the
+ // actual fee to be paid.
+ // This field is for legacy support for clients that don't support
+ // OpeningFeeParams.
+ ChannelMinimumFeeMsat int64 `json:"channelMinimumFeeMsat,string"`
+
+ // Channel capacity that is added on top of the incoming payment amount
+ // when a new zero conf channel is opened. In satoshi.
+ AdditionalChannelCapacity int64 `json:"additionalChannelCapacity,string"`
+
+ // The channel can be closed if not used this duration in seconds. This is
+ // not enforced by lspd, but gives an indication to clients.
+ // This field is for legacy support for clients that don't support
+ // OpeningFeeParams.
+ MaxInactiveDuration uint64 `json:"maxInactiveDuration,string"`
+
+ // The maximum time to hold a htlc after sending a notification when the
+ // peer is offline. Defaults to 1m.
+ NotificationTimeout string `json:"notificationTimeout,string"`
+
+ // The minimum payment size accepted in LSPS2 forwards that need a channel
+ // open.
+ MinPaymentSizeMsat uint64 `json:"minPaymentSizeMsat,string"`
+
+ // The maximum payment size accepted in LSPS2 forwards that need a channel
+ // open.
+ MaxPaymentSizeMsat uint64 `json:"maxPaymentSizeMsat,string"`
+
+ // Set this field to connect to an LND node.
+ Lnd *LndConfig `json:"lnd,omitempty"`
+
+ // Set this field to connect to a CLN node.
+ Cln *ClnConfig `json:"cln,omitempty"`
+}
+
+type LndConfig struct {
+ // Address to the grpc api.
+ Address string `json:"address"`
+
+ // tls cert for the grpc api. Can either be a file path or the cert
+ // contents. Typically stored in `lnd-dir/tls.cert`.
+ Cert string `json:"cert"`
+
+ // macaroon to use. Can either be a file path or the macaroon contents.
+ Macaroon string `json:"macaroon"`
+}
+
+type ClnConfig struct {
+ // The address to the cln htlc acceptor grpc api shipped with lspd.
+ PluginAddress string `json:"pluginAddress"`
+
+ // The address to the cln grpc api.
+ GrpcAddress string `json:"grpcAddress"`
+
+ // CA cert for grpc access. Can either be a file path or the cert contents.
+ // Typically stored in `lightningd-dir/mainnet/ca.pem`.
+ CaCert string `json:"caCert"`
+
+ // Client cert for grpc access. Can either be a file path or the cert
+ // contents. Typically stored in `lightningd-dir/{network}/client.pem`.
+ ClientCert string `json:"clientCert"`
+
+ // Client key for grpc access. Can either be a file path or the key
+ // contents. Typically stored in `lightningd-dir/{network}/client-key.pem`.
+ ClientKey string `json:"clientKey"`
+}
diff --git a/go.mod b/go.mod
index 839bf751..a1e9b167 100644
--- a/go.mod
+++ b/go.mod
@@ -5,7 +5,6 @@ go 1.19
require (
github.com/GoWebProd/uuid7 v0.0.0-20230623091058-5f5954faed6a
github.com/aws/aws-sdk-go v1.34.0
- github.com/breez/lntest v0.0.30-0.20240324204336-6f828e9fca8f
github.com/btcsuite/btcd v0.24.0
github.com/btcsuite/btcd/btcec/v2 v2.3.2
github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0
@@ -13,6 +12,7 @@ require (
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0
github.com/docker/docker v24.0.9+incompatible
github.com/docker/go-connections v0.4.0
+ github.com/elementsproject/glightning v0.0.0-20230525134205-ef34d849f564
github.com/golang-migrate/migrate/v4 v4.16.1
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0
github.com/jackc/pgtype v1.14.0
@@ -38,7 +38,6 @@ require (
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
github.com/docker/distribution v2.8.2+incompatible // indirect
github.com/docker/go-units v0.5.0 // indirect
- github.com/elementsproject/glightning v0.0.0-20230525134205-ef34d849f564 // indirect
github.com/ethereum/go-ethereum v1.13.15 // indirect
github.com/go-logr/logr v1.3.0 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
@@ -92,7 +91,7 @@ require (
github.com/aead/siphash v1.0.1 // indirect
github.com/andybalholm/brotli v1.0.3 // indirect
github.com/beorn7/perks v1.0.1 // indirect
- github.com/btcsuite/btcd/btcutil v1.1.5 // indirect
+ github.com/btcsuite/btcd/btcutil v1.1.5
github.com/btcsuite/btcd/btcutil/psbt v1.1.8 // indirect
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f // indirect
github.com/btcsuite/btcwallet v0.16.10-0.20231017144732-e3ff37491e9c // indirect
@@ -186,7 +185,7 @@ require (
go.opentelemetry.io/otel/trace v1.20.0 // indirect
go.opentelemetry.io/proto/otlp v0.9.0 // indirect
go.uber.org/atomic v1.7.0 // indirect
- go.uber.org/multierr v1.8.0 // indirect
+ go.uber.org/multierr v1.8.0
go.uber.org/zap v1.17.0 // indirect
golang.org/x/crypto v0.21.0 // indirect
golang.org/x/term v0.18.0 // indirect
diff --git a/go.sum b/go.sum
index 07b186bb..63494561 100644
--- a/go.sum
+++ b/go.sum
@@ -172,8 +172,6 @@ github.com/breez/glightning v0.0.1-breez.0.20231123140102-d50d43e22138 h1:qNHyE7
github.com/breez/glightning v0.0.1-breez.0.20231123140102-d50d43e22138/go.mod h1:YAdIeSyx8VEhDCtEaGOJLmWNpPaQ3x4vYSAj9Vrppdo=
github.com/breez/lnd v0.15.0-beta.rc6.0.20231122093500-0c939786ced7 h1:RLHCG90jBAE8wNCUFMeu7j4LNbXWdV8BOsVZtmsTFpk=
github.com/breez/lnd v0.15.0-beta.rc6.0.20231122093500-0c939786ced7/go.mod h1:AOHMNILUI56HaVlVMai+ComGHsxMzMMCoxqFwN0wmvw=
-github.com/breez/lntest v0.0.30-0.20240324204336-6f828e9fca8f h1:EnpiiJxDGFVO1waxiz/YTCn1sboN+O7gZJ6G9DbDlDk=
-github.com/breez/lntest v0.0.30-0.20240324204336-6f828e9fca8f/go.mod h1:TYaPUDOmJyag/+ezQFvMD3Qqwos8QIEE36CP06gwQUU=
github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ=
github.com/btcsuite/btcd v0.22.0-beta.0.20220111032746-97732e52810c/go.mod h1:tjmYdS6MLJ5/s0Fj4DbLgSbDHbEqLJrtnHecBFkdz5M=
github.com/btcsuite/btcd v0.22.0-beta.0.20220204213055-eaf0459ff879/go.mod h1:osu7EoKiL36UThEgzYPqdRaxeo0NU8VoXqgcnwpey0g=
diff --git a/cmd/lspd/grpc_server.go b/grpc_server.go
similarity index 99%
rename from cmd/lspd/grpc_server.go
rename to grpc_server.go
index 7ed190cb..1c30dc4b 100644
--- a/cmd/lspd/grpc_server.go
+++ b/grpc_server.go
@@ -1,4 +1,4 @@
-package main
+package lspd
import (
"context"
diff --git a/interceptor/email.go b/interceptor/email.go
index 8777cac3..eed70292 100644
--- a/interceptor/email.go
+++ b/interceptor/email.go
@@ -3,28 +3,24 @@ package interceptor
import (
"bytes"
"encoding/hex"
- "encoding/json"
"html/template"
"log"
- "os"
"strconv"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awserr"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/ses"
+ "github.com/breez/lspd/config"
)
const (
charset = "UTF-8"
)
-func addresses(a string) (addr []*string) {
- json.Unmarshal([]byte(a), &addr)
- return
-}
+var OpenChannelEmailConfig *config.Email
-func sendEmail(to, cc, from, content, subject string) error {
+func sendEmail(conf *config.Email, content, subject string) error {
sess, err := session.NewSession(&aws.Config{})
if err != nil {
@@ -35,8 +31,8 @@ func sendEmail(to, cc, from, content, subject string) error {
input := &ses.SendEmailInput{
Destination: &ses.Destination{
- CcAddresses: addresses(cc),
- ToAddresses: addresses(to),
+ CcAddresses: conf.Cc,
+ ToAddresses: conf.To,
},
Message: &ses.Message{
Body: &ses.Body{
@@ -50,7 +46,7 @@ func sendEmail(to, cc, from, content, subject string) error {
Data: aws.String(subject),
},
},
- Source: aws.String(from),
+ Source: aws.String(conf.From),
}
// Attempt to send the email.
result, err := svc.SendEmail(input)
@@ -79,54 +75,16 @@ func sendEmail(to, cc, from, content, subject string) error {
return nil
}
-func sendChannelMismatchNotification(nodeID string, notFakeChannels, closedChannels map[string]uint64) error {
- var html bytes.Buffer
-
- tpl := `
-
NodeID: {{ .NodeID }}
- {{ if .NotFakeChannels }}Channels not fake anynmore
- Channel Point | Height Hint |
- {{ range $key, $value := .NotFakeChannels }}{{ $key }} | {{ $value }} |
{{ end }}
-
{{ end }}
- {{ if .ClosedChannels }}Closed Channels
- Channel Point | Height Hint |
- {{ range $key, $value := .ClosedChannels }}{{ $key }} | {{ $value }} |
{{ end }}
-
{{ end }}
- `
- t, err := template.New("ChannelMismatchEmail").Parse(tpl)
- if err != nil {
- return err
- }
-
- if err := t.Execute(&html, struct {
- NodeID string
- NotFakeChannels map[string]uint64
- ClosedChannels map[string]uint64
- }{nodeID, notFakeChannels, closedChannels}); err != nil {
- return err
- }
-
- err = sendEmail(
- os.Getenv("CHANNELMISMATCH_NOTIFICATION_TO"),
- os.Getenv("CHANNELMISMATCH_NOTIFICATION_CC"),
- os.Getenv("CHANNELMISMATCH_NOTIFICATION_FROM"),
- html.String(),
- "Channel(s) Mismatch",
- )
- if err != nil {
- log.Printf("Error sending open channel email: %v", err)
- return err
- }
-
- return nil
-}
-
func sendOpenChannelEmailNotification(
paymentHash []byte, incomingAmountMsat int64,
destination []byte, capacity int64,
channelPoint string,
tag *string,
) error {
+ if OpenChannelEmailConfig == nil {
+ return nil
+ }
+
var html bytes.Buffer
tpl := `
@@ -160,9 +118,7 @@ func sendOpenChannelEmailNotification(
}
err = sendEmail(
- os.Getenv("OPENCHANNEL_NOTIFICATION_TO"),
- os.Getenv("OPENCHANNEL_NOTIFICATION_CC"),
- os.Getenv("OPENCHANNEL_NOTIFICATION_FROM"),
+ OpenChannelEmailConfig,
html.String(),
"Open Channel - Interceptor",
)
diff --git a/itest/bob_offline_test.go b/itest/bob_offline_test.go
index 8b214b70..00b5736c 100644
--- a/itest/bob_offline_test.go
+++ b/itest/bob_offline_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -13,32 +13,32 @@ func testFailureBobOffline(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -55,13 +55,13 @@ func testFailureBobOffline(p *testParams) {
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
_, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
assert.Contains(p.t, err.Error(), "WIRE_TEMPORARY_CHANNEL_FAILURE")
log.Printf("Starting breez client again")
p.BreezClient().Start()
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Alice paying again")
_, err = alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
diff --git a/itest/breez_client.go b/itest/breez_client.go
index d0df29b6..90f90838 100644
--- a/itest/breez_client.go
+++ b/itest/breez_client.go
@@ -2,16 +2,10 @@ package itest
import (
"crypto/sha256"
- "encoding/hex"
- "encoding/json"
"log"
- "math/rand"
"testing"
- "github.com/breez/lntest"
- "github.com/breez/lspd/lsps0"
- "github.com/breez/lspd/lsps0/jsonrpc"
- "github.com/breez/lspd/lsps2"
+ "github.com/breez/lspd/itest/lntest"
"github.com/btcsuite/btcd/btcec/v2"
"github.com/btcsuite/btcd/btcec/v2/ecdsa"
"github.com/btcsuite/btcd/chaincfg"
@@ -34,7 +28,7 @@ type generateInvoicesRequest struct {
innerAmountMsat uint64
outerAmountMsat uint64
description string
- lsp LspNode
+ lsp *LspdClient
}
type invoice struct {
@@ -90,7 +84,7 @@ func ContainsHopHint(t *testing.T, invoice string) bool {
return len(rawInvoice.RouteHints) > 0
}
-func AddHopHint(n BreezClient, invoice string, lsp LspNode, chanid lntest.ShortChannelID, amountMsat *uint64, cltvDelta uint16) string {
+func AddHopHint(n BreezClient, invoice string, lsp *LspdClient, chanid lntest.ShortChannelID, amountMsat *uint64, cltvDelta uint16) string {
rawInvoice, err := zpay32.Decode(invoice, &chaincfg.RegressionNetParams)
lntest.CheckError(n.Harness().T, err)
@@ -135,67 +129,3 @@ func AddHopHint(n BreezClient, invoice string, lsp LspNode, chanid lntest.ShortC
return newInvoice
}
-
-func Lsps2GetInfo(c BreezClient, l LspNode, req lsps2.GetInfoRequest) lsps2.GetInfoResponse {
- req.Version = lsps2.SupportedVersion
- r := lsps2RequestResponse(c, l, "lsps2.get_info", req)
- var resp lsps2.GetInfoResponse
- err := json.Unmarshal(r, &resp)
- lntest.CheckError(c.Harness().T, err)
-
- return resp
-}
-
-func Lsps2Buy(c BreezClient, l LspNode, req lsps2.BuyRequest) lsps2.BuyResponse {
- req.Version = lsps2.SupportedVersion
- r := lsps2RequestResponse(c, l, "lsps2.buy", req)
- var resp lsps2.BuyResponse
- err := json.Unmarshal(r, &resp)
- lntest.CheckError(c.Harness().T, err)
-
- return resp
-}
-
-func lsps2RequestResponse(c BreezClient, l LspNode, method string, req interface{}) []byte {
- id := RandStringBytes(32)
- peerId := hex.EncodeToString(l.NodeId())
- inner, err := json.Marshal(req)
- lntest.CheckError(c.Harness().T, err)
- outer, err := json.Marshal(&jsonrpc.Request{
- JsonRpc: jsonrpc.Version,
- Method: method,
- Id: id,
- Params: inner,
- })
- lntest.CheckError(c.Harness().T, err)
-
- log.Printf(string(outer))
- c.Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: peerId,
- Type: lsps0.Lsps0MessageType,
- Data: outer,
- })
-
- m := c.ReceiveCustomMessage()
- log.Printf(string(m.Data))
-
- var resp jsonrpc.Response
- err = json.Unmarshal(m.Data, &resp)
- lntest.CheckError(c.Harness().T, err)
-
- if resp.Id != id {
- c.Harness().T.Fatalf("Received custom message, but had different id")
- }
-
- return resp.Result
-}
-
-const letterBytes = "abcdefghijklmnopqrstuvwxyz"
-
-func RandStringBytes(n int) string {
- b := make([]byte, n)
- for i := range b {
- b[i] = letterBytes[rand.Intn(len(letterBytes))]
- }
- return string(b)
-}
diff --git a/itest/cln_breez_client.go b/itest/cln_breez_client.go
index e3ddbe1e..e5878165 100644
--- a/itest/cln_breez_client.go
+++ b/itest/cln_breez_client.go
@@ -14,8 +14,8 @@ import (
"sync"
"time"
- "github.com/breez/lntest"
"github.com/breez/lspd/cln_plugin/proto"
+ "github.com/breez/lspd/itest/lntest"
sphinx "github.com/lightningnetwork/lightning-onion"
"github.com/lightningnetwork/lnd/lnwire"
"github.com/lightningnetwork/lnd/record"
diff --git a/itest/cln_lspd_node.go b/itest/cln_lspd_node.go
index 361adbd5..e1c203f2 100644
--- a/itest/cln_lspd_node.go
+++ b/itest/cln_lspd_node.go
@@ -3,42 +3,21 @@ package itest
import (
"flag"
"fmt"
- "path/filepath"
- "sync"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
- "github.com/breez/lspd/notifications"
- lspd "github.com/breez/lspd/rpc"
- "github.com/btcsuite/btcd/btcec/v2"
- ecies "github.com/ecies/go/v2"
- "google.golang.org/grpc"
- "google.golang.org/grpc/credentials/insecure"
+ "github.com/breez/lspd/itest/lntest"
)
var clnPluginExec = flag.String(
"clnpluginexec", "", "full path to cln plugin wrapper binary",
)
-type ClnLspNode struct {
- harness *lntest.TestHarness
- lightningNode *lntest.ClnNode
- lspBase *lspBase
- logFilePath string
- runtime *clnLspNodeRuntime
- mtx sync.Mutex
- pluginBinary string
- pluginAddress string
+type ClnLspdNode struct {
+ Node *lntest.ClnNode
+ PluginAddress string
}
-type clnLspNodeRuntime struct {
- rpc lspd.ChannelOpenerClient
- notificationRpc notifications.NotificationsClient
- cleanups []*lntest.Cleanup
-}
-
-func NewClnLspdNode(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, name string, nodeConfig *config.NodeConfig) LspNode {
- scriptDir := h.GetDirectory("lspd")
+func NewClnLspdNode(h *lntest.TestHarness, m *lntest.Miner, name string) (lntest.LightningNode, *config.ClnConfig) {
pluginBinary := *clnPluginExec
pluginPort, err := lntest.GetPort()
if err != nil {
@@ -56,104 +35,12 @@ func NewClnLspdNode(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, nam
"--dev-allowdustreserve=true",
"--developer",
}
- lightningNode := lntest.NewClnNode(h, m, name, args...)
- cln := &config.ClnConfig{
+ node := lntest.NewClnNode(h, m, name, args...)
+ return node, &config.ClnConfig{
PluginAddress: pluginAddress,
- GrpcAddress: fmt.Sprintf("localhost:%d", lightningNode.GrpcPort()),
- CaCert: lightningNode.CaCertPath(),
- ClientCert: lightningNode.ClientCertPath(),
- ClientKey: lightningNode.ClientKeyPath(),
- }
- lspbase, err := newLspd(h, mem, name, nodeConfig, nil, cln)
- if err != nil {
- h.T.Fatalf("failed to initialize lspd")
- }
-
- logFilePath := filepath.Join(scriptDir, "lspd.log")
- h.RegisterLogfile(logFilePath, fmt.Sprintf("lspd-%s", name))
-
- lspNode := &ClnLspNode{
- harness: h,
- lightningNode: lightningNode,
- logFilePath: logFilePath,
- lspBase: lspbase,
- pluginBinary: pluginBinary,
- pluginAddress: pluginAddress,
- }
-
- h.AddStoppable(lspNode)
- return lspNode
-}
-
-func (c *ClnLspNode) Start() {
- c.mtx.Lock()
- defer c.mtx.Unlock()
-
- var cleanups []*lntest.Cleanup
- c.lspBase.Start(c.lightningNode, func(nc *config.NodeConfig) {})
- conn, err := grpc.Dial(
- c.lspBase.grpcAddress,
- grpc.WithTransportCredentials(insecure.NewCredentials()),
- grpc.WithPerRPCCredentials(&token{token: "hello"}),
- )
- if err != nil {
- lntest.PerformCleanup(cleanups)
- c.harness.T.Fatalf("failed to create grpc connection: %v", err)
+ GrpcAddress: fmt.Sprintf("localhost:%d", node.GrpcPort()),
+ CaCert: node.CaCertPath(),
+ ClientCert: node.ClientCertPath(),
+ ClientKey: node.ClientKeyPath(),
}
- cleanups = append(cleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: grpc conn", c.lspBase.name),
- Fn: conn.Close,
- })
-
- client := lspd.NewChannelOpenerClient(conn)
- notif := notifications.NewNotificationsClient(conn)
- c.runtime = &clnLspNodeRuntime{
- rpc: client,
- notificationRpc: notif,
- cleanups: cleanups,
- }
-}
-
-func (c *ClnLspNode) Stop() error {
- c.mtx.Lock()
- defer c.mtx.Unlock()
-
- if c.runtime != nil {
- lntest.PerformCleanup(c.runtime.cleanups)
- }
- c.lspBase.StopRuntime()
- c.runtime = nil
- return nil
-}
-
-func (c *ClnLspNode) Harness() *lntest.TestHarness {
- return c.harness
-}
-
-func (c *ClnLspNode) PublicKey() *btcec.PublicKey {
- return c.lspBase.pubkey
-}
-
-func (c *ClnLspNode) EciesPublicKey() *ecies.PublicKey {
- return c.lspBase.eciesPubkey
-}
-
-func (c *ClnLspNode) Rpc() lspd.ChannelOpenerClient {
- return c.runtime.rpc
-}
-
-func (c *ClnLspNode) NotificationsRpc() notifications.NotificationsClient {
- return c.runtime.notificationRpc
-}
-
-func (l *ClnLspNode) NodeId() []byte {
- return l.lightningNode.NodeId()
-}
-
-func (l *ClnLspNode) LightningNode() lntest.LightningNode {
- return l.lightningNode
-}
-
-func (l *ClnLspNode) PostgresBackend() *PostgresContainer {
- return l.lspBase.postgresBackend
}
diff --git a/itest/cltv_test.go b/itest/cltv_test.go
index bbe0f5c9..077ed00e 100644
--- a/itest/cltv_test.go
+++ b/itest/cltv_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -13,31 +13,31 @@ func testInvalidCltv(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -49,7 +49,7 @@ func testInvalidCltv(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
// Decrement the delay in the first hop, so the cltv delta will become 143 (too little)
route.Hops[0].Delay--
diff --git a/itest/config_test.go b/itest/config_test.go
deleted file mode 100644
index cf69ea8d..00000000
--- a/itest/config_test.go
+++ /dev/null
@@ -1,42 +0,0 @@
-package itest
-
-import (
- "encoding/hex"
- "log"
- "testing"
- "time"
-
- "github.com/breez/lntest"
- lspd "github.com/breez/lspd/rpc"
- "github.com/stretchr/testify/assert"
-)
-
-func TestConfigParameters(t *testing.T) {
- deadline, _ := t.Deadline()
- h := lntest.NewTestHarness(t, deadline)
- defer h.TearDown()
-
- m := lntest.NewMiner(h)
- m.Start()
-
- mem := NewMempoolApi(h)
- mem.Start()
-
- lsp := NewClnLspdNode(h, m, mem, "lsp", nil)
- lsp.Start()
-
- log.Printf("Waiting %v to allow lsp server to activate.", htlcInterceptorDelay)
- <-time.After(htlcInterceptorDelay)
-
- info, err := lsp.Rpc().ChannelInformation(
- h.Ctx,
- &lspd.ChannelInformationRequest{},
- )
-
- if err != nil {
- t.Fatalf("failed to get channelinformation: %v", err)
- }
-
- assert.Equal(t, hex.EncodeToString(lsp.LightningNode().NodeId()), info.Pubkey)
- assert.Equal(t, "lsp", info.Name)
-}
diff --git a/itest/dynamic_fee_test.go b/itest/dynamic_fee_test.go
index 7098add7..6be6fa9c 100644
--- a/itest/dynamic_fee_test.go
+++ b/itest/dynamic_fee_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -13,24 +13,28 @@ func testDynamicFeeFlow(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
- log.Printf("Getting channel information")
- SetFeeParams(p.lsp, []*FeeParamSetting{
- {
- Validity: time.Second * 3600,
- MinMsat: 3000000,
- Proportional: 1000,
+ log.Printf("Setting fee params")
+ p.Lspd().Client(0).SetFeeParams(
+ []*FeeParamSetting{
+ {
+ Validity: time.Second * 3600,
+ MinMsat: 3000000,
+ Proportional: 1000,
+ },
},
- },
)
- info := ChannelInformation(p.lsp)
+
+ log.Printf("Getting channel information")
+
+ info := p.Lspd().Client(0).ChannelInformation()
assert.Len(p.t, info.OpeningFeeParamsMenu, 1)
params := info.OpeningFeeParamsMenu[0]
assert.Equal(p.t, uint64(3000000), params.MinMsat)
@@ -38,22 +42,22 @@ func testDynamicFeeFlow(p *testParams) {
log.Printf("opening_fee_params: %+v", params)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(4200000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, params)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, params)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Testing some bad registrations")
- err := RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ err := p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -71,7 +75,7 @@ func testDynamicFeeFlow(p *testParams) {
}, true)
assert.Contains(p.t, err.Error(), "invalid opening_fee_params")
- err = RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ err = p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -89,7 +93,7 @@ func testDynamicFeeFlow(p *testParams) {
}, true)
assert.Contains(p.t, err.Error(), "invalid opening_fee_params")
- err = RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ err = p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -100,7 +104,7 @@ func testDynamicFeeFlow(p *testParams) {
}, true)
assert.Contains(p.t, err.Error(), "not enough fees")
- err = RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ err = p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -112,7 +116,7 @@ func testDynamicFeeFlow(p *testParams) {
// Now register the payment for real
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -125,7 +129,7 @@ func testDynamicFeeFlow(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
payResp, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
lntest.CheckError(p.t, err)
bobInvoice := p.BreezClient().Node().GetInvoice(payResp.PaymentHash)
diff --git a/itest/intercept_zero_conf_test.go b/itest/intercept_zero_conf_test.go
index bc8b82db..dc5c5528 100644
--- a/itest/intercept_zero_conf_test.go
+++ b/itest/intercept_zero_conf_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -15,32 +15,32 @@ func testOpenZeroConfChannelOnReceive(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -69,32 +69,32 @@ func testOpenZeroConfSingleHtlc(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -106,7 +106,7 @@ func testOpenZeroConfSingleHtlc(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
payResp, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
lntest.CheckError(p.t, err)
bobInvoice := p.BreezClient().Node().GetInvoice(payResp.PaymentHash)
diff --git a/itest/lnd_breez_client.go b/itest/lnd_breez_client.go
index c86be474..d898fee8 100644
--- a/itest/lnd_breez_client.go
+++ b/itest/lnd_breez_client.go
@@ -5,8 +5,8 @@ import (
"flag"
"sync"
- "github.com/breez/lntest"
- "github.com/breez/lntest/lnd"
+ "github.com/breez/lspd/itest/lntest"
+ "github.com/lightningnetwork/lnd/lnrpc"
"github.com/lightningnetwork/lnd/lnwire"
)
@@ -104,7 +104,7 @@ func (c *lndBreezClient) startChannelAcceptor(ctx context.Context) error {
}
private := request.ChannelFlags&uint32(lnwire.FFAnnounceChannel) == 0
- resp := &lnd.ChannelAcceptResponse{
+ resp := &lnrpc.ChannelAcceptResponse{
PendingChanId: request.PendingChanId,
Accept: private,
}
diff --git a/itest/lnd_lspd_node.go b/itest/lnd_lspd_node.go
index c8f81e90..362b40de 100644
--- a/itest/lnd_lspd_node.go
+++ b/itest/lnd_lspd_node.go
@@ -1,35 +1,13 @@
package itest
import (
- "encoding/hex"
"fmt"
- "sync"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
- "github.com/breez/lspd/notifications"
- lspd "github.com/breez/lspd/rpc"
- "github.com/btcsuite/btcd/btcec/v2"
- ecies "github.com/ecies/go/v2"
- "google.golang.org/grpc"
- "google.golang.org/grpc/credentials/insecure"
+ "github.com/breez/lspd/itest/lntest"
)
-type LndLspNode struct {
- harness *lntest.TestHarness
- lightningNode *lntest.LndNode
- lspBase *lspBase
- runtime *lndLspNodeRuntime
- mtx sync.Mutex
-}
-
-type lndLspNodeRuntime struct {
- rpc lspd.ChannelOpenerClient
- notificationRpc notifications.NotificationsClient
- cleanups []*lntest.Cleanup
-}
-
-func NewLndLspdNode(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, name string, nodeConfig *config.NodeConfig) LspNode {
+func NewLndLspdNode(h *lntest.TestHarness, m *lntest.Miner, name string) (*lntest.LndNode, *config.LndConfig) {
args := []string{
"--protocol.zero-conf",
"--protocol.option-scid-alias",
@@ -41,103 +19,10 @@ func NewLndLspdNode(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, nam
fmt.Sprintf("--bitcoin.timelockdelta=%d", lspCltvDelta),
}
- lightningNode := lntest.NewLndNode(h, m, name, args...)
- lnd := &config.LndConfig{
- Address: lightningNode.GrpcHost(),
- Cert: string(lightningNode.TlsCert()),
- Macaroon: hex.EncodeToString(lightningNode.Macaroon()),
- }
- lspBase, err := newLspd(h, mem, name, nodeConfig, lnd, nil)
- if err != nil {
- h.T.Fatalf("failed to initialize lspd")
- }
-
- lspNode := &LndLspNode{
- harness: h,
- lightningNode: lightningNode,
- lspBase: lspBase,
- }
-
- h.AddStoppable(lspNode)
- return lspNode
-}
-
-func (c *LndLspNode) Start() {
- c.mtx.Lock()
- defer c.mtx.Unlock()
- var cleanups []*lntest.Cleanup
- c.lspBase.Start(c.lightningNode, func(conf *config.NodeConfig) {
- conf.Lnd = &config.LndConfig{
- Address: c.lightningNode.GrpcHost(),
- Cert: string(c.lightningNode.TlsCert()),
- Macaroon: hex.EncodeToString(c.lightningNode.Macaroon()),
- }
- })
-
- conn, err := grpc.Dial(
- c.lspBase.grpcAddress,
- grpc.WithTransportCredentials(insecure.NewCredentials()),
- grpc.WithPerRPCCredentials(&token{token: "hello"}),
- )
- if err != nil {
- lntest.PerformCleanup(cleanups)
- c.harness.T.Fatalf("failed to create grpc connection: %v", err)
- }
- cleanups = append(cleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: grpc conn", c.lspBase.name),
- Fn: conn.Close,
- })
-
- client := lspd.NewChannelOpenerClient(conn)
- notifyClient := notifications.NewNotificationsClient(conn)
- c.runtime = &lndLspNodeRuntime{
- rpc: client,
- notificationRpc: notifyClient,
- cleanups: cleanups,
- }
-}
-
-func (c *LndLspNode) Stop() error {
- c.mtx.Lock()
- defer c.mtx.Unlock()
-
- if c.runtime != nil {
- lntest.PerformCleanup(c.runtime.cleanups)
+ node := lntest.NewLndNode(h, m, name, args...)
+ return node, &config.LndConfig{
+ Address: node.GrpcHost(),
+ Cert: string(node.TlsCertPath()),
+ Macaroon: string(node.MacaroonPath()),
}
-
- c.lspBase.StopRuntime()
- c.runtime = nil
- return nil
-}
-
-func (c *LndLspNode) Harness() *lntest.TestHarness {
- return c.harness
-}
-
-func (c *LndLspNode) PublicKey() *btcec.PublicKey {
- return c.lspBase.pubkey
-}
-
-func (c *LndLspNode) EciesPublicKey() *ecies.PublicKey {
- return c.lspBase.eciesPubkey
-}
-
-func (c *LndLspNode) Rpc() lspd.ChannelOpenerClient {
- return c.runtime.rpc
-}
-
-func (c *LndLspNode) NotificationsRpc() notifications.NotificationsClient {
- return c.runtime.notificationRpc
-}
-
-func (l *LndLspNode) NodeId() []byte {
- return l.lightningNode.NodeId()
-}
-
-func (l *LndLspNode) LightningNode() lntest.LightningNode {
- return l.lightningNode
-}
-
-func (l *LndLspNode) PostgresBackend() *PostgresContainer {
- return l.lspBase.postgresBackend
}
diff --git a/itest/lntest/README.md b/itest/lntest/README.md
new file mode 100644
index 00000000..7afbb444
--- /dev/null
+++ b/itest/lntest/README.md
@@ -0,0 +1,16 @@
+# lntest
+A testing framework for lightning nodes on regtest.
+
+## Features
+- [ ] Isolated testing environment
+- [ ] Create node in testing environment (choice which node/version you want)
+- [ ] Connect nodes (peering)
+- [ ] Deposit onchain funds
+- [ ] Open channel
+- [ ] Wait for channel to confirm
+- [ ] Check channel is in node's channel graph
+- [ ] Check node is in node's channel graph
+- [ ] Create invoice
+- [ ] Send payment
+- [ ] Create lsp (custom node) in testing environment
+
diff --git a/itest/lntest/basic_test.go b/itest/lntest/basic_test.go
new file mode 100644
index 00000000..cca31b7e
--- /dev/null
+++ b/itest/lntest/basic_test.go
@@ -0,0 +1,39 @@
+package lntest
+
+import (
+ "log"
+ "testing"
+ "time"
+)
+
+func TestOpenChannel(t *testing.T) {
+ deadline := time.Now().Add(time.Minute)
+ harness := NewTestHarness(t, deadline)
+ defer harness.TearDown()
+
+ log.Print("Initializing miner")
+ miner := NewMiner(harness)
+ miner.Start()
+
+ log.Print("Initializing Alice")
+ alice := NewClnNode(harness, miner, "Alice")
+ alice.Start()
+
+ log.Print("Initializing Bob")
+ bob := NewClnNode(harness, miner, "Bob")
+ bob.Start()
+
+ log.Print("Funding alice")
+ alice.Fund(10000000)
+
+ channelOptions := &OpenChannelOptions{
+ AmountSat: 1000000,
+ }
+
+ log.Print("Opening channel")
+ channel := alice.OpenChannel(bob, channelOptions)
+ miner.MineBlocks(6)
+
+ log.Print("Waiting for channel ready")
+ channel.WaitForChannelReady()
+}
diff --git a/itest/lntest/channel.go b/itest/lntest/channel.go
new file mode 100644
index 00000000..42289492
--- /dev/null
+++ b/itest/lntest/channel.go
@@ -0,0 +1,25 @@
+package lntest
+
+import (
+ "bytes"
+)
+
+type ChannelInfo struct {
+ From LightningNode
+ To LightningNode
+ FundingTxId []byte
+ FundingTxOutnum uint32
+}
+
+func (c *ChannelInfo) WaitForChannelReady() ShortChannelID {
+ c.From.WaitForChannelReady(c)
+ return c.To.WaitForChannelReady(c)
+}
+
+func (c *ChannelInfo) GetPeer(this LightningNode) LightningNode {
+ if bytes.Equal(this.NodeId(), c.From.NodeId()) {
+ return c.To
+ } else {
+ return c.From
+ }
+}
diff --git a/itest/lntest/cleanup.go b/itest/lntest/cleanup.go
new file mode 100644
index 00000000..d217652b
--- /dev/null
+++ b/itest/lntest/cleanup.go
@@ -0,0 +1,30 @@
+package lntest
+
+import "log"
+
+type CleanupFunc func() error
+
+type Cleanup struct {
+ Name string
+ Fn CleanupFunc
+}
+
+// Runs the cleanup functions in reverse order.
+func PerformCleanup(cleanups []*Cleanup) {
+ if cleanups == nil {
+ return
+ }
+
+ for i := len(cleanups) - 1; i >= 0; i-- {
+ c := cleanups[i]
+
+ if c == nil || c.Fn == nil {
+ continue
+ }
+
+ err := c.Fn()
+ if err != nil {
+ log.Printf("Cleanup '%s' error: %v", c.Name, err)
+ }
+ }
+}
diff --git a/itest/lntest/cln/client.go b/itest/lntest/cln/client.go
new file mode 100644
index 00000000..96b7aca4
--- /dev/null
+++ b/itest/lntest/cln/client.go
@@ -0,0 +1,17 @@
+package cln
+
+import (
+ "github.com/breez/lspd/cln/rpc"
+ "google.golang.org/grpc"
+ "google.golang.org/grpc/credentials/insecure"
+)
+
+func NewClnClient(address string) (rpc.NodeClient, error) {
+ conn, err := grpc.Dial(address, grpc.WithTransportCredentials(insecure.NewCredentials()))
+ if err != nil {
+ return nil, err
+ }
+
+ client := rpc.NewNodeClient(conn)
+ return client, nil
+}
diff --git a/itest/lntest/cln_node.go b/itest/lntest/cln_node.go
new file mode 100644
index 00000000..d2ba17e5
--- /dev/null
+++ b/itest/lntest/cln_node.go
@@ -0,0 +1,775 @@
+package lntest
+
+import (
+ "bufio"
+ "bytes"
+ "crypto/tls"
+ "crypto/x509"
+ "encoding/binary"
+ "encoding/hex"
+ "fmt"
+ "io"
+ "log"
+ "os"
+ "os/exec"
+ "path/filepath"
+ "regexp"
+ "runtime"
+ "sync"
+ "syscall"
+ "time"
+
+ "github.com/breez/lspd/cln/rpc"
+ "github.com/btcsuite/btcd/btcec/v2"
+ "github.com/decred/dcrd/dcrec/secp256k1/v4"
+ "golang.org/x/exp/slices"
+ "google.golang.org/grpc"
+ "google.golang.org/grpc/credentials"
+)
+
+type ClnNode struct {
+ name string
+ binary string
+ args []string
+ regtestDir string
+ logfilePath string
+ nodeId []byte
+ harness *TestHarness
+ miner *Miner
+ dir string
+ host string
+ port uint32
+ grpcHost string
+ grpcPort uint32
+ caCertPath string
+ clientCertPath string
+ clientKeyPath string
+ privkey *secp256k1.PrivateKey
+ runtime *clnNodeRuntime
+ mtx sync.Mutex
+ timesStarted int
+ socketDir string
+ socketFile string
+}
+
+type clnNodeRuntime struct {
+ conn *grpc.ClientConn
+ rpc rpc.NodeClient
+ cmd *exec.Cmd
+ cleanups []*Cleanup
+ done chan struct{}
+}
+
+func NewClnNode(h *TestHarness, m *Miner, name string, extraArgs ...string) *ClnNode {
+ binary, err := GetLightningdBinary()
+ CheckError(h.T, err)
+
+ return NewClnNodeFromBinary(h, m, name, binary, extraArgs...)
+}
+
+func NewClnNodeFromBinary(h *TestHarness, m *Miner, name string, binary string, extraArgs ...string) *ClnNode {
+ lightningdDir := h.GetDirectory(fmt.Sprintf("ld-%s", name))
+ regtestDir := filepath.Join(lightningdDir, "regtest")
+ logfilePath := filepath.Join(regtestDir, "log")
+ host := "localhost"
+ port, err := GetPort()
+ CheckError(h.T, err)
+
+ grpcPort, err := GetPort()
+ CheckError(h.T, err)
+
+ bitcoinCliBinary, err := GetBitcoinCliBinary()
+ CheckError(h.T, err)
+
+ privKey, err := btcec.NewPrivateKey()
+ CheckError(h.T, err)
+
+ s := privKey.Serialize()
+ p := privKey.PubKey().SerializeCompressed()
+ args := append([]string{
+ "--network=regtest",
+ "--log-file=log",
+ "--log-level=debug",
+ "--bitcoin-rpcuser=btcuser",
+ "--bitcoin-rpcpassword=btcpass",
+ "--dev-bitcoind-poll=1",
+ "--dev-fast-gossip",
+ "--dev-fast-reconnect",
+ "--developer",
+
+ fmt.Sprintf("--dev-force-privkey=%x", s),
+ fmt.Sprintf("--lightning-dir=%s", lightningdDir),
+ fmt.Sprintf("--bitcoin-datadir=%s", m.dir),
+ fmt.Sprintf("--addr=%s:%d", host, port),
+ fmt.Sprintf("--grpc-port=%d", grpcPort),
+ fmt.Sprintf("--bitcoin-rpcport=%d", m.rpcPort),
+ fmt.Sprintf("--bitcoin-cli=%s", bitcoinCliBinary),
+ }, extraArgs...)
+
+ node := &ClnNode{
+ name: name,
+ binary: binary,
+ args: args,
+ regtestDir: regtestDir,
+ logfilePath: logfilePath,
+ nodeId: p,
+ harness: h,
+ miner: m,
+ dir: lightningdDir,
+ port: port,
+ host: host,
+ grpcHost: host,
+ grpcPort: grpcPort,
+ caCertPath: filepath.Join(regtestDir, "ca.pem"),
+ clientCertPath: filepath.Join(regtestDir, "client.pem"),
+ clientKeyPath: filepath.Join(regtestDir, "client-key.pem"),
+ privkey: privKey,
+ socketDir: regtestDir,
+ socketFile: "lightning-rpc",
+ }
+
+ h.AddStoppable(node)
+ h.RegisterLogfile(filepath.Join(regtestDir, "log"), fmt.Sprintf("lightningd-%s", name))
+
+ return node
+}
+
+func (n *ClnNode) Start() {
+ n.mtx.Lock()
+ defer n.mtx.Unlock()
+
+ if n.runtime != nil {
+ log.Printf("%s: Start called, but was already started.", n.name)
+ return
+ }
+
+ var cleanups []*Cleanup
+ cmd := exec.CommandContext(n.harness.Ctx, n.binary, n.args...)
+ cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
+ stderr, err := cmd.StderrPipe()
+ CheckError(n.harness.T, err)
+
+ stdout, err := cmd.StdoutPipe()
+ CheckError(n.harness.T, err)
+
+ log.Printf("%s: starting %s on port %d in dir %s...", n.name, n.binary, n.port, n.dir)
+ err = cmd.Start()
+ CheckError(n.harness.T, err)
+
+ done := make(chan struct{})
+ cleanups = append(cleanups, &Cleanup{
+ Name: "cmd",
+ Fn: func() error {
+ proc := cmd.Process
+ if proc != nil {
+ sig := syscall.SIGINT
+ if runtime.GOOS == "windows" {
+ sig = syscall.SIGKILL
+ }
+
+ return syscall.Kill(-proc.Pid, sig)
+ }
+
+ <-done
+ return nil
+ },
+ })
+
+ go func() {
+ // print any stderr output to the test log
+ scanner := bufio.NewScanner(stderr)
+ for scanner.Scan() {
+ log.Println(n.name + ": " + scanner.Text())
+ }
+ }()
+
+ go func() {
+ // print any stderr output to the test log
+ scanner := bufio.NewScanner(stdout)
+ for scanner.Scan() {
+ log.Println(n.name + ": " + scanner.Text())
+ }
+ }()
+
+ go func() {
+ err := cmd.Wait()
+ if err != nil && err.Error() != "signal: interrupt" {
+ log.Printf("%s: lightningd exited with error %s", n.name, err)
+ } else {
+ log.Printf("%s: process exited normally", n.name)
+ }
+ close(done)
+ }()
+
+ err = n.waitForLog("Server started with public key")
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: Error waiting for cln to start: %v", n.name, err)
+ }
+ n.timesStarted += 1
+
+ pemServerCA, err := os.ReadFile(n.caCertPath)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: Failed to read ca.pem: %v", n.name, err)
+ }
+
+ certPool := x509.NewCertPool()
+ if !certPool.AppendCertsFromPEM(pemServerCA) {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: failed to add server CA's certificate", n.name)
+ }
+
+ clientCert, err := tls.LoadX509KeyPair(
+ n.clientCertPath,
+ n.clientKeyPath,
+ )
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: Failed to load LoadX509KeyPair: %v", n.name, err)
+ }
+
+ tlsConfig := &tls.Config{
+ RootCAs: certPool,
+ Certificates: []tls.Certificate{clientCert},
+ }
+
+ tlsCredentials := credentials.NewTLS(tlsConfig)
+
+ grpcAddress := fmt.Sprintf("%s:%d", n.host, n.grpcPort)
+ conn, err := grpc.Dial(
+ grpcAddress,
+ grpc.WithTransportCredentials(tlsCredentials),
+ )
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: Failed to obtain grpc client: %v", n.name, err)
+ }
+ cleanups = append(cleanups, &Cleanup{
+ Name: "grpc conn",
+ Fn: conn.Close,
+ })
+
+ client := rpc.NewNodeClient(conn)
+ info, err := client.Getinfo(n.harness.Ctx, &rpc.GetinfoRequest{})
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: Failed to call Getinfo: %v", n.name, err)
+ }
+ log.Printf("%s: Has node id %x", n.name, info.Id)
+
+ n.runtime = &clnNodeRuntime{
+ conn: conn,
+ rpc: client,
+ cmd: cmd,
+ cleanups: cleanups,
+ done: done,
+ }
+}
+
+func (n *ClnNode) Stop() error {
+ n.mtx.Lock()
+ defer n.mtx.Unlock()
+
+ if n.runtime == nil {
+ log.Printf("%s: Stop called, but was already stopped.", n.name)
+ return nil
+ }
+
+ PerformCleanup(n.runtime.cleanups)
+ n.runtime = nil
+ return nil
+}
+
+func (n *ClnNode) waitForLog(phrase string) error {
+ logfilePath := filepath.Join(n.dir, "regtest", "log")
+ // at startup we need to wait for the file to open
+ for time.Now().Before(n.harness.Deadline()) {
+ if _, err := os.Stat(logfilePath); os.IsNotExist(err) {
+ <-time.After(waitSleepInterval)
+ continue
+ }
+ break
+ }
+ logfile, _ := os.Open(logfilePath)
+ defer logfile.Close()
+
+ reader := bufio.NewReader(logfile)
+ counted := 0
+ for time.Now().Before(n.harness.Deadline()) {
+ line, err := reader.ReadString('\n')
+ if err != nil {
+ if err == io.EOF {
+ <-time.After(waitSleepInterval)
+ } else {
+ return err
+ }
+ }
+ m, err := regexp.MatchString(phrase, line)
+ if err != nil {
+ return err
+ }
+
+ if m {
+ if counted == n.timesStarted {
+ return nil
+ }
+
+ counted += 1
+ }
+ }
+
+ return fmt.Errorf("unable to find \"%s\" in %s", phrase, logfilePath)
+}
+
+func (n *ClnNode) NodeId() []byte {
+ return n.nodeId
+}
+
+func (n *ClnNode) Host() string {
+ return n.host
+}
+
+func (n *ClnNode) Port() uint32 {
+ return n.port
+}
+
+func (n *ClnNode) PrivateKey() *secp256k1.PrivateKey {
+ return n.privkey
+}
+
+func (n *ClnNode) IsStarted() bool {
+ return n.runtime != nil
+}
+
+func (n *ClnNode) SocketDir() string {
+ return n.socketDir
+}
+
+func (n *ClnNode) SocketFile() string {
+ return n.socketFile
+}
+
+func (n *ClnNode) GrpcPort() uint32 {
+ return n.grpcPort
+}
+
+func (n *ClnNode) CaCertPath() string {
+ return n.caCertPath
+}
+
+func (n *ClnNode) ClientCertPath() string {
+ return n.clientCertPath
+}
+
+func (n *ClnNode) ClientKeyPath() string {
+ return n.clientKeyPath
+}
+
+func (n *ClnNode) WaitForSync() {
+ for {
+ info, _ := n.runtime.rpc.Getinfo(n.harness.Ctx, &rpc.GetinfoRequest{})
+
+ blockHeight := n.miner.GetBlockHeight()
+
+ if (info.WarningLightningdSync == nil || *info.WarningLightningdSync == "") &&
+ info.Blockheight >= blockHeight {
+ log.Printf("%s: Synced to blockheight %d", n.name, blockHeight)
+ break
+ }
+
+ log.Printf(
+ "%s: Waiting to sync. Actual block height: %d, node block height: %d",
+ n.name,
+ blockHeight,
+ info.Blockheight,
+ )
+
+ if time.Now().After(n.harness.Deadline()) {
+ n.harness.T.Fatal("timed out waiting for channel normal")
+ }
+
+ <-time.After(waitSleepInterval)
+ }
+}
+
+func (n *ClnNode) GetNewAddress() string {
+ addrResponse, err := n.runtime.rpc.NewAddr(
+ n.harness.Ctx,
+ &rpc.NewaddrRequest{
+ Addresstype: rpc.NewaddrRequest_BECH32.Enum(),
+ },
+ )
+ CheckError(n.harness.T, err)
+ return *addrResponse.Bech32
+}
+
+func (n *ClnNode) SendToAddress(addr string, amountSat uint64) {
+ prep, err := n.runtime.rpc.TxPrepare(n.harness.Ctx, &rpc.TxprepareRequest{
+ Outputs: []*rpc.OutputDesc{
+ {
+ Address: addr,
+ Amount: &rpc.Amount{
+ Msat: amountSat * 1000,
+ },
+ },
+ },
+ })
+ CheckError(n.harness.T, err)
+
+ _, err = n.runtime.rpc.TxSend(n.harness.Ctx, &rpc.TxsendRequest{
+ Txid: prep.Txid,
+ })
+ CheckError(n.harness.T, err)
+}
+
+func (n *ClnNode) Fund(amountSat uint64) {
+ addr := n.GetNewAddress()
+ n.miner.SendToAddressAndMine(addr, amountSat, 1)
+ n.WaitForSync()
+}
+
+func (n *ClnNode) ConnectPeer(peer LightningNode) {
+ host := peer.Host()
+ port := peer.Port()
+ _, err := n.runtime.rpc.ConnectPeer(n.harness.Ctx, &rpc.ConnectRequest{
+ Id: hex.EncodeToString(peer.NodeId()),
+ Host: &host,
+ Port: &port,
+ })
+ CheckError(n.harness.T, err)
+}
+
+func (n *ClnNode) OpenChannel(peer LightningNode, options *OpenChannelOptions) *ChannelInfo {
+ n.ConnectPeer(peer)
+
+ // open a channel
+ fundResult, err := n.runtime.rpc.FundChannel(n.harness.Ctx, &rpc.FundchannelRequest{
+ Id: peer.NodeId(),
+ Amount: &rpc.AmountOrAll{
+ Value: &rpc.AmountOrAll_Amount{
+ Amount: &rpc.Amount{
+ Msat: options.AmountSat * 1000,
+ },
+ },
+ },
+ Announce: &options.IsPublic,
+ })
+ CheckError(n.harness.T, err)
+
+ txid := reverseBytes(fundResult.Txid[:])
+ return &ChannelInfo{
+ From: n,
+ To: peer,
+ FundingTxId: txid,
+ FundingTxOutnum: fundResult.Outnum,
+ }
+}
+
+func (n *ClnNode) WaitForChannelReady(channel *ChannelInfo) ShortChannelID {
+ log.Printf("%s: Wait for channel ready.", n.name)
+ peerId := channel.GetPeer(n).NodeId()
+
+ for {
+ resp, err := n.runtime.rpc.ListPeerChannels(n.harness.Ctx, &rpc.ListpeerchannelsRequest{
+ Id: peerId,
+ })
+ CheckError(n.harness.T, err)
+ if resp.Channels == nil {
+ n.harness.T.Fatal("no channels for peer")
+ }
+
+ channelTxId := reverseBytes(channel.FundingTxId[:])
+ channelIndex := slices.IndexFunc(
+ resp.Channels,
+ func(pc *rpc.ListpeerchannelsChannels) bool {
+ return bytes.Equal(pc.FundingTxid, channelTxId) &&
+ *pc.FundingOutnum == channel.FundingTxOutnum
+ },
+ )
+ if channelIndex >= 0 {
+ peerChannel := resp.Channels[channelIndex]
+ if peerChannel.State == rpc.ListpeerchannelsChannels_CHANNELD_AWAITING_LOCKIN {
+ log.Printf("%s: Channel state is CHANNELD_AWAITING_LOCKIN, mining some blocks.", n.name)
+ n.miner.MineBlocks(6)
+ n.WaitForSync()
+ continue
+ }
+
+ return NewShortChanIDFromString(*peerChannel.ShortChannelId)
+ }
+
+ if time.Now().After(n.harness.Deadline()) {
+ n.harness.T.Fatal("timed out waiting for channel normal")
+ }
+
+ <-time.After(waitSleepInterval)
+ }
+}
+
+func (n *ClnNode) CreateBolt11Invoice(options *CreateInvoiceOptions) *CreateInvoiceResult {
+ label, err := GenerateRandomString()
+ CheckError(n.harness.T, err)
+
+ req := &rpc.InvoiceRequest{
+ Label: label,
+ AmountMsat: &rpc.AmountOrAny{
+ Value: &rpc.AmountOrAny_Amount{
+ Amount: &rpc.Amount{
+ Msat: options.AmountMsat,
+ },
+ },
+ },
+ }
+
+ if options.Description != nil {
+ req.Description = *options.Description
+ }
+
+ if options.Preimage != nil {
+ req.Preimage = *options.Preimage
+ }
+
+ if options.Cltv != nil {
+ req.Cltv = options.Cltv
+ }
+
+ resp, err := n.runtime.rpc.Invoice(n.harness.Ctx, req)
+ CheckError(n.harness.T, err)
+
+ return &CreateInvoiceResult{
+ Bolt11: resp.Bolt11,
+ PaymentHash: resp.PaymentHash,
+ PaymentSecret: resp.PaymentSecret,
+ }
+}
+
+func (n *ClnNode) SignMessage(message []byte) []byte {
+ resp, err := n.runtime.rpc.SignMessage(n.harness.Ctx, &rpc.SignmessageRequest{
+ Message: hex.EncodeToString(message),
+ })
+ CheckError(n.harness.T, err)
+
+ return resp.Signature
+}
+
+func (n *ClnNode) Pay(bolt11 string) *PayResult {
+ rpcTimeout := getTimeoutSeconds(n.harness.T, n.harness.Deadline())
+ resp, err := n.runtime.rpc.Pay(n.harness.Ctx, &rpc.PayRequest{
+ Bolt11: bolt11,
+ RetryFor: &rpcTimeout,
+ })
+ CheckError(n.harness.T, err)
+
+ return &PayResult{
+ PaymentHash: resp.PaymentHash,
+ AmountMsat: resp.AmountMsat.Msat,
+ AmountSentMsat: resp.AmountSentMsat.Msat,
+ PaymentPreimage: resp.PaymentPreimage,
+ }
+}
+
+func (n *ClnNode) GetRoute(destination []byte, amountMsat uint64) *Route {
+ route, err := n.runtime.rpc.GetRoute(n.harness.Ctx, &rpc.GetrouteRequest{
+ Id: destination,
+ AmountMsat: &rpc.Amount{
+ Msat: amountMsat,
+ },
+ Riskfactor: 0,
+ })
+ CheckError(n.harness.T, err)
+
+ result := &Route{}
+ for _, hop := range route.Route {
+ result.Hops = append(result.Hops, &Hop{
+ Id: hop.Id,
+ Channel: NewShortChanIDFromString(hop.Channel),
+ AmountMsat: hop.AmountMsat.Msat,
+ Delay: uint16(hop.Delay),
+ })
+ }
+ return result
+}
+
+func (n *ClnNode) GetChannels() []*ChannelDetails {
+ resp, err := n.runtime.rpc.ListPeerChannels(n.harness.Ctx, &rpc.ListpeerchannelsRequest{})
+ CheckError(n.harness.T, err)
+
+ var result []*ChannelDetails
+ for _, c := range resp.Channels {
+ var s ShortChannelID = NewShortChanIDFromInt(0)
+ if c.ShortChannelId != nil {
+ s = NewShortChanIDFromString(*c.ShortChannelId)
+ }
+ var localAlias *ShortChannelID
+ var remoteAlias *ShortChannelID
+ if c.Alias != nil {
+ if c.Alias.Local != nil {
+ l := NewShortChanIDFromString(*c.Alias.Local)
+ localAlias = &l
+ }
+
+ if c.Alias.Remote != nil {
+ r := NewShortChanIDFromString(*c.Alias.Remote)
+ remoteAlias = &r
+ }
+ }
+ result = append(result, &ChannelDetails{
+ PeerId: c.PeerId,
+ ShortChannelID: s,
+ CapacityMsat: c.TotalMsat.Msat,
+ LocalReserveMsat: c.OurReserveMsat.Msat,
+ RemoteReserveMsat: c.TheirReserveMsat.Msat,
+ LocalSpendableMsat: c.SpendableMsat.Msat,
+ RemoteSpendableMsat: c.ReceivableMsat.Msat,
+ LocalAlias: localAlias,
+ RemoteAlias: remoteAlias,
+ })
+ }
+
+ return result
+}
+
+func (n *ClnNode) startPayViaRoute(amountMsat uint64, paymentHash []byte, paymentSecret []byte, route *Route) (*rpc.SendpayResponse, error) {
+ var sendPayRoute []*rpc.SendpayRoute
+ for _, hop := range route.Hops {
+ sendPayRoute = append(sendPayRoute, &rpc.SendpayRoute{
+ AmountMsat: &rpc.Amount{
+ Msat: hop.AmountMsat,
+ },
+ Id: hop.Id,
+ Delay: uint32(hop.Delay),
+ Channel: hop.Channel.String(),
+ })
+ }
+
+ resp, err := n.runtime.rpc.SendPay(n.harness.Ctx, &rpc.SendpayRequest{
+ Route: sendPayRoute,
+ PaymentHash: paymentHash,
+ AmountMsat: &rpc.Amount{
+ Msat: amountMsat,
+ },
+ PaymentSecret: paymentSecret,
+ })
+
+ return resp, err
+}
+
+func (n *ClnNode) PayViaRoute(
+ amountMsat uint64,
+ paymentHash []byte,
+ paymentSecret []byte,
+ route *Route,
+) (*PayResult, error) {
+ resp, err := n.startPayViaRoute(amountMsat, paymentHash, paymentSecret, route)
+ if err != nil {
+ return nil, err
+ }
+
+ t := getTimeoutSeconds(n.harness.T, n.harness.Deadline())
+ w, err := n.runtime.rpc.WaitSendPay(n.harness.Ctx, &rpc.WaitsendpayRequest{
+ PaymentHash: resp.PaymentHash,
+ Timeout: &t,
+ Partid: resp.Partid,
+ Groupid: resp.Groupid,
+ })
+ if err != nil {
+ return nil, err
+ }
+
+ return &PayResult{
+ PaymentHash: w.PaymentHash,
+ AmountMsat: w.AmountMsat.Msat,
+ AmountSentMsat: w.AmountSentMsat.Msat,
+ PaymentPreimage: w.PaymentPreimage,
+ }, nil
+}
+
+func (n *ClnNode) GetInvoice(paymentHash []byte) *GetInvoiceResponse {
+ resp, err := n.runtime.rpc.ListInvoices(n.harness.Ctx, &rpc.ListinvoicesRequest{
+ PaymentHash: paymentHash,
+ })
+ CheckError(n.harness.T, err)
+ if resp.Invoices == nil || len(resp.Invoices) == 0 {
+ return &GetInvoiceResponse{
+ Exists: false,
+ }
+ }
+ invoice := resp.Invoices[0]
+ return &GetInvoiceResponse{
+ Exists: true,
+ AmountMsat: invoice.AmountMsat.Msat,
+ AmountReceivedMsat: invoice.AmountReceivedMsat.Msat,
+ Bolt11: invoice.Bolt11,
+ Description: invoice.Description,
+ ExpiresAt: invoice.ExpiresAt,
+ PaidAt: invoice.PaidAt,
+ PayerNote: invoice.InvreqPayerNote,
+ PaymentHash: invoice.PaymentHash,
+ PaymentPreimage: invoice.PaymentPreimage,
+ IsPaid: invoice.Status == rpc.ListinvoicesInvoices_PAID,
+ IsExpired: invoice.Status == rpc.ListinvoicesInvoices_EXPIRED,
+ }
+}
+
+func (n *ClnNode) GetPeerFeatures(peerId []byte) map[uint32]string {
+ resp, err := n.runtime.rpc.ListPeers(n.harness.Ctx, &rpc.ListpeersRequest{
+ Id: peerId,
+ })
+ CheckError(n.harness.T, err)
+
+ r := make(map[uint32]string)
+ if len(resp.Peers) == 0 {
+ return r
+ }
+ node := resp.Peers[0]
+ return n.mapFeatures(node.Features)
+}
+
+func (n *ClnNode) GetRemoteNodeFeatures(nodeId []byte) map[uint32]string {
+ resp, err := n.runtime.rpc.ListNodes(n.harness.Ctx, &rpc.ListnodesRequest{
+ Id: nodeId,
+ })
+ CheckError(n.harness.T, err)
+
+ if len(resp.Nodes) == 0 {
+ return make(map[uint32]string)
+ }
+ node := resp.Nodes[0]
+ return n.mapFeatures(node.Features)
+}
+
+func (n *ClnNode) SendCustomMessage(req *CustomMsgRequest) {
+ nodeid, err := hex.DecodeString(req.PeerId)
+ CheckError(n.harness.T, err)
+
+ var t [2]byte
+ binary.BigEndian.PutUint16(t[:], uint16(req.Type))
+ msg := append(t[:], req.Data...)
+ _, err = n.runtime.rpc.SendCustomMsg(n.harness.Ctx, &rpc.SendcustommsgRequest{
+ NodeId: nodeid,
+ Msg: msg,
+ })
+ CheckError(n.harness.T, err)
+}
+
+func (n *ClnNode) mapFeatures(f []byte) map[uint32]string {
+ r := make(map[uint32]string)
+ for i := 0; i < len(f); i++ {
+ b := f[i]
+ for j := 0; j < 8; j++ {
+ if ((b >> j) & 1) != 0 {
+ r[uint32(i)*8+uint32(j)] = ""
+ }
+ }
+ }
+ return r
+}
+
+func reverseBytes(b []byte) []byte {
+ for i, j := 0, len(b)-1; i < j; i, j = i+1, j-1 {
+ b[i], b[j] = b[j], b[i]
+ }
+
+ return b
+}
diff --git a/itest/lntest/diagram.md b/itest/lntest/diagram.md
new file mode 100644
index 00000000..2978599f
--- /dev/null
+++ b/itest/lntest/diagram.md
@@ -0,0 +1,34 @@
+```
++-------------------------------------------------------------------------+
+| |
+| |
+| TestEnvironment |
+| |
+| |
+| |
+| |
+| +----------------+ +----------------+ |
+| | | | | |
+| | TestNode | | TestNode | |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+| +-------+--------+ +-------+--------+ |
+| | | |
+| | | |
+| +-------v---------------------v----------------------------+ |
+| | TestMiner | |
+| | | |
+| +----------------------------------------------------------+ |
+| |
+| |
+| |
+| |
+| |
++-------------------------------------------------------------------------+
+```
\ No newline at end of file
diff --git a/itest/lntest/harness.go b/itest/lntest/harness.go
new file mode 100644
index 00000000..e4bdee10
--- /dev/null
+++ b/itest/lntest/harness.go
@@ -0,0 +1,224 @@
+package lntest
+
+import (
+ "context"
+ "fmt"
+ "io"
+ "log"
+ "os"
+ "path/filepath"
+ "strings"
+ "sync"
+ "testing"
+ "time"
+
+ "go.uber.org/multierr"
+ "golang.org/x/exp/slices"
+)
+
+type TestHarness struct {
+ *testing.T
+ Ctx context.Context
+ cancel context.CancelFunc
+ deadline time.Time
+ Dir string
+ mtx sync.RWMutex
+ stoppables []Stoppable
+ cleanables []Cleanable
+ logFiles []*logFile
+ dumpLogs bool
+ preserveLogs bool
+ preserveState bool
+}
+
+type logFile struct {
+ path string
+ name string
+}
+
+type Stoppable interface {
+ Stop() error
+}
+
+type Cleanable interface {
+ Cleanup() error
+}
+
+type HarnessOption int
+
+const (
+ DumpLogs HarnessOption = 0
+ PreserveLogs HarnessOption = 1
+ PreserveState HarnessOption = 2
+)
+
+func NewTestHarness(t *testing.T, deadline time.Time, options ...HarnessOption) *TestHarness {
+ rootDir, err := GetTestRootDir()
+ CheckError(t, err)
+
+ testDir, err := os.MkdirTemp(*rootDir, "")
+ CheckError(t, err)
+
+ log.Printf("Testing directory for this harness: '%s'", testDir)
+ ctx, cancel := context.WithDeadline(context.Background(), deadline)
+ h := &TestHarness{
+ T: t,
+ Ctx: ctx,
+ cancel: cancel,
+ deadline: deadline,
+ Dir: testDir,
+ dumpLogs: slices.Contains(options, DumpLogs),
+ preserveLogs: slices.Contains(options, PreserveLogs) || GetPreserveLogs(),
+ preserveState: slices.Contains(options, PreserveState) || GetPreserveState(),
+ }
+
+ return h
+}
+
+func (h *TestHarness) Deadline() time.Time {
+ return h.deadline
+}
+
+func (h *TestHarness) GetDirectory(pattern string) string {
+ dir, err := os.MkdirTemp(h.Dir, pattern)
+ CheckError(h.T, err)
+
+ return dir
+}
+
+func (h *TestHarness) AddStoppable(stoppable Stoppable) {
+ h.mtx.Lock()
+ defer h.mtx.Unlock()
+ h.stoppables = append(h.stoppables, stoppable)
+}
+
+func (h *TestHarness) RegisterLogfile(path string, name string) {
+ h.mtx.Lock()
+ defer h.mtx.Unlock()
+ h.logFiles = append(h.logFiles, &logFile{path: path, name: name})
+}
+
+func (h *TestHarness) AddCleanable(cleanable Cleanable) {
+ h.mtx.Lock()
+ defer h.mtx.Unlock()
+ h.cleanables = append(h.cleanables, cleanable)
+}
+
+func (h *TestHarness) TearDown() {
+ h.mtx.Lock()
+ defer h.mtx.Unlock()
+
+ for _, stoppable := range h.stoppables {
+ err := stoppable.Stop()
+ if err != nil {
+ log.Printf("Failed to tear down artifact. Error: %v", err)
+ }
+ }
+
+ if h.dumpLogs {
+ for _, logFile := range h.logFiles {
+ var sb strings.Builder
+ sb.WriteString("*********************************************************\n")
+ sb.WriteString(fmt.Sprintf("Log dump for %s, path %s\n", logFile.name, logFile.path))
+ sb.WriteString("*****************************************************************************\n")
+ content, err := os.ReadFile(logFile.path)
+ if err == nil {
+ sb.Write(content)
+ }
+ sb.WriteString("\n")
+ sb.WriteString("*****************************************************************************\n")
+ sb.WriteString(fmt.Sprintf("End log dump for %s, path %s\n", logFile.name, logFile.path))
+ sb.WriteString("*****************************************************************************\n")
+ log.Print(sb.String())
+ }
+ }
+
+ err := h.cleanup()
+ if err != nil {
+ log.Printf("Harness cleanup failed. Error: %v", err)
+ }
+
+ h.cancel()
+}
+
+func (h *TestHarness) cleanup() error {
+ logsPath := filepath.Join(h.Dir, "logs")
+ err := os.MkdirAll(logsPath, os.ModePerm)
+ if err != nil {
+ log.Printf("Could not create preserve log directory %s. Error: %v", logsPath, err)
+ }
+
+ if h.preserveLogs {
+ for _, logFile := range h.logFiles {
+ src, err := os.Open(logFile.path)
+ if err != nil {
+ continue
+ }
+ logFileName := logFile.name
+ if !strings.HasSuffix(logFileName, ".log") {
+ logFileName += ".log"
+ }
+
+ dst, err := os.Create(filepath.Join(logsPath, logFileName))
+ if err != nil {
+ log.Printf("Could not preserve log %s with name %s, error: %v", logFile.path, logFileName, err)
+ continue
+ }
+
+ _, err = io.Copy(dst, src)
+ if err != nil {
+ log.Printf("Could not preserve log %s with name %s, error: %v", logFile.path, logFileName, err)
+ continue
+ }
+ }
+
+ log.Printf("Preserved logs in directory '%s'", logsPath)
+ }
+
+ if !h.preserveState {
+ var tempDir string
+ // Save the logs from being deleted.
+ if h.preserveLogs {
+ t, err := os.MkdirTemp("", "")
+ if err != nil {
+ log.Printf("Could not preserve logs, failed to create temporary dir.")
+ } else {
+ tempDir = t
+ defer os.RemoveAll(tempDir)
+ err = os.Rename(logsPath, filepath.Join(tempDir, "logs"))
+ if err != nil {
+ log.Printf("Could not preserve logs, failed to move to temporary dir.")
+ }
+ }
+ }
+
+ var err error
+ for _, cleanable := range h.cleanables {
+ err = multierr.Append(err, cleanable.Cleanup())
+ }
+
+ if err != nil {
+ log.Printf("Harness cleanup had errors: %+v", err)
+ }
+
+ err = os.RemoveAll(h.Dir)
+ if err != nil {
+ log.Printf("Failed to clean testing directory '%s'", h.Dir)
+ }
+
+ if h.preserveLogs {
+ // Move back the preserved logs.
+ err = os.Mkdir(h.Dir, os.ModePerm)
+ if err != nil {
+ log.Printf("Failed to recreate testing directory '%s' to preserve logs.", h.Dir)
+ }
+
+ err = os.Rename(filepath.Join(tempDir, "logs"), logsPath)
+ if err != nil {
+ log.Printf("Failed to preserve logs. Could not put back the logs directory.")
+ }
+ }
+ }
+
+ return err
+}
diff --git a/itest/lntest/lightning_node.go b/itest/lntest/lightning_node.go
new file mode 100644
index 00000000..be62ef3a
--- /dev/null
+++ b/itest/lntest/lightning_node.go
@@ -0,0 +1,167 @@
+package lntest
+
+import (
+ "fmt"
+ "strconv"
+ "strings"
+
+ "github.com/decred/dcrd/dcrec/secp256k1/v4"
+)
+
+type LightningNode interface {
+ Stoppable
+ NodeId() []byte
+ Host() string
+ Port() uint32
+ Start()
+ IsStarted() bool
+ PrivateKey() *secp256k1.PrivateKey
+
+ WaitForSync()
+ GetNewAddress() string
+ Fund(amountSat uint64)
+ ConnectPeer(peer LightningNode)
+ OpenChannel(peer LightningNode, options *OpenChannelOptions) *ChannelInfo
+ WaitForChannelReady(channel *ChannelInfo) ShortChannelID
+ CreateBolt11Invoice(options *CreateInvoiceOptions) *CreateInvoiceResult
+ SignMessage(message []byte) []byte
+ Pay(bolt11 string) *PayResult
+ GetRoute(destination []byte, amountMsat uint64) *Route
+ PayViaRoute(
+ amountMsat uint64,
+ paymentHash []byte,
+ paymentSecret []byte,
+ route *Route) (*PayResult, error)
+ GetInvoice(paymentHash []byte) *GetInvoiceResponse
+ GetPeerFeatures(peerId []byte) map[uint32]string
+ GetRemoteNodeFeatures(nodeId []byte) map[uint32]string
+ GetChannels() []*ChannelDetails
+ SendToAddress(addr string, amountSat uint64)
+ SendCustomMessage(req *CustomMsgRequest)
+}
+
+type OpenChannelOptions struct {
+ IsPublic bool
+ AmountSat uint64
+}
+
+type CreateInvoiceOptions struct {
+ AmountMsat uint64
+ Description *string
+ Preimage *[]byte
+ Cltv *uint32
+}
+
+type CreateInvoiceResult struct {
+ Bolt11 string
+ PaymentHash []byte
+ PaymentSecret []byte
+}
+
+type PayResult struct {
+ PaymentHash []byte
+ AmountMsat uint64
+ AmountSentMsat uint64
+ PaymentPreimage []byte
+}
+
+type Route struct {
+ Hops []*Hop
+}
+
+type Hop struct {
+ Id []byte
+ Channel ShortChannelID
+ AmountMsat uint64
+ Delay uint16
+}
+
+type PayViaRouteResponse struct {
+ PartId uint32
+}
+
+type WaitPaymentCompleteResponse struct {
+ PaymentHash []byte
+ AmountMsat uint64
+ Destination []byte
+ CreatedAt uint64
+ AmountSentMsat uint64
+ PaymentPreimage []byte
+}
+
+type InvoiceStatus int32
+
+const (
+ Invoice_UNPAID InvoiceStatus = 0
+ Invoice_PAID InvoiceStatus = 1
+ Invoice_EXPIRED InvoiceStatus = 2
+)
+
+type GetInvoiceResponse struct {
+ Exists bool
+ AmountMsat uint64
+ AmountReceivedMsat uint64
+ Bolt11 *string
+ Description *string
+ ExpiresAt uint64
+ PaidAt *uint64
+ PayerNote *string
+ PaymentHash []byte
+ PaymentPreimage []byte
+ IsPaid bool
+ IsExpired bool
+}
+
+type ShortChannelID struct {
+ BlockHeight uint32
+ TxIndex uint32
+ OutputIndex uint16
+}
+
+func NewShortChanIDFromInt(chanID uint64) ShortChannelID {
+ return ShortChannelID{
+ BlockHeight: uint32(chanID >> 40),
+ TxIndex: uint32(chanID>>16) & 0xFFFFFF,
+ OutputIndex: uint16(chanID),
+ }
+}
+
+func NewShortChanIDFromString(chanID string) ShortChannelID {
+ split := strings.Split(chanID, "x")
+ bh, _ := strconv.ParseUint(split[0], 10, 32)
+ ti, _ := strconv.ParseUint(split[1], 10, 32)
+ oi, _ := strconv.ParseUint(split[2], 10, 16)
+
+ return ShortChannelID{
+ BlockHeight: uint32(bh),
+ TxIndex: uint32(ti),
+ OutputIndex: uint16(oi),
+ }
+}
+
+func (c ShortChannelID) ToUint64() uint64 {
+ return ((uint64(c.BlockHeight) << 40) | (uint64(c.TxIndex) << 16) |
+ (uint64(c.OutputIndex)))
+}
+
+func (c ShortChannelID) String() string {
+ return fmt.Sprintf("%dx%dx%d", c.BlockHeight, c.TxIndex, c.OutputIndex)
+}
+
+type ChannelDetails struct {
+ PeerId []byte
+ ShortChannelID ShortChannelID
+ CapacityMsat uint64
+ LocalReserveMsat uint64
+ RemoteReserveMsat uint64
+ LocalSpendableMsat uint64
+ RemoteSpendableMsat uint64
+ LocalAlias *ShortChannelID
+ RemoteAlias *ShortChannelID
+}
+
+type CustomMsgRequest struct {
+ PeerId string
+ Type uint32
+ Data []byte
+}
diff --git a/itest/lntest/lnd_node.go b/itest/lntest/lnd_node.go
new file mode 100644
index 00000000..5ff8abeb
--- /dev/null
+++ b/itest/lntest/lnd_node.go
@@ -0,0 +1,925 @@
+package lntest
+
+import (
+ "context"
+ "encoding/hex"
+ "fmt"
+ "log"
+ "os"
+ "os/exec"
+ "path/filepath"
+ "runtime"
+ "strconv"
+ "strings"
+ "sync"
+ "syscall"
+ "time"
+
+ "github.com/btcsuite/btcd/btcec/v2"
+ "github.com/btcsuite/btcd/btcutil/hdkeychain"
+ "github.com/btcsuite/btcd/chaincfg"
+ "github.com/btcsuite/btcd/chaincfg/chainhash"
+ "github.com/decred/dcrd/dcrec/secp256k1/v4"
+ "github.com/lightningnetwork/lnd/aezeed"
+ "github.com/lightningnetwork/lnd/lnrpc"
+ "github.com/lightningnetwork/lnd/lnrpc/routerrpc"
+ "golang.org/x/exp/slices"
+ "google.golang.org/grpc"
+ "google.golang.org/grpc/credentials"
+)
+
+type LndNode struct {
+ name string
+ binary string
+ args []string
+ nodeId []byte
+ harness *TestHarness
+ miner *Miner
+ dir string
+ host string
+ port uint32
+ grpcHost string
+ grpcPort uint32
+ grpcAddress string
+ tlsCert []byte
+ macaroon []byte
+ privkey *secp256k1.PrivateKey
+ walletPassword []byte
+ isInitialized bool
+ logFilePath string
+ runtime *lndNodeRuntime
+ mtx sync.Mutex
+}
+
+type lndNodeRuntime struct {
+ cmd *exec.Cmd
+ conn *grpc.ClientConn
+ rpc lnrpc.LightningClient
+ routerrpc routerrpc.RouterClient
+ logFile *os.File
+ cleanups []*Cleanup
+ done chan struct{}
+}
+
+func NewLndNode(h *TestHarness, m *Miner, name string, extraArgs ...string) *LndNode {
+ binary, err := GetLndBinary()
+ CheckError(h.T, err)
+
+ return NewLndNodeFromBinary(h, m, name, binary, extraArgs...)
+}
+
+func NewLndNodeFromBinary(h *TestHarness, m *Miner, name string, binary string, extraArgs ...string) *LndNode {
+ lndDir := h.GetDirectory(fmt.Sprintf("lnd-%s", name))
+ log.Printf("%s: Creating LND node in dir %s", name, lndDir)
+ host := "127.0.0.1"
+ port, err := GetPort()
+ CheckError(h.T, err)
+
+ grpcPort, err := GetPort()
+ CheckError(h.T, err)
+
+ restPort, err := GetPort()
+ CheckError(h.T, err)
+
+ grpcAddress := fmt.Sprintf("%s:%d", host, grpcPort)
+ restAddress := fmt.Sprintf("%s:%d", host, restPort)
+ args := append([]string{
+ fmt.Sprintf("--lnddir=%s", lndDir),
+ "--debuglevel=debug",
+ "--nobootstrap",
+ fmt.Sprintf("--rpclisten=%s", grpcAddress),
+ fmt.Sprintf("--restlisten=%s", restAddress),
+ fmt.Sprintf("--listen=%s:%d", host, port),
+ fmt.Sprintf("--trickledelay=%d", 50),
+ "--keep-failed-payment-attempts",
+ "--bitcoin.active",
+ "--bitcoin.node=bitcoind",
+ "--bitcoin.regtest",
+ fmt.Sprintf("--bitcoind.rpchost=localhost:%d", m.rpcPort),
+ fmt.Sprintf("--bitcoind.rpcuser=%s", m.rpcUser),
+ fmt.Sprintf("--bitcoind.rpcpass=%s", m.rpcPass),
+ fmt.Sprintf("--bitcoind.zmqpubrawblock=%s", m.zmqBlockAddress),
+ fmt.Sprintf("--bitcoind.zmqpubrawtx=%s", m.zmqTxAddress),
+ "--gossip.channel-update-interval=10ms",
+ "--db.batch-commit-interval=10ms",
+ }, extraArgs...)
+
+ logFilePath := filepath.Join(lndDir, "lnd-stdouterr.log")
+ node := &LndNode{
+ name: name,
+ binary: binary,
+ args: args,
+ harness: h,
+ miner: m,
+ dir: lndDir,
+ port: port,
+ host: host,
+ grpcHost: host,
+ grpcPort: grpcPort,
+ grpcAddress: grpcAddress,
+ logFilePath: logFilePath,
+ walletPassword: []byte("super-secret-password"),
+ }
+
+ h.AddStoppable(node)
+ h.RegisterLogfile(filepath.Join(lndDir, "logs", "bitcoin", "regtest", "lnd.log"), fmt.Sprintf("lnd-%s", name))
+ h.RegisterLogfile(logFilePath, fmt.Sprintf("lnd-stdout-%s", name))
+
+ return node
+}
+
+func (n *LndNode) Start() {
+ n.mtx.Lock()
+ defer n.mtx.Unlock()
+
+ if n.runtime != nil {
+ log.Printf("%s: Start called, but was already started.", n.name)
+ return
+ }
+
+ var cleanups []*Cleanup
+ cmd := exec.CommandContext(n.harness.Ctx, n.binary, n.args...)
+ cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
+ logFile, err := os.OpenFile(
+ n.logFilePath,
+ os.O_RDWR|os.O_CREATE|os.O_APPEND,
+ 0666,
+ )
+ CheckError(n.harness.T, err)
+ cleanups = append(cleanups, &Cleanup{
+ Name: fmt.Sprintf("%s: logfile", n.name),
+ Fn: logFile.Close,
+ })
+ cmd.Stdout = logFile
+ cmd.Stderr = logFile
+ log.Printf("%s: starting %s on port %d in dir %s...", n.name, n.binary, n.port, n.dir)
+
+ err = cmd.Start()
+ if err != nil {
+ PerformCleanup(cleanups)
+ log.Fatalf("%s: Failed to start LND: %v", n.name, err)
+ }
+
+ done := make(chan struct{})
+ cleanups = append(cleanups, &Cleanup{
+ Name: "cmd",
+ Fn: func() error {
+ proc := cmd.Process
+ if proc != nil {
+ sig := syscall.SIGINT
+ if runtime.GOOS == "windows" {
+ sig = syscall.SIGKILL
+ }
+
+ return syscall.Kill(-proc.Pid, sig)
+ }
+
+ <-done
+ return nil
+ },
+ })
+
+ go func() {
+ err := cmd.Wait()
+ if err != nil && err.Error() != "signal: interrupt" {
+ log.Printf("%s: lnd exited with error %s", n.name, err)
+ } else {
+ log.Printf("%s: process exited normally.", n.name)
+ }
+ close(done)
+ }()
+
+ tlsCert, tlsCreds, err := n.waitForTlsCert()
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: %v", n.name, err)
+ }
+ n.tlsCert = tlsCert
+
+ opts := []grpc.DialOption{
+ grpc.WithBlock(),
+ grpc.WithTransportCredentials(tlsCreds),
+ }
+
+ tmpConn, err := grpc.DialContext(n.harness.Ctx, n.grpcAddress, opts...)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: failed to create grpc connection: %v", n.name, err)
+ }
+ defer tmpConn.Close()
+
+ err = n.waitServerStarted(tmpConn)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: waitServerStarted: %v", n.name, err)
+ }
+
+ if n.isInitialized {
+ err = n.unlockWallet(tmpConn)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: unlockWallet: %v", n.name, err)
+ }
+ } else {
+ mac, priv, _, err := n.initWallet(tmpConn)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: initWallet: %v", n.name, err)
+ }
+ n.macaroon = mac
+ n.privkey = priv
+ n.isInitialized = true
+ }
+
+ err = n.waitServerActive(tmpConn)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: waitServerActive: %v", n.name, err)
+ }
+
+ macCred := NewMacaroonCredential(n.macaroon)
+ opts = append(opts, grpc.WithPerRPCCredentials(macCred))
+
+ conn, err := grpc.DialContext(n.harness.Ctx, n.grpcAddress, opts...)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: failed to create grpc connection: %v", n.name, err)
+ }
+ cleanups = append(cleanups, &Cleanup{
+ Name: fmt.Sprintf("%s: grpc conn", n.name),
+ Fn: conn.Close,
+ })
+
+ client := lnrpc.NewLightningClient(conn)
+ routerclient := routerrpc.NewRouterClient(conn)
+ info, err := client.GetInfo(n.harness.Ctx, &lnrpc.GetInfoRequest{})
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: failed to call getinfo: %v", n.name, err)
+ }
+
+ log.Printf("%s: Has node id %s", n.name, info.IdentityPubkey)
+
+ var features string
+ for i, f := range info.Features {
+ features += strconv.FormatUint(uint64(i), 10)
+ features += ":"
+ features += f.Name
+ }
+ log.Printf("%s: Has features: %s", n.name, features)
+ nodeId, err := hex.DecodeString(info.IdentityPubkey)
+ if err != nil {
+ PerformCleanup(cleanups)
+ n.harness.T.Fatalf("%s: failed to decode node id '%s': %v", n.name, info.IdentityPubkey, err)
+ }
+
+ n.nodeId = nodeId
+ n.runtime = &lndNodeRuntime{
+ cmd: cmd,
+ conn: conn,
+ rpc: client,
+ routerrpc: routerclient,
+ logFile: logFile,
+ cleanups: cleanups,
+ done: done,
+ }
+}
+
+func (n *LndNode) Stop() error {
+ n.mtx.Lock()
+ defer n.mtx.Unlock()
+
+ if n.runtime == nil {
+ log.Printf("%s: Stop called, but was already stopped.", n.name)
+ return nil
+ }
+
+ PerformCleanup(n.runtime.cleanups)
+ n.runtime = nil
+ return nil
+}
+
+func (n *LndNode) waitForTlsCert() ([]byte, credentials.TransportCredentials, error) {
+ tlsCertPath := filepath.Join(n.dir, "tls.cert")
+ var tlsCreds credentials.TransportCredentials
+ var err error
+ for {
+ tlsCreds, err = credentials.NewClientTLSFromFile(
+ tlsCertPath,
+ "",
+ )
+
+ if err == nil {
+ break
+ }
+
+ if time.Now().After(n.harness.Deadline()) {
+ return nil, nil, fmt.Errorf("tls.cert not created before timeout")
+ }
+
+ log.Printf("%s: Waiting for tls cert to appear. %v", n.name, err)
+ <-time.After(50 * time.Millisecond)
+ }
+
+ if err != nil {
+ return nil, nil, fmt.Errorf("hanging error after tls.cert appeared")
+ }
+
+ tlsCert, err := os.ReadFile(tlsCertPath)
+ if err != nil {
+ return nil, nil, fmt.Errorf("failed to read tls.cert file")
+ }
+
+ return tlsCert, tlsCreds, nil
+}
+
+func (n *LndNode) IsStarted() bool {
+ return n.runtime != nil
+}
+
+func (n *LndNode) NodeId() []byte {
+ return n.nodeId
+}
+
+func (n *LndNode) Host() string {
+ return n.host
+}
+
+func (n *LndNode) Port() uint32 {
+ return n.port
+}
+
+func (n *LndNode) PrivateKey() *secp256k1.PrivateKey {
+ return n.privkey
+}
+
+func (n *LndNode) TlsCert() []byte {
+ return n.tlsCert
+}
+
+func (n *LndNode) TlsCertPath() string {
+ return filepath.Join(n.dir, "tls.cert")
+}
+
+func (n *LndNode) Macaroon() []byte {
+ return n.macaroon
+}
+
+func (n *LndNode) MacaroonPath() string {
+ return filepath.Join(n.dir, "data/chain/bitcoin/regtest/admin.macaroon")
+}
+
+func (n *LndNode) GrpcHost() string {
+ return fmt.Sprintf("%s:%d", n.grpcHost, n.grpcPort)
+}
+
+func (n *LndNode) WaitForSync() {
+ for {
+ info, _ := n.runtime.rpc.GetInfo(n.harness.Ctx, &lnrpc.GetInfoRequest{})
+
+ blockHeight := n.miner.GetBlockHeight()
+
+ if info.BlockHeight >= blockHeight {
+ log.Printf("%s: Synced to blockheight %d", n.name, blockHeight)
+ break
+ }
+
+ log.Printf(
+ "%s: Waiting to sync. Actual block height: %d, node block height: %d",
+ n.name,
+ blockHeight,
+ info.BlockHeight,
+ )
+
+ if time.Now().After(n.harness.Deadline()) {
+ n.harness.T.Fatalf("%s: timed out waiting for channel normal", n.name)
+ }
+
+ <-time.After(waitSleepInterval)
+ }
+}
+
+func (n *LndNode) GetNewAddress() string {
+ addrResponse, err := n.runtime.rpc.NewAddress(
+ n.harness.Ctx,
+ &lnrpc.NewAddressRequest{
+ Type: lnrpc.AddressType_UNUSED_TAPROOT_PUBKEY,
+ },
+ )
+ CheckError(n.harness.T, err)
+ return addrResponse.Address
+}
+
+func (n *LndNode) SendToAddress(addr string, amountSat uint64) {
+ _, err := n.runtime.rpc.SendCoins(n.harness.Ctx, &lnrpc.SendCoinsRequest{
+ Addr: addr,
+ Amount: int64(amountSat),
+ })
+ CheckError(n.harness.T, err)
+}
+
+func (n *LndNode) Fund(amountSat uint64) {
+ addr := n.GetNewAddress()
+ n.miner.SendToAddressAndMine(addr, amountSat, 1)
+ n.WaitForSync()
+}
+
+func (n *LndNode) ConnectPeer(peer LightningNode) {
+ _, err := n.runtime.rpc.ConnectPeer(n.harness.Ctx, &lnrpc.ConnectPeerRequest{
+ Addr: &lnrpc.LightningAddress{
+ Pubkey: hex.EncodeToString(peer.NodeId()),
+ Host: fmt.Sprintf("%s:%d", peer.Host(), peer.Port()),
+ },
+ })
+
+ if err != nil && strings.Contains(err.Error(), "already connected to peer") {
+ return
+ }
+
+ CheckError(n.harness.T, err)
+}
+
+func (n *LndNode) OpenChannel(peer LightningNode, options *OpenChannelOptions) *ChannelInfo {
+ n.ConnectPeer(peer)
+
+ // open a channel
+ fundResult, err := n.runtime.rpc.OpenChannelSync(n.harness.Ctx, &lnrpc.OpenChannelRequest{
+ NodePubkey: peer.NodeId(),
+ LocalFundingAmount: int64(options.AmountSat),
+ Private: !options.IsPublic,
+ })
+ CheckError(n.harness.T, err)
+
+ return &ChannelInfo{
+ From: n,
+ To: peer,
+ FundingTxId: fundResult.GetFundingTxidBytes(),
+ FundingTxOutnum: fundResult.OutputIndex,
+ }
+}
+
+func (n *LndNode) WaitForChannelReady(channel *ChannelInfo) ShortChannelID {
+ peerId := channel.GetPeer(n).NodeId()
+ peerIdStr := hex.EncodeToString(peerId)
+ ch, err := chainhash.NewHash(channel.FundingTxId)
+ CheckError(n.harness.T, err)
+ txidStr := ch.String()
+
+ for {
+ lc, err := n.runtime.rpc.ListChannels(n.harness.Ctx, &lnrpc.ListChannelsRequest{
+ Peer: peerId,
+ })
+ CheckError(n.harness.T, err)
+
+ index := slices.IndexFunc(lc.Channels, func(c *lnrpc.Channel) bool {
+ s := strings.Split(c.ChannelPoint, ":")
+ txid := s[0]
+ out, err := strconv.ParseUint(s[1], 10, 32)
+ CheckError(n.harness.T, err)
+
+ return c.RemotePubkey == peerIdStr &&
+ txid == txidStr &&
+ out == uint64(channel.FundingTxOutnum)
+ })
+
+ if index >= 0 {
+ c := lc.Channels[index]
+ if c.Active {
+ if c.Private && len(c.AliasScids) > 0 {
+ return NewShortChanIDFromInt(c.AliasScids[0])
+ } else {
+ return NewShortChanIDFromInt(c.ChanId)
+ }
+ }
+ } else {
+
+ pending, err := n.runtime.rpc.PendingChannels(n.harness.Ctx, &lnrpc.PendingChannelsRequest{})
+ CheckError(n.harness.T, err)
+
+ pendingIndex := slices.IndexFunc(pending.PendingOpenChannels, func(c *lnrpc.PendingChannelsResponse_PendingOpenChannel) bool {
+ s := strings.Split(c.Channel.ChannelPoint, ":")
+ txid := s[0]
+ out, err := strconv.ParseUint(s[1], 10, 32)
+ CheckError(n.harness.T, err)
+ return c.Channel.RemoteNodePub == peerIdStr &&
+ txid == txidStr &&
+ out == uint64(channel.FundingTxOutnum)
+ })
+
+ if pendingIndex >= 0 {
+ log.Printf("%s: Channel is pending. Mining some blocks.", n.name)
+ n.miner.MineBlocks(6)
+ n.WaitForSync()
+ continue
+ }
+ }
+
+ if time.Now().After(n.harness.Deadline()) {
+ n.harness.T.Fatalf("%s: timed out waiting for channel normal", n.name)
+ }
+
+ <-time.After(waitSleepInterval)
+ }
+}
+func (n *LndNode) CreateBolt11Invoice(options *CreateInvoiceOptions) *CreateInvoiceResult {
+ req := &lnrpc.Invoice{
+ ValueMsat: int64(options.AmountMsat),
+ Private: true,
+ }
+
+ if options.Description != nil {
+ req.Memo = *options.Description
+ }
+
+ if options.Preimage != nil {
+ req.RPreimage = *options.Preimage
+ }
+
+ if options.Cltv != nil {
+ req.CltvExpiry = uint64(*options.Cltv)
+ }
+
+ resp, err := n.runtime.rpc.AddInvoice(n.harness.Ctx, req)
+ CheckError(n.harness.T, err)
+
+ return &CreateInvoiceResult{
+ Bolt11: resp.PaymentRequest,
+ PaymentHash: resp.RHash,
+ PaymentSecret: resp.PaymentAddr,
+ }
+}
+
+func (n *LndNode) SignMessage(message []byte) []byte {
+ resp, err := n.runtime.rpc.SignMessage(n.harness.Ctx, &lnrpc.SignMessageRequest{
+ Msg: message,
+ })
+ CheckError(n.harness.T, err)
+
+ sig, err := hex.DecodeString(resp.Signature)
+ CheckError(n.harness.T, err)
+
+ return sig
+}
+
+func (n *LndNode) Pay(bolt11 string) *PayResult {
+ ctx, cancel := context.WithCancel(n.harness.Ctx)
+ defer cancel()
+ resp, err := n.runtime.routerrpc.SendPaymentV2(ctx, &routerrpc.SendPaymentRequest{
+ PaymentRequest: bolt11,
+ TimeoutSeconds: 60,
+ FeeLimitSat: 10000,
+ CltvLimit: 2016,
+ })
+ CheckError(n.harness.T, err)
+
+ for {
+ payment, err := resp.Recv()
+ CheckError(n.harness.T, err)
+
+ switch payment.Status {
+ case lnrpc.Payment_SUCCEEDED:
+ paymentHash, err := hex.DecodeString(payment.PaymentHash)
+ CheckError(n.harness.T, err)
+ preimage, err := hex.DecodeString(payment.PaymentPreimage)
+ CheckError(n.harness.T, err)
+ return &PayResult{
+ PaymentHash: paymentHash,
+ AmountMsat: uint64(payment.ValueMsat),
+ AmountSentMsat: uint64(payment.ValueMsat + payment.FeeMsat),
+ PaymentPreimage: preimage,
+ }
+ case lnrpc.Payment_IN_FLIGHT:
+ if len(payment.Htlcs) > 0 {
+ attempt := payment.Htlcs[len(payment.Htlcs)-1]
+ if attempt.Failure != nil {
+ log.Printf("%s: htlc attempt %d failed with code %v from index %d", n.name, attempt.AttemptId, attempt.Failure.Code, attempt.Failure.FailureSourceIndex)
+ }
+ }
+ case lnrpc.Payment_FAILED:
+ n.harness.T.Fatalf("%s: payment failed with reason: %v", n.name, payment.FailureReason)
+ case lnrpc.Payment_UNKNOWN:
+ log.Printf("%s: got UNKNOWN payment update: %+v", n.name, payment)
+ }
+ }
+}
+
+func (n *LndNode) GetRoute(destination []byte, amountMsat uint64) *Route {
+ routes, err := n.runtime.rpc.QueryRoutes(n.harness.Ctx, &lnrpc.QueryRoutesRequest{
+ PubKey: hex.EncodeToString(destination),
+ AmtMsat: int64(amountMsat),
+ })
+ CheckError(n.harness.T, err)
+
+ if routes.Routes == nil || len(routes.Routes) == 0 {
+ CheckError(n.harness.T, fmt.Errorf("no route found"))
+ }
+
+ route := routes.Routes[0]
+ result := &Route{}
+ for _, hop := range route.Hops {
+ id, err := hex.DecodeString(hop.PubKey)
+ CheckError(n.harness.T, err)
+
+ result.Hops = append(result.Hops, &Hop{
+ Id: id,
+ Channel: NewShortChanIDFromInt(hop.ChanId),
+ AmountMsat: uint64(hop.AmtToForwardMsat),
+ Delay: uint16(hop.Expiry),
+ })
+ }
+
+ return result
+}
+
+func (n *LndNode) PayViaRoute(amountMsat uint64, paymentHash []byte, paymentSecret []byte, route *Route) (*PayResult, error) {
+ r := &lnrpc.Route{}
+
+ for _, hop := range route.Hops {
+ r.Hops = append(r.Hops, &lnrpc.Hop{
+ ChanId: hop.Channel.ToUint64(),
+ Expiry: uint32(hop.Delay),
+ PubKey: hex.EncodeToString(hop.Id),
+ AmtToForwardMsat: int64(hop.AmountMsat),
+ })
+ }
+
+ lh := r.Hops[len(r.Hops)-1]
+ lh.MppRecord = &lnrpc.MPPRecord{
+ TotalAmtMsat: int64(amountMsat),
+ PaymentAddr: paymentSecret,
+ }
+
+ resp, err := n.runtime.rpc.SendToRouteSync(n.harness.Ctx, &lnrpc.SendToRouteRequest{
+ PaymentHash: paymentHash,
+ Route: r,
+ })
+ if err != nil {
+ return nil, err
+ }
+
+ return &PayResult{
+ PaymentHash: resp.PaymentHash,
+ AmountMsat: uint64(resp.PaymentRoute.TotalAmtMsat) - uint64(resp.PaymentRoute.TotalFeesMsat),
+ AmountSentMsat: uint64(resp.PaymentRoute.TotalAmtMsat),
+ PaymentPreimage: resp.PaymentPreimage,
+ }, nil
+}
+
+func (n *LndNode) GetInvoice(paymentHash []byte) *GetInvoiceResponse {
+ resp, err := n.runtime.rpc.LookupInvoice(n.harness.Ctx, &lnrpc.PaymentHash{
+ RHash: paymentHash,
+ })
+ CheckError(n.harness.T, err)
+
+ var paidAt *uint64
+ if resp.SettleDate != 0 {
+ p := uint64(resp.SettleDate)
+ paidAt = &p
+ }
+
+ return &GetInvoiceResponse{
+ Exists: true,
+ AmountMsat: uint64(resp.ValueMsat),
+ AmountReceivedMsat: uint64(resp.AmtPaidMsat),
+ Bolt11: &resp.PaymentRequest,
+ Description: &resp.Memo,
+ ExpiresAt: uint64(resp.Expiry),
+ PaidAt: paidAt,
+ PaymentHash: resp.RHash,
+ PaymentPreimage: resp.RPreimage,
+ IsPaid: resp.State == lnrpc.Invoice_SETTLED,
+ IsExpired: resp.State == lnrpc.Invoice_CANCELED,
+ }
+}
+
+func (n *LndNode) GetPeerFeatures(peerId []byte) map[uint32]string {
+ pubkey := hex.EncodeToString(peerId)
+ resp, err := n.runtime.rpc.ListPeers(n.harness.Ctx, &lnrpc.ListPeersRequest{})
+ CheckError(n.harness.T, err)
+
+ for _, p := range resp.Peers {
+ if p.PubKey == pubkey {
+ return n.mapFeatures(p.Features)
+ }
+ }
+
+ return make(map[uint32]string)
+}
+
+func (n *LndNode) mapFeatures(features map[uint32]*lnrpc.Feature) map[uint32]string {
+ r := make(map[uint32]string)
+ for i, f := range features {
+ r[i] = f.Name
+ }
+
+ return r
+}
+
+func (n *LndNode) GetRemoteNodeFeatures(nodeId []byte) map[uint32]string {
+ resp, err := n.runtime.rpc.GetNodeInfo(n.harness.Ctx, &lnrpc.NodeInfoRequest{
+ PubKey: hex.EncodeToString(nodeId),
+ })
+ CheckError(n.harness.T, err)
+
+ r := make(map[uint32]string)
+ for i, f := range resp.Node.Features {
+ r[i] = f.Name
+ }
+
+ return r
+}
+
+func (n *LndNode) GetChannels() []*ChannelDetails {
+ channels, err := n.runtime.rpc.ListChannels(n.harness.Ctx, &lnrpc.ListChannelsRequest{})
+ CheckError(n.harness.T, err)
+
+ var result []*ChannelDetails
+ for _, c := range channels.Channels {
+ p, _ := hex.DecodeString(c.RemotePubkey)
+ var localAlias *ShortChannelID
+ var remoteAlias *ShortChannelID
+ if len(c.AliasScids) > 0 {
+ l := NewShortChanIDFromInt(c.AliasScids[0])
+ localAlias = &l
+ }
+ if len(c.AliasScids) > 1 {
+ r := NewShortChanIDFromInt(c.AliasScids[1])
+ remoteAlias = &r
+ }
+ result = append(result, &ChannelDetails{
+ PeerId: p,
+ ShortChannelID: NewShortChanIDFromInt(c.ChanId),
+ CapacityMsat: uint64(c.Capacity) * 1000,
+ LocalReserveMsat: c.LocalConstraints.ChanReserveSat * 1000,
+ RemoteReserveMsat: c.RemoteConstraints.ChanReserveSat * 1000,
+ LocalSpendableMsat: uint64(c.LocalBalance) - c.LocalConstraints.ChanReserveSat*1000,
+ RemoteSpendableMsat: uint64(c.RemoteBalance) - c.RemoteConstraints.ChanReserveSat*1000,
+ LocalAlias: localAlias,
+ RemoteAlias: remoteAlias,
+ })
+ }
+
+ return result
+}
+
+func (n *LndNode) Conn() grpc.ClientConnInterface {
+ return n.runtime.conn
+}
+
+func (n *LndNode) LightningClient() lnrpc.LightningClient {
+ return n.runtime.rpc
+}
+
+func (n *LndNode) SendCustomMessage(msg *CustomMsgRequest) {
+ peer, err := hex.DecodeString(msg.PeerId)
+ CheckError(n.harness.T, err)
+
+ _, err = n.runtime.rpc.SendCustomMessage(n.harness.Ctx, &lnrpc.SendCustomMessageRequest{
+ Peer: peer,
+ Type: msg.Type,
+ Data: msg.Data,
+ })
+ CheckError(n.harness.T, err)
+}
+
+func (n *LndNode) waitServerActive(conn grpc.ClientConnInterface) error {
+ log.Printf("%s: Waiting for LND rpc to be fully active.", n.name)
+ return n.waitServerState(conn, func(s lnrpc.WalletState) bool {
+ return s == lnrpc.WalletState_SERVER_ACTIVE
+ })
+}
+
+func (n *LndNode) waitServerStarted(conn grpc.ClientConnInterface) error {
+ log.Printf("%s: Waiting for LND rpc to start.", n.name)
+ return n.waitServerState(conn, func(s lnrpc.WalletState) bool {
+ return s != lnrpc.WalletState_WAITING_TO_START
+ })
+}
+
+func (n *LndNode) waitServerState(conn grpc.ClientConnInterface, pred func(s lnrpc.WalletState) bool) error {
+ state := lnrpc.NewStateClient(conn)
+ client, err := state.SubscribeState(n.harness.Ctx, &lnrpc.SubscribeStateRequest{})
+ if err != nil {
+ return fmt.Errorf("subscribe state failed: %w", err)
+ }
+
+ errChan := make(chan error, 1)
+ done := make(chan struct{})
+ go func() {
+ for {
+ resp, err := client.Recv()
+ if err != nil {
+ errChan <- err
+ return
+ }
+
+ log.Printf("%s: Wallet state: %v", n.name, resp.State)
+ if pred(resp.State) {
+ close(done)
+ return
+ }
+ }
+ }()
+
+ var lastErr error
+ for {
+ select {
+ case err := <-errChan:
+ lastErr = err
+
+ case <-done:
+ return nil
+
+ case <-time.After(time.Until(n.harness.Deadline())):
+ return fmt.Errorf("timeout waiting for wallet state. last error: %w", lastErr)
+ }
+ }
+}
+
+func (n *LndNode) unlockWallet(conn grpc.ClientConnInterface) error {
+ log.Printf("%s: Unlocking LND wallet.", n.name)
+ c := lnrpc.NewWalletUnlockerClient(conn)
+ _, err := c.UnlockWallet(n.harness.Ctx, &lnrpc.UnlockWalletRequest{
+ WalletPassword: n.walletPassword,
+ })
+
+ if err != nil {
+ return fmt.Errorf("failed to unlock wallet: %w", err)
+ }
+
+ return nil
+}
+
+func (n *LndNode) initWallet(conn grpc.ClientConnInterface) ([]byte, *secp256k1.PrivateKey, *btcec.PublicKey, error) {
+ log.Printf("%s: Initializing LND wallet.", n.name)
+ c := lnrpc.NewWalletUnlockerClient(conn)
+
+ seed, err := c.GenSeed(n.harness.Ctx, &lnrpc.GenSeedRequest{})
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to gen seed: %w", err)
+ }
+
+ resp, err := c.InitWallet(n.harness.Ctx, &lnrpc.InitWalletRequest{
+ WalletPassword: n.walletPassword,
+ CipherSeedMnemonic: seed.CipherSeedMnemonic,
+ StatelessInit: false,
+ })
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to init wallet: %w", err)
+ }
+
+ var mnemonic aezeed.Mnemonic
+ copy(mnemonic[:], seed.CipherSeedMnemonic)
+
+ cipherSeed, err := mnemonic.ToCipherSeed(nil)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to obtain cipherseed: %w", err)
+ }
+
+ rootKey, err := hdkeychain.NewMaster(
+ cipherSeed.Entropy[:],
+ &chaincfg.RegressionNetParams,
+ )
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to create master key: %w", err)
+ }
+
+ // node identity derivation path = "m/1017'/1'/6'/0/0"
+ k, err := rootKey.DeriveNonStandard(1017 + 2147483648)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to derive child 1: %w", err)
+ }
+ k, err = k.DeriveNonStandard(1 + 2147483648)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to derive child 2: %w", err)
+ }
+ k, err = hdkeychain.NewKeyFromString(k.String())
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to convert child 2 to/from string: %w", err)
+ }
+ k, err = k.DeriveNonStandard(6 + 2147483648)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to derive child 3: %w", err)
+ }
+ k, err = hdkeychain.NewKeyFromString(k.String())
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to convert child 3 to/from string: %w", err)
+ }
+ k, err = k.DeriveNonStandard(0)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to derive child 4: %w", err)
+ }
+ nodeKey, err := k.DeriveNonStandard(0)
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to derive child 5: %w", err)
+ }
+ privKey, err := nodeKey.ECPrivKey()
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to get ECPrivKey: %w", err)
+ }
+ pubKey, err := nodeKey.ECPubKey()
+ if err != nil {
+ return nil, nil, nil, fmt.Errorf("failed to get ECPubKey: %w", err)
+ }
+ return resp.AdminMacaroon, privKey, pubKey, nil
+}
diff --git a/itest/lntest/macaroon.go b/itest/lntest/macaroon.go
new file mode 100644
index 00000000..b7af0510
--- /dev/null
+++ b/itest/lntest/macaroon.go
@@ -0,0 +1,36 @@
+package lntest
+
+import (
+ "context"
+ "encoding/hex"
+ "os"
+)
+
+type MacaroonCredential struct {
+ Macaroon []byte
+}
+
+func NewMacaroonCredential(m []byte) *MacaroonCredential {
+ return &MacaroonCredential{
+ Macaroon: m,
+ }
+}
+
+func NewMacaroonCredentialFromFile(path string) (*MacaroonCredential, error) {
+ m, err := os.ReadFile(path)
+ if err != nil {
+ return nil, err
+ }
+
+ return NewMacaroonCredential(m), nil
+}
+
+func (m *MacaroonCredential) RequireTransportSecurity() bool {
+ return true
+}
+
+func (m *MacaroonCredential) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {
+ md := make(map[string]string)
+ md["macaroon"] = hex.EncodeToString(m.Macaroon)
+ return md, nil
+}
diff --git a/itest/lntest/miner.go b/itest/lntest/miner.go
new file mode 100644
index 00000000..996cf5e1
--- /dev/null
+++ b/itest/lntest/miner.go
@@ -0,0 +1,288 @@
+package lntest
+
+import (
+ "bufio"
+ "fmt"
+ "io"
+ "log"
+ "os"
+ "os/exec"
+ "path/filepath"
+ "regexp"
+ "runtime"
+ "strconv"
+ "sync"
+ "syscall"
+ "time"
+
+ "github.com/elementsproject/glightning/gbitcoin"
+)
+
+type Miner struct {
+ harness *TestHarness
+ binary string
+ args []string
+ dir string
+ rpcPort uint32
+ rpcUser string
+ rpcPass string
+ zmqBlockAddress string
+ zmqTxAddress string
+ isInitialized bool
+ timesStarted int
+ runtime *minerRuntime
+ mtx sync.Mutex
+}
+
+type minerRuntime struct {
+ rpc *gbitcoin.Bitcoin
+ cmd *exec.Cmd
+ cleanups []*Cleanup
+}
+
+func NewMiner(h *TestHarness) *Miner {
+ binary, err := GetBitcoindBinary()
+ CheckError(h.T, err)
+
+ return NewMinerFromBinary(h, binary)
+}
+
+func NewMinerFromBinary(h *TestHarness, binary string) *Miner {
+ btcUser := "btcuser"
+ btcPass := "btcpass"
+ bitcoindDir := h.GetDirectory("miner")
+ rpcPort, err := GetPort()
+ CheckError(h.T, err)
+
+ zmqBlockPort, err := GetPort()
+ CheckError(h.T, err)
+
+ zmqTxPort, err := GetPort()
+ CheckError(h.T, err)
+
+ host := "127.0.0.1"
+ zmqBlockAddress := fmt.Sprintf("tcp://%s:%d", host, zmqBlockPort)
+ zmqTxAddress := fmt.Sprintf("tcp://%s:%d", host, zmqTxPort)
+ args := []string{
+ "-regtest",
+ "-server",
+ "-logtimestamps",
+ "-nolisten",
+ "-addresstype=bech32",
+ "-txindex",
+ "-fallbackfee=0.00000253",
+ "-debug=mempool",
+ "-debug=rpc",
+ fmt.Sprintf("-datadir=%s", bitcoindDir),
+ fmt.Sprintf("-rpcport=%d", rpcPort),
+ fmt.Sprintf("-rpcpassword=%s", btcPass),
+ fmt.Sprintf("-rpcuser=%s", btcUser),
+ fmt.Sprintf("-zmqpubrawblock=%s", zmqBlockAddress),
+ fmt.Sprintf("-zmqpubrawtx=%s", zmqTxAddress),
+ }
+
+ miner := &Miner{
+ harness: h,
+ binary: binary,
+ args: args,
+ dir: bitcoindDir,
+ rpcPort: rpcPort,
+ rpcUser: btcUser,
+ rpcPass: btcPass,
+ zmqBlockAddress: zmqBlockAddress,
+ zmqTxAddress: zmqTxAddress,
+ }
+
+ h.AddStoppable(miner)
+ h.RegisterLogfile(filepath.Join(bitcoindDir, "regtest", "debug.log"), filepath.Base(bitcoindDir))
+ return miner
+}
+
+func (m *Miner) Start() {
+ m.mtx.Lock()
+ defer m.mtx.Unlock()
+
+ if m.runtime != nil {
+ log.Printf("miner: Start called, but was already started.")
+ return
+ }
+
+ var cleanups []*Cleanup
+ log.Printf("starting %s on rpc port %d in dir %s...", m.binary, m.rpcPort, m.dir)
+ cmd := exec.CommandContext(m.harness.Ctx, m.binary, m.args...)
+ cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
+ err := cmd.Start()
+ CheckError(m.harness.T, err)
+ cleanups = append(cleanups, &Cleanup{
+ Name: "miner: cmd",
+ Fn: func() error {
+ proc := cmd.Process
+ if proc == nil {
+ return nil
+ }
+
+ sig := syscall.SIGINT
+ if runtime.GOOS == "windows" {
+ sig = syscall.SIGKILL
+ }
+
+ err := syscall.Kill(-proc.Pid, sig)
+ if err != nil {
+ log.Printf("miner: Error sending signal %v: %v", sig, err)
+ }
+ state, err := proc.Wait()
+ if err != nil {
+ log.Printf("miner: Error waiting for process to complete. State %v: %v", state, err)
+ }
+
+ return err
+ },
+ })
+ err = m.waitForLog("init message: Done loading")
+ if err != nil {
+ PerformCleanup(cleanups)
+ m.harness.T.Fatalf("Error waiting for bitcoind to start: %v", err)
+ }
+ m.timesStarted += 1
+
+ log.Printf("miner: bitcoind started (%d)!", cmd.Process.Pid)
+
+ rpc := gbitcoin.NewBitcoin(m.rpcUser, m.rpcPass)
+ rpc.SetTimeout(uint(2))
+
+ log.Printf("miner: Starting up bitcoin client")
+ rpc.StartUp("http://localhost", m.dir, uint(m.rpcPort))
+ m.runtime = &minerRuntime{
+ rpc: rpc,
+ cmd: cmd,
+ cleanups: cleanups,
+ }
+
+ if !m.isInitialized {
+ err = m.initializeFirstRun()
+ if err != nil {
+ m.runtime = nil
+ PerformCleanup(cleanups)
+ m.harness.Fatalf("Failed to initialize for first run: %v", err)
+ }
+ }
+}
+
+func (m *Miner) initializeFirstRun() error {
+ l := true
+ d := false
+ _, err := m.runtime.rpc.CreateWallet(&gbitcoin.CreateWalletRequest{
+ WalletName: "default",
+ LoadOnStartup: &l,
+ Descriptors: &d,
+ })
+ if err != nil {
+ log.Printf("miner: Create wallet failed. Ignoring error: %v", err)
+ }
+
+ // Go ahead and run 101 blocks
+ log.Printf("Get new address")
+ addr, err := m.runtime.rpc.GetNewAddress(gbitcoin.Bech32)
+ if err != nil {
+ return fmt.Errorf("failed to get new address: %v", err)
+ }
+
+ log.Printf("Generate to address")
+ _, err = m.runtime.rpc.GenerateToAddress(addr, 101)
+ if err != nil {
+ return fmt.Errorf("failed to generate to address: %v", err)
+ }
+
+ m.isInitialized = true
+ return nil
+}
+
+func (n *Miner) waitForLog(phrase string) error {
+ logfilePath := filepath.Join(n.dir, "regtest", "debug.log")
+ // at startup we need to wait for the file to open
+ for time.Now().Before(n.harness.Deadline()) {
+ if _, err := os.Stat(logfilePath); os.IsNotExist(err) {
+ <-time.After(waitSleepInterval)
+ continue
+ }
+ break
+ }
+ logfile, _ := os.Open(logfilePath)
+ defer logfile.Close()
+
+ reader := bufio.NewReader(logfile)
+ counted := 0
+ for time.Now().Before(n.harness.Deadline()) {
+ line, err := reader.ReadString('\n')
+ if err != nil {
+ if err == io.EOF {
+ <-time.After(waitSleepInterval)
+ } else {
+ return err
+ }
+ }
+ m, err := regexp.MatchString(phrase, line)
+ if err != nil {
+ return err
+ }
+
+ if m {
+ if counted == n.timesStarted {
+ return nil
+ }
+
+ counted += 1
+ }
+ }
+
+ return fmt.Errorf("unable to find \"%s\" in %s", phrase, logfilePath)
+}
+
+func (m *Miner) Stop() error {
+ m.mtx.Lock()
+ defer m.mtx.Unlock()
+
+ if m.runtime == nil {
+ log.Printf("miner: Stop called, but was already stopped.")
+ return nil
+ }
+
+ PerformCleanup(m.runtime.cleanups)
+ m.runtime = nil
+ return nil
+}
+
+func (m *Miner) ZmqBlockAddress() string {
+ return m.zmqBlockAddress
+}
+
+func (m *Miner) ZmqTxAddress() string {
+ return m.zmqTxAddress
+}
+
+func (m *Miner) MineBlocks(n uint) {
+ addr, err := m.runtime.rpc.GetNewAddress(gbitcoin.Bech32)
+ CheckError(m.harness.T, err)
+ _, err = m.runtime.rpc.GenerateToAddress(addr, n)
+ CheckError(m.harness.T, err)
+}
+
+func (m *Miner) SendToAddress(addr string, amountSat uint64) {
+ amountBtc := amountSat / uint64(100000000)
+ amountSatRemainder := amountSat % 100000000
+ amountStr := strconv.FormatUint(amountBtc, 10) + "." + fmt.Sprintf("%08s", strconv.FormatUint(amountSatRemainder, 10))
+ log.Printf("miner: Sending %s btc to address %s", amountStr, addr)
+ _, err := m.runtime.rpc.SendToAddress(addr, amountStr)
+ CheckError(m.harness.T, err)
+}
+
+func (m *Miner) SendToAddressAndMine(addr string, amountSat uint64, blocks uint) {
+ m.SendToAddress(addr, amountSat)
+ m.MineBlocks(blocks)
+}
+
+func (m *Miner) GetBlockHeight() uint32 {
+ info, err := m.runtime.rpc.GetChainInfo()
+ CheckError(m.harness.T, err)
+ return info.Blocks
+}
diff --git a/itest/lntest/test_common.go b/itest/lntest/test_common.go
new file mode 100644
index 00000000..a17cdb18
--- /dev/null
+++ b/itest/lntest/test_common.go
@@ -0,0 +1,162 @@
+package lntest
+
+import (
+ "crypto/rand"
+ "encoding/hex"
+ "flag"
+ "fmt"
+ "net"
+ "os"
+ "os/exec"
+ "runtime/debug"
+ "testing"
+ "time"
+)
+
+var (
+ bitcoindExecutable = flag.String(
+ "bitcoindexec", "", "full path to bitcoind binary",
+ )
+ bitcoinCliExecutable = flag.String(
+ "bitcoincliexec", "", "full path to bitcoin-cli binary",
+ )
+ lightningdExecutable = flag.String(
+ "lightningdexec", "", "full path to lightningd binary",
+ )
+ lndExecutable = flag.String(
+ "lndexec", "", "full path to lnd binary",
+ )
+ testDir = flag.String(
+ "testdir", "", "full path to the root testing directory",
+ )
+ preserveLogs = flag.Bool(
+ "preservelogs", false, "value indicating whether the logs of artifacts should be preserved",
+ )
+ preserveState = flag.Bool(
+ "preservestate", false, "value indicating whether all artifact state should be preserved",
+ )
+)
+
+var waitSleepInterval = time.Millisecond * 100
+
+func CheckError(t *testing.T, err error) {
+ if err != nil {
+ debug.PrintStack()
+ t.Fatal(err)
+ }
+}
+
+func GetPort() (uint32, error) {
+ addr, err := net.ResolveTCPAddr("tcp", "localhost:0")
+ if err != nil {
+ return 0, err
+ }
+ l, err := net.ListenTCP("tcp", addr)
+ if err != nil {
+ return 0, err
+ }
+ defer l.Close()
+ return uint32(l.Addr().(*net.TCPAddr).Port), nil
+}
+
+func GetTestRootDir() (*string, error) {
+ dir := testDir
+ if dir == nil || *dir == "" {
+ pathDir, err := exec.LookPath("testdir")
+ if err != nil {
+ dir = &pathDir
+ }
+ }
+
+ if dir == nil || *dir == "" {
+ tempDir, err := os.MkdirTemp("", "lntest")
+ return &tempDir, err
+ }
+
+ info, err := os.Stat(*dir)
+ if err != nil {
+ // Create the dir if it doesn't exist
+ err = os.MkdirAll(*dir, os.ModePerm)
+ if err != nil {
+ return nil, err
+ }
+
+ return dir, nil
+ }
+
+ // dir exists, make sure it's a directory.
+ if !info.IsDir() {
+ return nil, fmt.Errorf("TestDir '%s' exists but is not a directory", *dir)
+ }
+
+ return dir, nil
+}
+
+func GetBitcoindBinary() (string, error) {
+ if bitcoindExecutable != nil {
+ return *bitcoindExecutable, nil
+ }
+
+ return exec.LookPath("bitcoind")
+}
+
+func GetBitcoinCliBinary() (string, error) {
+ if bitcoinCliExecutable != nil {
+ return *bitcoinCliExecutable, nil
+ }
+
+ return exec.LookPath("bitcoin-cli")
+}
+
+func GetLightningdBinary() (string, error) {
+ if lightningdExecutable != nil {
+ return *lightningdExecutable, nil
+ }
+
+ return exec.LookPath("lightningd")
+}
+
+func GetLndBinary() (string, error) {
+ if lndExecutable != nil {
+ return *lndExecutable, nil
+ }
+
+ return exec.LookPath("lnd")
+}
+
+func GetPreserveLogs() bool {
+ return *preserveLogs
+}
+
+func GetPreserveState() bool {
+ return *preserveState
+}
+
+func getTimeoutSeconds(t *testing.T, timeout time.Time) uint32 {
+ timeoutSeconds := time.Until(timeout).Seconds()
+ if timeoutSeconds < 0 {
+ CheckError(t, fmt.Errorf("timeout expired"))
+ }
+
+ return uint32(timeoutSeconds)
+}
+
+func GenerateRandomBytes(n int) ([]byte, error) {
+ b := make([]byte, n)
+ _, err := rand.Read(b)
+ // Note that err == nil only if we read len(b) bytes.
+ if err != nil {
+ return nil, err
+ }
+
+ return b, nil
+}
+
+func GenerateRandomString() (string, error) {
+ b, err := GenerateRandomBytes(32)
+ if err != nil {
+ return "", err
+ }
+
+ return hex.EncodeToString(b), nil
+}
diff --git a/itest/lspd.go b/itest/lspd.go
new file mode 100644
index 00000000..55ce3ae6
--- /dev/null
+++ b/itest/lspd.go
@@ -0,0 +1,539 @@
+package itest
+
+import (
+ "context"
+ "crypto/sha256"
+ "encoding/hex"
+ "encoding/json"
+ "fmt"
+ "log"
+ "math/rand"
+ "path/filepath"
+ "sync"
+ "time"
+
+ "github.com/breez/lspd"
+ "github.com/breez/lspd/chain"
+ "github.com/breez/lspd/config"
+ "github.com/breez/lspd/itest/lntest"
+ "github.com/breez/lspd/lightning"
+ "github.com/breez/lspd/lsps0"
+ "github.com/breez/lspd/lsps0/jsonrpc"
+ "github.com/breez/lspd/lsps2"
+ "github.com/breez/lspd/notifications"
+ "github.com/breez/lspd/postgresql"
+ "github.com/breez/lspd/rpc"
+ "github.com/btcsuite/btcd/btcec/v2"
+ "github.com/btcsuite/btcd/btcec/v2/ecdsa"
+ "github.com/decred/dcrd/dcrec/secp256k1/v4"
+ ecies "github.com/ecies/go/v2"
+ "github.com/stretchr/testify/assert"
+ "github.com/tv42/zbase32"
+ "google.golang.org/grpc"
+ "google.golang.org/grpc/credentials/insecure"
+ "google.golang.org/protobuf/proto"
+)
+
+var (
+ lspBaseFeeMsat uint32 = 1000
+ lspFeeRatePpm uint32 = 1
+ lspCltvDelta uint16 = 144
+)
+
+type Lspd struct {
+ h *lntest.TestHarness
+ config *config.Config
+ name string
+ logFilePath string
+ grpcAddress string
+ clients []*lspdClient
+ postgresBackend *PostgresContainer
+ runtime *lspdRuntime
+}
+
+type lspdClient struct {
+ node lntest.LightningNode
+ pubkey *secp256k1.PublicKey
+ eciesPubkey *ecies.PublicKey
+}
+
+type lspdRuntime struct {
+ ctx context.Context
+ cancel context.CancelFunc
+ clients []*LspdClient
+ wg sync.WaitGroup
+}
+
+type LspdClient struct {
+ index int
+ lspd *Lspd
+ info *lspdClient
+ client rpc.ChannelOpenerClient
+ notificationsClient notifications.NotificationsClient
+}
+
+type NodeWithConfig struct {
+ Node lntest.LightningNode
+ Config *config.NodeConfig
+}
+
+func (l *Lspd) Harness() *lntest.TestHarness {
+ return l.h
+}
+
+func (l *Lspd) Address() string {
+ return l.grpcAddress
+}
+
+func (l *Lspd) Client(index int) *LspdClient {
+ if l.runtime == nil || len(l.runtime.clients) < (index+1) {
+ l.h.Fatalf("Requested non-existent client with index %d", index)
+ }
+
+ return l.runtime.clients[index]
+}
+
+func (l *Lspd) PostgresBackend() *PostgresContainer {
+ return l.postgresBackend
+}
+
+func (c *LspdClient) NodeId() []byte {
+ return c.info.node.NodeId()
+}
+
+func (c *LspdClient) Rpc() rpc.ChannelOpenerClient {
+ return c.client
+}
+
+func (c *LspdClient) NotificationsRpc() notifications.NotificationsClient {
+ return c.notificationsClient
+}
+
+func NewLspd(h *lntest.TestHarness, name string, mem *mempoolApi, nodes ...*NodeWithConfig) (*Lspd, error) {
+ dir := h.GetDirectory(fmt.Sprintf("postgres-%s", name))
+ pgLogfile := filepath.Join(dir, "postgres.log")
+ h.RegisterLogfile(pgLogfile, fmt.Sprintf("%s-postgres", name))
+ postgres, err := NewPostgresContainer(pgLogfile)
+ if err != nil {
+ return nil, err
+ }
+ var postgresErr error
+ var postgresWg sync.WaitGroup
+ postgresWg.Add(1)
+ go func() {
+ postgresErr = postgres.Start(h.Ctx)
+ postgresWg.Done()
+ }()
+
+ lspdPort, err := lntest.GetPort()
+ if err != nil {
+ return nil, err
+ }
+
+ host := "localhost"
+ grpcAddress := fmt.Sprintf("%s:%d", host, lspdPort)
+ minConfs := uint32(1)
+
+ var clients []*lspdClient
+ var innerNodes []*config.NodeConfig
+ for i, node := range nodes {
+ lspdPrivateKeyBytes, err := GenerateRandomBytes(32)
+ if err != nil {
+ return nil, err
+ }
+
+ conf := &config.NodeConfig{
+ Name: name,
+ LspdPrivateKey: hex.EncodeToString(lspdPrivateKeyBytes),
+ Tokens: []string{fmt.Sprintf("hello%d", i)},
+ Host: "host:port",
+ PublicChannelAmount: 1000183,
+ TargetConf: 6,
+ MinConfs: &minConfs,
+ MinHtlcMsat: 600,
+ BaseFeeMsat: 1000,
+ FeeRate: 0.000001,
+ TimeLockDelta: 144,
+ ChannelFeePermyriad: 40,
+ ChannelMinimumFeeMsat: 2000000,
+ AdditionalChannelCapacity: 100000,
+ MaxInactiveDuration: 3888000,
+ MinPaymentSizeMsat: 600,
+ MaxPaymentSizeMsat: 4000000000,
+ NotificationTimeout: "20s",
+ }
+
+ if node.Config != nil {
+ if node.Config.MinConfs != nil {
+ conf.MinConfs = node.Config.MinConfs
+ }
+
+ if node.Config.LegacyOnionTokens != nil {
+ conf.LegacyOnionTokens = node.Config.LegacyOnionTokens
+ }
+
+ if node.Config.Lnd != nil {
+ conf.Lnd = node.Config.Lnd
+ }
+
+ if node.Config.Cln != nil {
+ conf.Cln = node.Config.Cln
+ }
+ }
+
+ innerNodes = append(innerNodes, conf)
+
+ _, publ := btcec.PrivKeyFromBytes(lspdPrivateKeyBytes)
+ eciesPubl := ecies.NewPrivateKeyFromBytes(lspdPrivateKeyBytes).PublicKey
+ clients = append(clients, &lspdClient{
+ node: node.Node,
+ pubkey: publ,
+ eciesPubkey: eciesPubl,
+ })
+ }
+
+ var memAddress *string
+ if mem != nil {
+ t := mem.Address()
+ memAddress = &t
+ }
+
+ conf := &config.Config{
+ Nodes: innerNodes,
+ FeeStrategy: chain.FeeStrategyEconomy,
+ MempoolApiBaseUrl: memAddress,
+ DatabaseUrl: postgres.ConnectionString(),
+ AutoMigrateDb: true,
+ ListenAddress: grpcAddress,
+ CertmagicDomain: "",
+ }
+
+ l := &Lspd{
+ h: h,
+ config: conf,
+ name: name,
+ grpcAddress: grpcAddress,
+ clients: clients,
+ postgresBackend: postgres,
+ }
+
+ postgresWg.Wait()
+ if postgresErr != nil {
+ return nil, fmt.Errorf("failed to start postgres backend: %w", postgresErr)
+ }
+ err = postgresql.Migrate(l.postgresBackend.ConnectionString())
+ if err != nil {
+ return nil, fmt.Errorf("failed to migrate postgres backend: %w", err)
+ }
+ tx, err := l.postgresBackend.Pool().Begin(l.h.Ctx)
+ defer tx.Rollback(l.h.Ctx)
+ if err != nil {
+ return nil, fmt.Errorf("failed to begin postgres tx: %w", err)
+ }
+
+ _, err = tx.Exec(
+ l.h.Ctx,
+ `DELETE FROM new_channel_params`,
+ )
+ if err != nil {
+ return nil, fmt.Errorf("failed to delete new_channel_params: %w", err)
+ }
+
+ for i, _ := range nodes {
+ _, err = tx.Exec(
+ l.h.Ctx,
+ `INSERT INTO new_channel_params (validity, params, token)
+ VALUES
+ (3600, '{"min_msat": "1000000", "proportional": 7500, "max_idle_time": 4320, "max_client_to_self_delay": 432}', $1),
+ (259200, '{"min_msat": "1100000", "proportional": 7500, "max_idle_time": 4320, "max_client_to_self_delay": 432}', $1);`,
+ fmt.Sprintf("hello%d", i),
+ )
+ if err != nil {
+ return nil, fmt.Errorf("failed to insert new_channel_params: %w", err)
+ }
+ }
+
+ err = tx.Commit(l.h.Ctx)
+ if err != nil {
+ return nil, fmt.Errorf("failed to commit tx: %w", err)
+ }
+
+ h.AddStoppable(l)
+ h.AddCleanable(l)
+ return l, nil
+}
+
+func (l *Lspd) Start() error {
+ ctx, cancel := context.WithCancel(l.h.Ctx)
+ l.runtime = &lspdRuntime{
+ ctx: ctx,
+ cancel: cancel,
+ }
+ l.runtime.wg.Add(1)
+ go func(ctx context.Context, config *config.Config, wg *sync.WaitGroup) {
+ err := lspd.Main(ctx, config)
+ log.Printf("%s: lspd exited with: %v", l.name, err)
+ wg.Done()
+ }(ctx, l.config, &l.runtime.wg)
+
+ for i, c := range l.clients {
+ conn, err := grpc.DialContext(
+ ctx,
+ l.grpcAddress,
+ grpc.WithTransportCredentials(insecure.NewCredentials()),
+ grpc.WithPerRPCCredentials(&token{token: fmt.Sprintf("hello%d", i)}),
+ )
+ if err != nil {
+ cancel()
+ return fmt.Errorf("failed to create grpc connection: %w", err)
+ }
+
+ l.runtime.clients = append(l.runtime.clients, &LspdClient{
+ index: i,
+ lspd: l,
+ info: c,
+ client: rpc.NewChannelOpenerClient(conn),
+ notificationsClient: notifications.NewNotificationsClient(conn),
+ })
+ }
+
+ return nil
+}
+
+func (l *Lspd) Stop() error {
+ r := l.runtime
+ if r == nil {
+ return nil
+ }
+
+ r.cancel()
+ r.wg.Wait()
+ l.runtime = nil
+ return nil
+}
+
+func (l *Lspd) Cleanup() error {
+ return l.postgresBackend.Cleanup(context.Background())
+}
+
+func (c *LspdClient) ChannelInformation() *rpc.ChannelInformationReply {
+ info, err := c.Rpc().ChannelInformation(
+ c.lspd.h.Ctx,
+ &rpc.ChannelInformationRequest{},
+ )
+ if err != nil {
+ c.lspd.h.T.Fatalf("Failed to get ChannelInformation: %v", err)
+ }
+
+ return info
+}
+
+func (c *LspdClient) ctx() context.Context {
+ return c.lspd.runtime.ctx
+}
+
+func (c *LspdClient) RegisterPayment(paymentInfo *rpc.PaymentInformation, continueOnError bool) error {
+ serialized, err := proto.Marshal(paymentInfo)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ encrypted, err := ecies.Encrypt(c.info.eciesPubkey, serialized)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ log.Printf("Registering payment")
+ _, err = c.Rpc().RegisterPayment(
+ c.ctx(),
+ &rpc.RegisterPaymentRequest{
+ Blob: encrypted,
+ },
+ )
+
+ if !continueOnError {
+ lntest.CheckError(c.lspd.h.T, err)
+ }
+
+ return err
+}
+
+func (c *LspdClient) SubscribeNotifications(b BreezClient, url string, continueOnError bool) error {
+ msg := append(lightning.SignedMsgPrefix, []byte(url)...)
+ first := sha256.Sum256([]byte(msg))
+ second := sha256.Sum256(first[:])
+ sig, err := ecdsa.SignCompact(b.Node().PrivateKey(), second[:], true)
+ assert.NoError(b.Harness().T, err)
+ request := notifications.SubscribeNotificationsRequest{
+ Url: url,
+ Signature: zbase32.EncodeToString(sig),
+ }
+ serialized, err := proto.Marshal(&request)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ encrypted, err := ecies.Encrypt(c.info.eciesPubkey, serialized)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ log.Printf("Subscribing to notifications")
+ _, err = c.NotificationsRpc().SubscribeNotifications(
+ c.ctx(),
+ ¬ifications.EncryptedNotificationRequest{
+ Blob: encrypted,
+ },
+ )
+
+ if !continueOnError {
+ lntest.CheckError(c.lspd.h.T, err)
+ }
+
+ return err
+}
+
+func (c *LspdClient) UnsubscribeNotifications(b BreezClient, url string, continueOnError bool) error {
+ msg := append(lightning.SignedMsgPrefix, []byte(url)...)
+ first := sha256.Sum256([]byte(msg))
+ second := sha256.Sum256(first[:])
+ sig, err := ecdsa.SignCompact(b.Node().PrivateKey(), second[:], true)
+ assert.NoError(b.Harness().T, err)
+ request := notifications.UnsubscribeNotificationsRequest{
+ Url: url,
+ Signature: zbase32.EncodeToString(sig),
+ }
+ serialized, err := proto.Marshal(&request)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ encrypted, err := ecies.Encrypt(c.info.eciesPubkey, serialized)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ log.Printf("Removing notification subscription")
+ _, err = c.NotificationsRpc().UnsubscribeNotifications(
+ c.ctx(),
+ ¬ifications.EncryptedNotificationRequest{
+ Blob: encrypted,
+ },
+ )
+
+ if !continueOnError {
+ lntest.CheckError(c.lspd.h.T, err)
+ }
+
+ return nil
+}
+
+type FeeParamSetting struct {
+ Validity time.Duration
+ MinMsat uint64
+ Proportional uint32
+}
+
+func (c *LspdClient) SetFeeParams(settings []*FeeParamSetting) error {
+ _, err := c.lspd.postgresBackend.Pool().Exec(c.lspd.h.Ctx, "DELETE FROM new_channel_params WHERE token = $1", fmt.Sprintf("hello%d", c.index))
+ if err != nil {
+ return fmt.Errorf("failed to delete new_channel_params: %w", err)
+ }
+
+ if len(settings) == 0 {
+ return nil
+ }
+
+ query := `INSERT INTO new_channel_params (validity, params, token) VALUES `
+ first := true
+ for _, setting := range settings {
+ if !first {
+ query += `,`
+ }
+
+ query += fmt.Sprintf(
+ `(%d, '{"min_msat": "%d", "proportional": %d, "max_idle_time": 4320, "max_client_to_self_delay": 432}', 'hello%d')`,
+ int64(setting.Validity.Seconds()),
+ setting.MinMsat,
+ setting.Proportional,
+ c.index,
+ )
+
+ first = false
+ }
+ query += `;`
+ _, err = c.lspd.postgresBackend.Pool().Exec(c.lspd.h.Ctx, query)
+ if err != nil {
+ return fmt.Errorf("failed to insert new_channel_params: %w", err)
+ }
+
+ return nil
+}
+
+func (c *LspdClient) Lsps2GetInfo(bc BreezClient, req lsps2.GetInfoRequest) lsps2.GetInfoResponse {
+ req.Version = lsps2.SupportedVersion
+ r := c.lsps2RequestResponse(bc, "lsps2.get_info", req)
+ var resp lsps2.GetInfoResponse
+ err := json.Unmarshal(r, &resp)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ return resp
+}
+
+func (c *LspdClient) Lsps2Buy(bc BreezClient, req lsps2.BuyRequest) lsps2.BuyResponse {
+ req.Version = lsps2.SupportedVersion
+ r := c.lsps2RequestResponse(bc, "lsps2.buy", req)
+ var resp lsps2.BuyResponse
+ err := json.Unmarshal(r, &resp)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ return resp
+}
+
+func (c *LspdClient) lsps2RequestResponse(bc BreezClient, method string, req interface{}) []byte {
+ id := randStringBytes(32)
+ peerId := hex.EncodeToString(c.NodeId())
+ inner, err := json.Marshal(req)
+ lntest.CheckError(c.lspd.h.T, err)
+ outer, err := json.Marshal(&jsonrpc.Request{
+ JsonRpc: jsonrpc.Version,
+ Method: method,
+ Id: id,
+ Params: inner,
+ })
+ lntest.CheckError(c.lspd.h.T, err)
+
+ log.Printf(string(outer))
+ bc.Node().SendCustomMessage(&lntest.CustomMsgRequest{
+ PeerId: peerId,
+ Type: lsps0.Lsps0MessageType,
+ Data: outer,
+ })
+
+ m := bc.ReceiveCustomMessage()
+ log.Printf(string(m.Data))
+
+ var resp jsonrpc.Response
+ err = json.Unmarshal(m.Data, &resp)
+ lntest.CheckError(c.lspd.h.T, err)
+
+ if resp.Id != id {
+ c.lspd.h.T.Fatalf("Received custom message, but had different id")
+ }
+
+ return resp.Result
+}
+
+const letterBytes = "abcdefghijklmnopqrstuvwxyz"
+
+func randStringBytes(n int) string {
+ b := make([]byte, n)
+ for i := range b {
+ b[i] = letterBytes[rand.Intn(len(letterBytes))]
+ }
+ return string(b)
+}
+
+type token struct {
+ token string
+}
+
+func (t *token) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {
+ m := make(map[string]string)
+ m["authorization"] = "Bearer " + t.token
+ return m, nil
+}
+
+// RequireTransportSecurity indicates whether the credentials requires
+// transport security.
+func (t *token) RequireTransportSecurity() bool {
+ return false
+}
diff --git a/itest/lspd_node.go b/itest/lspd_node.go
deleted file mode 100644
index 7c64c201..00000000
--- a/itest/lspd_node.go
+++ /dev/null
@@ -1,534 +0,0 @@
-package itest
-
-import (
- "bufio"
- "context"
- "crypto/sha256"
- "encoding/hex"
- "encoding/json"
- "flag"
- "fmt"
- "log"
- "os"
- "os/exec"
- "path/filepath"
- "syscall"
- "time"
-
- "github.com/breez/lntest"
- "github.com/breez/lspd/config"
- "github.com/breez/lspd/lightning"
- "github.com/breez/lspd/notifications"
- lspd "github.com/breez/lspd/rpc"
- "github.com/btcsuite/btcd/btcec/v2"
- "github.com/btcsuite/btcd/btcec/v2/ecdsa"
- "github.com/decred/dcrd/dcrec/secp256k1/v4"
- ecies "github.com/ecies/go/v2"
- "github.com/stretchr/testify/assert"
- "github.com/tv42/zbase32"
- "google.golang.org/grpc/metadata"
- "google.golang.org/protobuf/proto"
-)
-
-var (
- lspdExecutable = flag.String(
- "lspdexec", "", "full path to lpsd plugin binary",
- )
-)
-
-var (
- lspBaseFeeMsat uint32 = 1000
- lspFeeRatePpm uint32 = 1
- lspCltvDelta uint16 = 144
-)
-
-type LspNode interface {
- Start()
- Stop() error
- Harness() *lntest.TestHarness
- PublicKey() *btcec.PublicKey
- EciesPublicKey() *ecies.PublicKey
- Rpc() lspd.ChannelOpenerClient
- NotificationsRpc() notifications.NotificationsClient
- NodeId() []byte
- LightningNode() lntest.LightningNode
- PostgresBackend() *PostgresContainer
-}
-
-type lspBase struct {
- harness *lntest.TestHarness
- conf *config.NodeConfig
- name string
- binary string
- env []string
- scriptFilePath string
- logFilePath string
- grpcAddress string
- pubkey *secp256k1.PublicKey
- eciesPubkey *ecies.PublicKey
- postgresBackend *PostgresContainer
- isInitialized bool
- runtime *lspBaseRuntime
- cleanups []*lntest.Cleanup
-}
-
-type lspBaseRuntime struct {
- node lntest.LightningNode
- cmd *exec.Cmd
- logFile *os.File
- cleanups []*lntest.Cleanup
-}
-
-func newLspd(h *lntest.TestHarness, mem *mempoolApi, name string, nodeConfig *config.NodeConfig, lnd *config.LndConfig, cln *config.ClnConfig, envExt ...string) (*lspBase, error) {
- scriptDir := h.GetDirectory(fmt.Sprintf("lspd-%s", name))
- log.Printf("%s: Creating LSPD in dir %s", name, scriptDir)
-
- pgLogfile := filepath.Join(scriptDir, "postgres.log")
- h.RegisterLogfile(pgLogfile, fmt.Sprintf("%s-postgres", name))
- postgresBackend, err := NewPostgresContainer(pgLogfile)
- if err != nil {
- return nil, err
- }
-
- lspdBinary, err := getLspdBinary()
- if err != nil {
- return nil, err
- }
-
- lspdPort, err := lntest.GetPort()
- if err != nil {
- return nil, err
- }
-
- lspdPrivateKeyBytes, err := GenerateRandomBytes(32)
- if err != nil {
- return nil, err
- }
-
- _, publ := btcec.PrivKeyFromBytes(lspdPrivateKeyBytes)
- eciesPubl := ecies.NewPrivateKeyFromBytes(lspdPrivateKeyBytes).PublicKey
- host := "localhost"
- grpcAddress := fmt.Sprintf("%s:%d", host, lspdPort)
- minConfs := uint32(1)
- conf := &config.NodeConfig{
- Name: name,
- LspdPrivateKey: hex.EncodeToString(lspdPrivateKeyBytes),
- Tokens: []string{"hello"},
- Host: "host:port",
- PublicChannelAmount: 1000183,
- TargetConf: 6,
- MinConfs: &minConfs,
- MinHtlcMsat: 600,
- BaseFeeMsat: 1000,
- FeeRate: 0.000001,
- TimeLockDelta: 144,
- ChannelFeePermyriad: 40,
- ChannelMinimumFeeMsat: 2000000,
- AdditionalChannelCapacity: 100000,
- MaxInactiveDuration: 3888000,
- MinPaymentSizeMsat: 600,
- MaxPaymentSizeMsat: 4000000000,
- Lnd: lnd,
- Cln: cln,
- }
-
- if nodeConfig != nil {
- if nodeConfig.MinConfs != nil {
- conf.MinConfs = nodeConfig.MinConfs
- }
-
- if nodeConfig.LegacyOnionTokens != nil {
- conf.LegacyOnionTokens = nodeConfig.LegacyOnionTokens
- }
- }
-
- env := []string{
- fmt.Sprintf("DATABASE_URL=%s", postgresBackend.ConnectionString()),
- "AUTO_MIGRATE_DATABASE=true",
- fmt.Sprintf("LISTEN_ADDRESS=%s", grpcAddress),
- fmt.Sprintf("MEMPOOL_API_BASE_URL=%s", mem.Address()),
- "MEMPOOL_PRIORITY=economy",
- }
-
- env = append(env, envExt...)
-
- scriptFilePath := filepath.Join(scriptDir, "start-lspd.sh")
- logFilePath := filepath.Join(scriptDir, "lspd.log")
- h.RegisterLogfile(logFilePath, fmt.Sprintf("lspd-%s", name))
-
- l := &lspBase{
- harness: h,
- conf: conf,
- name: name,
- env: env,
- binary: lspdBinary,
- scriptFilePath: scriptFilePath,
- logFilePath: logFilePath,
- grpcAddress: grpcAddress,
- pubkey: publ,
- eciesPubkey: eciesPubl,
- postgresBackend: postgresBackend,
- }
- h.AddStoppable(l)
- h.AddCleanable(l)
- return l, nil
-}
-
-func (l *lspBase) StopRuntime() {
- if l.runtime != nil {
- lntest.PerformCleanup(l.runtime.cleanups)
- }
-
- l.runtime = nil
-}
-
-func (l *lspBase) Stop() error {
- l.StopRuntime()
- lntest.PerformCleanup(l.cleanups)
- return nil
-}
-
-func (l *lspBase) Cleanup() error {
- return l.postgresBackend.Cleanup(context.Background())
-}
-
-func (l *lspBase) Start(
- node lntest.LightningNode,
- confFunc func(*config.NodeConfig),
-) {
- var runtimeCleanups []*lntest.Cleanup
- wasInitialized := l.isInitialized
-
- node.Start()
- runtimeCleanups = append(runtimeCleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: lsp lightning node", l.name),
- Fn: node.Stop,
- })
-
- if !wasInitialized {
- l.initialize(runtimeCleanups, confFunc)
- }
-
- cmd := exec.CommandContext(l.harness.Ctx, l.scriptFilePath)
- cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
- logFile, err := os.Create(l.logFilePath)
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed create lsp logfile: %v", err)
- }
- runtimeCleanups = append(runtimeCleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: logfile", l.name),
- Fn: logFile.Close,
- })
-
- cmd.Stdout = logFile
- cmd.Stderr = logFile
-
- log.Printf("%s: starting lspd %s", l.name, l.scriptFilePath)
- err = cmd.Start()
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed start lspd: %v", err)
- }
- runtimeCleanups = append(runtimeCleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: cmd", l.name),
- Fn: func() error {
- proc := cmd.Process
- if proc == nil {
- return nil
- }
-
- syscall.Kill(-proc.Pid, syscall.SIGINT)
-
- log.Printf("About to wait for lspd to exit")
- status, err := proc.Wait()
- if err != nil {
- log.Printf("waiting for lspd process error: %v, status: %v", err, status)
- }
- err = cmd.Wait()
- if err != nil {
- log.Printf("waiting for lspd cmd error: %v", err)
- }
-
- return nil
- },
- })
-
- if !wasInitialized {
- <-time.After(time.Second * 2)
- tx, err := l.postgresBackend.Pool().Begin(l.harness.Ctx)
- defer tx.Rollback(l.harness.Ctx)
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed to begin postgres tx: %v", err)
- }
-
- _, err = tx.Exec(
- l.harness.Ctx,
- `DELETE FROM new_channel_params`,
- )
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed to delete new_channel_params: %v", err)
- }
-
- _, err = tx.Exec(
- l.harness.Ctx,
- `INSERT INTO new_channel_params (validity, params, token)
- VALUES
- (3600, '{"min_msat": "1000000", "proportional": 7500, "max_idle_time": 4320, "max_client_to_self_delay": 432}', 'hello'),
- (259200, '{"min_msat": "1100000", "proportional": 7500, "max_idle_time": 4320, "max_client_to_self_delay": 432}', 'hello');`,
- )
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed to insert new_channel_params: %v", err)
- }
-
- err = tx.Commit(l.harness.Ctx)
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(l.cleanups)
- l.harness.T.Fatalf("failed to commit tx: %v", err)
- }
- }
-
- l.runtime = &lspBaseRuntime{
- node: node,
- cmd: cmd,
- logFile: logFile,
- cleanups: runtimeCleanups,
- }
-}
-
-func (l *lspBase) initialize(runtimeCleanups []*lntest.Cleanup, confFunc func(*config.NodeConfig)) {
- var initializeCleanups []*lntest.Cleanup
- err := l.postgresBackend.Start(l.harness.Ctx)
- if err != nil {
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to start postgres container: %v", err)
- }
-
- initializeCleanups = append(initializeCleanups, &lntest.Cleanup{
- Name: fmt.Sprintf("%s: postgres container", l.name),
- Fn: func() error {
- return l.postgresBackend.Stop(context.Background())
- },
- })
-
- log.Printf("%s: Creating lspd startup script at %s", l.name, l.scriptFilePath)
- scriptFile, err := os.OpenFile(l.scriptFilePath, os.O_CREATE|os.O_WRONLY, 0755)
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to create lspd startup script: %v", err)
- }
-
- defer scriptFile.Close()
- writer := bufio.NewWriter(scriptFile)
- _, err = writer.WriteString("#!/bin/bash\n")
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to write lspd startup script: %v", err)
- }
-
- confFunc(l.conf)
- confJson, _ := json.Marshal(l.conf)
- nodes := fmt.Sprintf(`NODES='[%s]'`, string(confJson))
- log.Printf("%s: node config: %s", l.name, nodes)
-
- for _, str := range append(l.env, nodes) {
- _, err = writer.WriteString("export " + str + "\n")
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to write lspd startup script: %v", err)
- }
- }
-
- _, err = writer.WriteString(l.binary + "\n")
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to write lspd startup script: %v", err)
- }
-
- err = writer.Flush()
- if err != nil {
- lntest.PerformCleanup(runtimeCleanups)
- lntest.PerformCleanup(initializeCleanups)
- l.harness.T.Fatalf("failed to flush lspd startup script: %v", err)
- }
-
- l.isInitialized = true
- l.cleanups = initializeCleanups
-}
-
-func ChannelInformation(l LspNode) *lspd.ChannelInformationReply {
- info, err := l.Rpc().ChannelInformation(
- l.Harness().Ctx,
- &lspd.ChannelInformationRequest{},
- )
- if err != nil {
- l.Harness().T.Fatalf("Failed to get ChannelInformation: %v", err)
- }
-
- return info
-}
-
-func RegisterPayment(l LspNode, paymentInfo *lspd.PaymentInformation, continueOnError bool) error {
- serialized, err := proto.Marshal(paymentInfo)
- lntest.CheckError(l.Harness().T, err)
-
- encrypted, err := ecies.Encrypt(l.EciesPublicKey(), serialized)
- lntest.CheckError(l.Harness().T, err)
-
- ctx := metadata.AppendToOutgoingContext(l.Harness().Ctx, "authorization", "Bearer hello")
- log.Printf("Registering payment")
- _, err = l.Rpc().RegisterPayment(
- ctx,
- &lspd.RegisterPaymentRequest{
- Blob: encrypted,
- },
- )
-
- if !continueOnError {
- lntest.CheckError(l.Harness().T, err)
- }
-
- return err
-}
-
-func SubscribeNotifications(l LspNode, b BreezClient, url string, continueOnError bool) error {
- msg := append(lightning.SignedMsgPrefix, []byte(url)...)
- first := sha256.Sum256([]byte(msg))
- second := sha256.Sum256(first[:])
- sig, err := ecdsa.SignCompact(b.Node().PrivateKey(), second[:], true)
- assert.NoError(b.Harness().T, err)
- request := notifications.SubscribeNotificationsRequest{
- Url: url,
- Signature: zbase32.EncodeToString(sig),
- }
- serialized, err := proto.Marshal(&request)
- lntest.CheckError(l.Harness().T, err)
-
- encrypted, err := ecies.Encrypt(l.EciesPublicKey(), serialized)
- lntest.CheckError(l.Harness().T, err)
-
- ctx := metadata.AppendToOutgoingContext(l.Harness().Ctx, "authorization", "Bearer hello")
- log.Printf("Subscribing to notifications")
- _, err = l.NotificationsRpc().SubscribeNotifications(
- ctx,
- ¬ifications.EncryptedNotificationRequest{
- Blob: encrypted,
- },
- )
-
- if !continueOnError {
- lntest.CheckError(l.Harness().T, err)
- }
-
- return err
-}
-
-func UnsubscribeNotifications(l LspNode, b BreezClient, url string, continueOnError bool) error {
- msg := append(lightning.SignedMsgPrefix, []byte(url)...)
- first := sha256.Sum256([]byte(msg))
- second := sha256.Sum256(first[:])
- sig, err := ecdsa.SignCompact(b.Node().PrivateKey(), second[:], true)
- assert.NoError(b.Harness().T, err)
- request := notifications.UnsubscribeNotificationsRequest{
- Url: url,
- Signature: zbase32.EncodeToString(sig),
- }
- serialized, err := proto.Marshal(&request)
- lntest.CheckError(l.Harness().T, err)
-
- encrypted, err := ecies.Encrypt(l.EciesPublicKey(), serialized)
- lntest.CheckError(l.Harness().T, err)
-
- ctx := metadata.AppendToOutgoingContext(l.Harness().Ctx, "authorization", "Bearer hello")
- log.Printf("Removing notification subscription")
- _, err = l.NotificationsRpc().UnsubscribeNotifications(
- ctx,
- ¬ifications.EncryptedNotificationRequest{
- Blob: encrypted,
- },
- )
-
- if !continueOnError {
- lntest.CheckError(l.Harness().T, err)
- }
-
- return nil
-}
-
-type FeeParamSetting struct {
- Validity time.Duration
- MinMsat uint64
- Proportional uint32
-}
-
-func SetFeeParams(l LspNode, settings []*FeeParamSetting) error {
- _, err := l.PostgresBackend().Pool().Exec(l.Harness().Ctx, "DELETE FROM new_channel_params")
- if err != nil {
- return fmt.Errorf("failed to delete new_channel_params: %w", err)
- }
-
- if len(settings) == 0 {
- return nil
- }
-
- query := `INSERT INTO new_channel_params (validity, params, token) VALUES `
- first := true
- for _, setting := range settings {
- if !first {
- query += `,`
- }
-
- query += fmt.Sprintf(
- `(%d, '{"min_msat": "%d", "proportional": %d, "max_idle_time": 4320, "max_client_to_self_delay": 432}', 'hello')`,
- int64(setting.Validity.Seconds()),
- setting.MinMsat,
- setting.Proportional,
- )
-
- first = false
- }
- query += `;`
- _, err = l.PostgresBackend().Pool().Exec(l.Harness().Ctx, query)
- if err != nil {
- return fmt.Errorf("failed to insert new_channel_params: %w", err)
- }
-
- return nil
-}
-
-func getLspdBinary() (string, error) {
- if lspdExecutable != nil {
- return *lspdExecutable, nil
- }
-
- return exec.LookPath("lspd")
-}
-
-type token struct {
- token string
-}
-
-func (t *token) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {
- m := make(map[string]string)
- m["authorization"] = "Bearer " + t.token
- return m, nil
-}
-
-// RequireTransportSecurity indicates whether the credentials requires
-// transport security.
-func (t *token) RequireTransportSecurity() bool {
- return false
-}
diff --git a/itest/lspd_test.go b/itest/lspd_test.go
index b8f4c908..5be059c7 100644
--- a/itest/lspd_test.go
+++ b/itest/lspd_test.go
@@ -6,8 +6,8 @@ import (
"testing"
"time"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
+ "github.com/breez/lspd/itest/lntest"
)
var defaultTimeout time.Duration = time.Second * 120
@@ -29,22 +29,63 @@ func TestLspd(t *testing.T) {
runTests(t, testCases, "CLN-lsp-CLN-client", clnLspFunc, clnClientFunc)
}
-func legacyOnionLndLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) LspNode {
+func legacyOnionLndLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) (lntest.LightningNode, *Lspd) {
cfg := c
if cfg == nil {
cfg = &config.NodeConfig{}
}
- cfg.LegacyOnionTokens = []string{"hello"}
- return lndLspFunc(h, m, mem, cfg)
+ cfg.LegacyOnionTokens = []string{"hello0"}
+
+ node, config := NewLndLspdNode(h, m, "lsp-node")
+ cfg.Lnd = config
+ lspd, err := NewLspd(h, "lsp", mem, &NodeWithConfig{
+ Node: node,
+ Config: cfg,
+ })
+ if err != nil {
+ h.T.Fatalf("Failed to initialize lspd: %v", err)
+ }
+
+ return node, lspd
}
-func lndLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) LspNode {
- return NewLndLspdNode(h, m, mem, "lsp", c)
+func lndLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) (lntest.LightningNode, *Lspd) {
+ cfg := c
+ if cfg == nil {
+ cfg = &config.NodeConfig{}
+ }
+
+ node, config := NewLndLspdNode(h, m, "lsp-node")
+ cfg.Lnd = config
+ lspd, err := NewLspd(h, "lsp", mem, &NodeWithConfig{
+ Node: node,
+ Config: cfg,
+ })
+ if err != nil {
+ h.T.Fatalf("Failed to initialize lspd: %v", err)
+ }
+
+ return node, lspd
}
-func clnLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) LspNode {
- return NewClnLspdNode(h, m, mem, "lsp", c)
+func clnLspFunc(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) (lntest.LightningNode, *Lspd) {
+ cfg := c
+ if cfg == nil {
+ cfg = &config.NodeConfig{}
+ }
+
+ node, config := NewClnLspdNode(h, m, "lsp-node")
+ cfg.Cln = config
+ lspd, err := NewLspd(h, "lsp", mem, &NodeWithConfig{
+ Node: node,
+ Config: cfg,
+ })
+ if err != nil {
+ h.T.Fatalf("Failed to initialize lspd: %v", err)
+ }
+
+ return node, lspd
}
func lndClientFunc(h *lntest.TestHarness, m *lntest.Miner) BreezClient {
@@ -99,10 +140,12 @@ func runTest(
mem.Start()
log.Printf("Creating lsp")
- var lsp LspNode
+ var lspd *Lspd
+ var node lntest.LightningNode
if !testCase.skipCreateLsp {
- lsp = lspFunc(h, miner, mem, nil)
- lsp.Start()
+ node, lspd = lspFunc(h, miner, mem, nil)
+ node.Start()
+ lspd.Start()
}
c := clientFunc(h, miner)
c.Start()
@@ -113,7 +156,8 @@ func runTest(
m: miner,
mem: mem,
c: c,
- lsp: lsp,
+ lspd: lspd,
+ node: node,
lspFunc: lspFunc,
clientFunc: clientFunc,
})
diff --git a/itest/lsps0_protocol_version_test.go b/itest/lsps0_protocol_version_test.go
index 8c356b42..3494e8eb 100644
--- a/itest/lsps0_protocol_version_test.go
+++ b/itest/lsps0_protocol_version_test.go
@@ -5,13 +5,13 @@ import (
"encoding/json"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps0"
"github.com/stretchr/testify/assert"
)
func testLsps0GetProtocolVersions(p *testParams) {
- p.BreezClient().Node().ConnectPeer(p.Lsp().LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
@@ -23,7 +23,7 @@ func testLsps0GetProtocolVersions(p *testParams) {
"params": {}
}`
p.BreezClient().Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: hex.EncodeToString(p.Lsp().NodeId()),
+ PeerId: hex.EncodeToString(p.Node().NodeId()),
Type: lsps0.Lsps0MessageType,
Data: []byte(rawMsg),
})
diff --git a/itest/lsps2_buy_test.go b/itest/lsps2_buy_test.go
index e328e41c..38936582 100644
--- a/itest/lsps2_buy_test.go
+++ b/itest/lsps2_buy_test.go
@@ -6,27 +6,27 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lightning"
"github.com/breez/lspd/lsps0"
"github.com/stretchr/testify/assert"
)
func testLsps2Buy(p *testParams) {
- SetFeeParams(p.Lsp(), []*FeeParamSetting{
+ p.Lspd().Client(0).SetFeeParams([]*FeeParamSetting{
{
Validity: time.Second * 3600,
MinMsat: 1000000,
Proportional: 1000,
},
})
- p.BreezClient().Node().ConnectPeer(p.Lsp().LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
p.BreezClient().Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: hex.EncodeToString(p.Lsp().NodeId()),
+ PeerId: hex.EncodeToString(p.Node().NodeId()),
Type: lsps0.Lsps0MessageType,
Data: []byte(`{
"method": "lsps2.get_info",
@@ -34,7 +34,7 @@ func testLsps2Buy(p *testParams) {
"id": "example#3cad6a54d302edba4c9ade2f7ffac098",
"params": {
"version": 1,
- "token": "hello"
+ "token": "hello0"
}
}`),
})
@@ -63,7 +63,7 @@ func testLsps2Buy(p *testParams) {
pr, err := json.Marshal(&data.Result.Menu[0])
lntest.CheckError(p.t, err)
p.BreezClient().Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: hex.EncodeToString(p.Lsp().NodeId()),
+ PeerId: hex.EncodeToString(p.Node().NodeId()),
Type: lsps0.Lsps0MessageType,
Data: append(append(
[]byte(`{
@@ -94,7 +94,7 @@ func testLsps2Buy(p *testParams) {
scid, err := lightning.NewShortChannelIDFromString(b.Result.Jit_channel_scid)
lntest.CheckError(p.t, err)
- rows, err := p.lsp.PostgresBackend().Pool().Query(
+ rows, err := p.Lspd().PostgresBackend().Pool().Query(
p.h.Ctx,
`SELECT token
FROM lsps2.buy_registrations
@@ -116,5 +116,5 @@ func testLsps2Buy(p *testParams) {
p.h.T.Fatalf("Failed to get token from row: %v", err)
}
- assert.Equal(p.h.T, "hello", actual)
+ assert.Equal(p.h.T, "hello0", actual)
}
diff --git a/itest/lsps2_get_info_test.go b/itest/lsps2_get_info_test.go
index f0d70b50..674b651a 100644
--- a/itest/lsps2_get_info_test.go
+++ b/itest/lsps2_get_info_test.go
@@ -6,13 +6,13 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps0"
"github.com/stretchr/testify/assert"
)
func testLsps2GetInfo(p *testParams) {
- SetFeeParams(p.Lsp(), []*FeeParamSetting{
+ p.Lspd().Client(0).SetFeeParams([]*FeeParamSetting{
{
Validity: time.Second * 3600,
MinMsat: 3000000,
@@ -24,7 +24,7 @@ func testLsps2GetInfo(p *testParams) {
Proportional: 800,
},
})
- p.BreezClient().Node().ConnectPeer(p.Lsp().LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
@@ -35,11 +35,11 @@ func testLsps2GetInfo(p *testParams) {
"id": "example#3cad6a54d302edba4c9ade2f7ffac098",
"params": {
"version": 1,
- "token": "hello"
+ "token": "hello0"
}
}`
p.BreezClient().Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: hex.EncodeToString(p.Lsp().NodeId()),
+ PeerId: hex.EncodeToString(p.Node().NodeId()),
Type: lsps0.Lsps0MessageType,
Data: []byte(rawMsg),
})
diff --git a/itest/lsps2_get_versions_test.go b/itest/lsps2_get_versions_test.go
index 17c8262b..6d44956e 100644
--- a/itest/lsps2_get_versions_test.go
+++ b/itest/lsps2_get_versions_test.go
@@ -6,13 +6,13 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps0"
"github.com/stretchr/testify/assert"
)
func testLsps2GetVersions(p *testParams) {
- p.BreezClient().Node().ConnectPeer(p.Lsp().LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
@@ -24,7 +24,7 @@ func testLsps2GetVersions(p *testParams) {
"params": {}
}`
p.BreezClient().Node().SendCustomMessage(&lntest.CustomMsgRequest{
- PeerId: hex.EncodeToString(p.Lsp().NodeId()),
+ PeerId: hex.EncodeToString(p.Node().NodeId()),
Type: lsps0.Lsps0MessageType,
Data: []byte(rawMsg),
})
diff --git a/itest/lsps2_happy_flow_test.go b/itest/lsps2_happy_flow_test.go
index 446d7d1c..43f49067 100644
--- a/itest/lsps2_happy_flow_test.go
+++ b/itest/lsps2_happy_flow_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps2"
"github.com/stretchr/testify/assert"
)
@@ -13,31 +13,31 @@ func testLsps2HappyFlow(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
alice.WaitForChannelReady(channel)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
log.Printf("Calling lsps2.get_info")
- info := Lsps2GetInfo(p.BreezClient(), p.Lsp(), lsps2.GetInfoRequest{
+ info := p.Lspd().Client(0).Lsps2GetInfo(p.BreezClient(), lsps2.GetInfoRequest{
Token: &WorkingToken,
})
outerAmountMsat := uint64(2100000)
- innerAmountMsat := lsps2CalculateInnerAmountMsat(p.lsp, outerAmountMsat, info.OpeningFeeParamsMenu[0])
+ innerAmountMsat := Lsps2CalculateInnerAmountMsat(p.Harness(), outerAmountMsat, info.OpeningFeeParamsMenu[0])
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Printf("Calling lsps2.buy")
- buyResp := Lsps2Buy(p.BreezClient(), p.Lsp(), lsps2.BuyRequest{
+ buyResp := p.Lspd().Client(0).Lsps2Buy(p.BreezClient(), lsps2.BuyRequest{
OpeningFeeParams: *info.OpeningFeeParamsMenu[0],
PaymentSizeMsat: &outerAmountMsat,
})
@@ -49,7 +49,7 @@ func testLsps2HappyFlow(p *testParams) {
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
},
buyResp.JitChannelScid)
diff --git a/itest/lsps2_no_balance_test.go b/itest/lsps2_no_balance_test.go
index 6720e02e..4dbea059 100644
--- a/itest/lsps2_no_balance_test.go
+++ b/itest/lsps2_no_balance_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps2"
"github.com/stretchr/testify/assert"
)
@@ -15,28 +15,28 @@ func testLsps2NoBalance(p *testParams) {
alice.Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
aliceLspScid := alice.WaitForChannelReady(channel)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
log.Printf("Calling lsps2.get_info")
- info := Lsps2GetInfo(p.BreezClient(), p.Lsp(), lsps2.GetInfoRequest{
+ info := p.Lspd().Client(0).Lsps2GetInfo(p.BreezClient(), lsps2.GetInfoRequest{
Token: &WorkingToken,
})
outerAmountMsat := uint64(2100000)
- innerAmountMsat := lsps2CalculateInnerAmountMsat(p.lsp, outerAmountMsat, info.OpeningFeeParamsMenu[0])
+ innerAmountMsat := Lsps2CalculateInnerAmountMsat(p.Harness(), outerAmountMsat, info.OpeningFeeParamsMenu[0])
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Printf("Calling lsps2.buy")
- buyResp := Lsps2Buy(p.BreezClient(), p.Lsp(), lsps2.BuyRequest{
+ buyResp := p.Lspd().Client(0).Lsps2Buy(p.BreezClient(), lsps2.BuyRequest{
OpeningFeeParams: *info.OpeningFeeParamsMenu[0],
PaymentSizeMsat: &outerAmountMsat,
})
@@ -48,7 +48,7 @@ func testLsps2NoBalance(p *testParams) {
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
},
buyResp.JitChannelScid)
@@ -56,7 +56,7 @@ func testLsps2NoBalance(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.Lsp().LightningNode(), p.BreezClient().Node(), aliceLspScid, lntest.NewShortChanIDFromString(buyResp.JitChannelScid), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), aliceLspScid, lntest.NewShortChanIDFromString(buyResp.JitChannelScid), outerAmountMsat)
// Increment the delay by two to support the spec
route.Hops[0].Delay += 2
diff --git a/itest/lsps2_zero_conf_utxo_test.go b/itest/lsps2_zero_conf_utxo_test.go
index 11058281..71e5e8cb 100644
--- a/itest/lsps2_zero_conf_utxo_test.go
+++ b/itest/lsps2_zero_conf_utxo_test.go
@@ -4,8 +4,8 @@ import (
"log"
"time"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps2"
"github.com/stretchr/testify/assert"
)
@@ -16,43 +16,44 @@ func testLsps2ZeroConfUtxo(p *testParams) {
alice.Fund(10000000)
minConfs := uint32(0)
- lsp := p.lspFunc(p.h, p.m, p.mem, &config.NodeConfig{MinConfs: &minConfs})
+ node, lsp := p.lspFunc(p.h, p.m, p.mem, &config.NodeConfig{MinConfs: &minConfs})
+ node.Start()
lsp.Start()
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(node, &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
- tempaddr := lsp.LightningNode().GetNewAddress()
+ tempaddr := node.GetNewAddress()
p.m.SendToAddress(tempaddr, 210000)
- reserveaddr := lsp.LightningNode().GetNewAddress()
+ reserveaddr := node.GetNewAddress()
p.m.SendToAddress(reserveaddr, 50000)
p.m.MineBlocks(6)
- lsp.LightningNode().WaitForSync()
+ node.WaitForSync()
initialHeight := p.m.GetBlockHeight()
- addr := lsp.LightningNode().GetNewAddress()
- lsp.LightningNode().SendToAddress(addr, 200000)
+ addr := node.GetNewAddress()
+ node.SendToAddress(addr, 200000)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(node)
// Make sure everything is activated.
<-time.After(htlcInterceptorDelay)
log.Printf("Calling lsps2.get_info")
- info := Lsps2GetInfo(p.BreezClient(), lsp, lsps2.GetInfoRequest{
+ info := lsp.Client(0).Lsps2GetInfo(p.BreezClient(), lsps2.GetInfoRequest{
Token: &WorkingToken,
})
outerAmountMsat := uint64(2100000)
- innerAmountMsat := lsps2CalculateInnerAmountMsat(lsp, outerAmountMsat, info.OpeningFeeParamsMenu[0])
+ innerAmountMsat := Lsps2CalculateInnerAmountMsat(p.Harness(), outerAmountMsat, info.OpeningFeeParamsMenu[0])
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Printf("Calling lsps2.buy")
- buyResp := Lsps2Buy(p.BreezClient(), lsp, lsps2.BuyRequest{
+ buyResp := lsp.Client(0).Lsps2Buy(p.BreezClient(), lsps2.BuyRequest{
OpeningFeeParams: *info.OpeningFeeParamsMenu[0],
PaymentSizeMsat: &outerAmountMsat,
})
@@ -64,7 +65,7 @@ func testLsps2ZeroConfUtxo(p *testParams) {
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: lsp,
+ lsp: lsp.Client(0),
},
buyResp.JitChannelScid)
@@ -72,7 +73,7 @@ func testLsps2ZeroConfUtxo(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString(buyResp.JitChannelScid), outerAmountMsat)
+ route := constructRoute(node, p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString(buyResp.JitChannelScid), outerAmountMsat)
route.Hops[0].Delay += 2
payResp, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
lntest.CheckError(p.t, err)
diff --git a/itest/mempool_api.go b/itest/mempool_api.go
index 44a56766..74b34439 100644
--- a/itest/mempool_api.go
+++ b/itest/mempool_api.go
@@ -6,7 +6,7 @@ import (
"net"
"net/http"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
)
type RecommendedFeesResponse struct {
diff --git a/itest/no_balance_test.go b/itest/no_balance_test.go
index 498edd3e..31ea29fb 100644
--- a/itest/no_balance_test.go
+++ b/itest/no_balance_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -15,29 +15,29 @@ func testNoBalance(p *testParams) {
alice.Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -50,7 +50,7 @@ func testNoBalance(p *testParams) {
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
_, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
assert.Contains(p.t, err.Error(), "WIRE_TEMPORARY_CHANNEL_FAILURE")
}
diff --git a/itest/notification_test.go b/itest/notification_test.go
index 9d5b4ba0..25de59e7 100644
--- a/itest/notification_test.go
+++ b/itest/notification_test.go
@@ -8,7 +8,7 @@ import (
"net/http"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -17,31 +17,31 @@ func testOfflineNotificationPaymentRegistered(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -75,7 +75,7 @@ func testOfflineNotificationPaymentRegistered(p *testParams) {
log.Printf("Starting breez client again")
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
p.BreezClient().Start()
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
}()
// TODO: Fix race waiting for htlc interceptor.
@@ -83,9 +83,9 @@ func testOfflineNotificationPaymentRegistered(p *testParams) {
<-time.After(htlcInterceptorDelay)
url := "http://" + addr + "/api/v1/notify"
- SubscribeNotifications(p.lsp, p.BreezClient(), url, false)
+ p.Lspd().Client(0).SubscribeNotifications(p.BreezClient(), url, false)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
_, err = alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
assert.Nil(p.t, err)
}
@@ -94,17 +94,17 @@ func testOfflineNotificationRegularForward(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
p.BreezClient().Node().Fund(100000)
log.Print("Opening channel between Alice and the lsp")
- channelAL := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channelAL := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
IsPublic: true,
})
log.Print("Opening channel between lsp and Breez client")
- channelLB := p.lsp.LightningNode().OpenChannel(p.BreezClient().Node(), &lntest.OpenChannelOptions{
+ channelLB := p.Node().OpenChannel(p.BreezClient().Node(), &lntest.OpenChannelOptions{
AmountSat: 200000,
IsPublic: false,
})
@@ -112,7 +112,7 @@ func testOfflineNotificationRegularForward(p *testParams) {
log.Print("Waiting for channel between Alice and the lsp to be ready.")
alice.WaitForChannelReady(channelAL)
log.Print("Waiting for channel between LSP and Bob to be ready.")
- p.lsp.LightningNode().WaitForChannelReady(channelLB)
+ p.Node().WaitForChannelReady(channelLB)
p.BreezClient().Node().WaitForChannelReady(channelLB)
port, err := lntest.GetPort()
@@ -134,18 +134,17 @@ func testOfflineNotificationRegularForward(p *testParams) {
<-delivered
log.Printf("Notification was delivered. Starting breez client again")
p.BreezClient().Start()
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
}()
url := "http://" + addr + "/api/v1/notify"
- SubscribeNotifications(p.lsp, p.BreezClient(), url, false)
+ p.Lspd().Client(0).SubscribeNotifications(p.BreezClient(), url, false)
<-time.After(time.Second * 2)
log.Printf("Adding bob's invoice")
amountMsat := uint64(2100000)
bobInvoice := p.BreezClient().Node().CreateBolt11Invoice(&lntest.CreateInvoiceOptions{
- AmountMsat: amountMsat,
- IncludeHopHints: true,
+ AmountMsat: amountMsat,
})
log.Printf(bobInvoice.Bolt11)
@@ -162,7 +161,7 @@ func testOfflineNotificationRegularForward(p *testParams) {
} else {
id = chans[0].ShortChannelID
}
- invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lsp(), id, nil, 144)
+ invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lspd().Client(0), id, nil, 144)
}
log.Printf("invoice with hint: %v", invoiceWithHint)
@@ -185,10 +184,10 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
IsPublic: true,
})
@@ -196,18 +195,18 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
// TODO: Fix race waiting for htlc interceptor.
@@ -215,7 +214,7 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
<-time.After(htlcInterceptorDelay)
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -225,7 +224,7 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
expectedheight := p.Miner().GetBlockHeight()
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
_, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
assert.Nil(p.t, err)
@@ -234,8 +233,7 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
amountMsat := uint64(2100000)
bobInvoice := p.BreezClient().Node().CreateBolt11Invoice(&lntest.CreateInvoiceOptions{
- AmountMsat: amountMsat,
- IncludeHopHints: true,
+ AmountMsat: amountMsat,
})
invoiceWithHint := bobInvoice.Bolt11
@@ -251,7 +249,7 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
} else {
id = chans[0].ShortChannelID
}
- invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lsp(), id, nil, lspCltvDelta)
+ invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lspd().Client(0), id, nil, lspCltvDelta)
}
log.Printf("Invoice with hint: %s", invoiceWithHint)
@@ -280,11 +278,11 @@ func testOfflineNotificationZeroConfChannel(p *testParams) {
<-delivered
log.Printf("Starting breez client again")
p.BreezClient().Start()
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
}()
url := "http://" + addr + "/api/v1/notify"
- SubscribeNotifications(p.lsp, p.BreezClient(), url, false)
+ p.Lspd().Client(0).SubscribeNotifications(p.BreezClient(), url, false)
log.Printf("Alice paying zero conf invoice")
payResp := alice.Pay(invoiceWithHint)
@@ -305,7 +303,7 @@ func testNotificationsUnsubscribe(p *testParams) {
log.Printf("Client pubkey: %s", pubkey)
count_subscriptions := func() (uint64, error) {
- row := p.lsp.PostgresBackend().Pool().QueryRow(
+ row := p.Lspd().PostgresBackend().Pool().QueryRow(
p.h.Ctx,
`SELECT COUNT(*)
FROM public.notification_subscriptions
@@ -323,14 +321,14 @@ func testNotificationsUnsubscribe(p *testParams) {
return count, nil
}
- SubscribeNotifications(p.lsp, p.BreezClient(), url, false)
+ p.Lspd().Client(0).SubscribeNotifications(p.BreezClient(), url, false)
// Verify that we have subscribed to the webhook
count, err := count_subscriptions()
assert.Nil(p.h.T, err)
assert.Equal(p.h.T, count, 1)
- UnsubscribeNotifications(p.lsp, p.BreezClient(), url, false)
+ p.Lspd().Client(0).UnsubscribeNotifications(p.BreezClient(), url, false)
// Verify that we have unsubscribed from the webhook
count, err = count_subscriptions()
diff --git a/itest/postgres.go b/itest/postgres.go
index 32ed1909..600d933b 100644
--- a/itest/postgres.go
+++ b/itest/postgres.go
@@ -11,7 +11,7 @@ import (
"sync"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/client"
diff --git a/itest/probing_test.go b/itest/probing_test.go
index d961f6c0..83686f91 100644
--- a/itest/probing_test.go
+++ b/itest/probing_test.go
@@ -5,7 +5,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -14,32 +14,32 @@ func testProbing(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -57,7 +57,7 @@ func testProbing(p *testParams) {
fakePaymentHash := h.Sum(nil)
log.Printf("Alice paying with fake payment hash with Bob online %x", fakePaymentHash)
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
_, err := alice.PayViaRoute(outerAmountMsat, fakePaymentHash, outerInvoice.paymentSecret, route)
// Expect incorrect or unknown payment details if the peer is online
diff --git a/itest/regular_forward_test.go b/itest/regular_forward_test.go
index 3e8b5c33..c7775eb6 100644
--- a/itest/regular_forward_test.go
+++ b/itest/regular_forward_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
"github.com/stretchr/testify/assert"
)
@@ -12,17 +12,17 @@ func testRegularForward(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
p.BreezClient().Node().Fund(100000)
log.Print("Opening channel between Alice and the lsp")
- channelAL := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channelAL := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
IsPublic: true,
})
log.Print("Opening channel between lsp and Breez client")
- channelLB := p.lsp.LightningNode().OpenChannel(p.BreezClient().Node(), &lntest.OpenChannelOptions{
+ channelLB := p.Node().OpenChannel(p.BreezClient().Node(), &lntest.OpenChannelOptions{
AmountSat: 200000,
IsPublic: false,
})
@@ -30,7 +30,7 @@ func testRegularForward(p *testParams) {
log.Print("Waiting for channel between Alice and the lsp to be ready.")
alice.WaitForChannelReady(channelAL)
log.Print("Waiting for channel between LSP and Bob to be ready.")
- p.lsp.LightningNode().WaitForChannelReady(channelLB)
+ p.Node().WaitForChannelReady(channelLB)
p.BreezClient().Node().WaitForChannelReady(channelLB)
// TODO: Fix race waiting for htlc interceptor.
@@ -40,8 +40,7 @@ func testRegularForward(p *testParams) {
log.Printf("Adding bob's invoice")
amountMsat := uint64(2100000)
bobInvoice := p.BreezClient().Node().CreateBolt11Invoice(&lntest.CreateInvoiceOptions{
- AmountMsat: amountMsat,
- IncludeHopHints: true,
+ AmountMsat: amountMsat,
})
log.Printf(bobInvoice.Bolt11)
@@ -58,7 +57,7 @@ func testRegularForward(p *testParams) {
} else {
id = chans[0].ShortChannelID
}
- invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lsp(), id, nil, 144)
+ invoiceWithHint = AddHopHint(p.BreezClient(), bobInvoice.Bolt11, p.Lspd().Client(0), id, nil, 144)
}
log.Printf("invoice with hint: %v", invoiceWithHint)
diff --git a/itest/restart_lsp_node_test.go b/itest/restart_lsp_node_test.go
index b608cf80..ef1a7cd2 100644
--- a/itest/restart_lsp_node_test.go
+++ b/itest/restart_lsp_node_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -13,32 +13,32 @@ func testRestartLspNode(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -47,18 +47,18 @@ func testRestartLspNode(p *testParams) {
}, false)
log.Printf("stopping lsp lightning node")
- p.lsp.LightningNode().Stop()
+ p.Node().Stop()
log.Printf("waiting %v to allow lsp lightning node to stop completely", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("starting lsp lightning node again")
- p.lsp.LightningNode().Start()
+ p.Node().Start()
// TODO: Fix race waiting for htlc interceptor.
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Connect Bob to LSP again")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Alice paying")
payResp := alice.Pay(outerInvoice.bolt11)
diff --git a/itest/tag_test.go b/itest/tag_test.go
index c4c0387f..5a99ad11 100644
--- a/itest/tag_test.go
+++ b/itest/tag_test.go
@@ -3,7 +3,7 @@ package itest
import (
"log"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -15,7 +15,7 @@ func registerPaymentWithTag(p *testParams) {
})
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: i.PaymentHash,
PaymentSecret: i.PaymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -24,7 +24,7 @@ func registerPaymentWithTag(p *testParams) {
Tag: expected,
}, false)
- rows, err := p.lsp.PostgresBackend().Pool().Query(
+ rows, err := p.Lspd().PostgresBackend().Pool().Query(
p.h.Ctx,
"SELECT tag FROM public.payments WHERE payment_hash=$1",
i.PaymentHash,
diff --git a/itest/test_common.go b/itest/test_common.go
index 3a733384..69741387 100644
--- a/itest/test_common.go
+++ b/itest/test_common.go
@@ -5,12 +5,13 @@ import (
"log"
"testing"
+ "github.com/breez/lspd/itest/lntest"
"github.com/breez/lspd/lsps2"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
-var WorkingToken = "hello"
+var WorkingToken = "hello0"
func GenerateRandomBytes(n int) ([]byte, error) {
b := make([]byte, n)
@@ -31,7 +32,7 @@ func AssertChannelCapacity(
assert.Equal(t, ((outerAmountMsat/1000)+100000)*1000, capacityMsat)
}
-func calculateInnerAmountMsat(lsp LspNode, outerAmountMsat uint64, params *lspd.OpeningFeeParams) uint64 {
+func calculateInnerAmountMsat(h *lntest.TestHarness, outerAmountMsat uint64, params *lspd.OpeningFeeParams) uint64 {
var fee uint64
log.Printf("%+v", params)
if params == nil {
@@ -47,14 +48,14 @@ func calculateInnerAmountMsat(lsp LspNode, outerAmountMsat uint64, params *lspd.
}
if fee > outerAmountMsat {
- lsp.Harness().Fatalf("Fee is higher than amount")
+ h.Fatalf("Fee is higher than amount")
}
log.Printf("outer: %v, fee: %v", outerAmountMsat, fee)
return outerAmountMsat - fee
}
-func lsps2CalculateInnerAmountMsat(lsp LspNode, outerAmountMsat uint64, params *lsps2.OpeningFeeParams) uint64 {
+func Lsps2CalculateInnerAmountMsat(h *lntest.TestHarness, outerAmountMsat uint64, params *lsps2.OpeningFeeParams) uint64 {
fee := (outerAmountMsat*uint64(params.Proportional) + 999_999) / 1_000_000
if fee < params.MinFeeMsat {
fee = params.MinFeeMsat
diff --git a/itest/test_params.go b/itest/test_params.go
index ab9b4163..d137ab38 100644
--- a/itest/test_params.go
+++ b/itest/test_params.go
@@ -3,11 +3,11 @@ package itest
import (
"testing"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
+ "github.com/breez/lspd/itest/lntest"
)
-type LspFunc func(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) LspNode
+type LspFunc func(h *lntest.TestHarness, m *lntest.Miner, mem *mempoolApi, c *config.NodeConfig) (lntest.LightningNode, *Lspd)
type ClientFunc func(h *lntest.TestHarness, m *lntest.Miner) BreezClient
type testParams struct {
@@ -16,7 +16,8 @@ type testParams struct {
m *lntest.Miner
mem *mempoolApi
c BreezClient
- lsp LspNode
+ lspd *Lspd
+ node lntest.LightningNode
lspFunc LspFunc
clientFunc ClientFunc
}
@@ -33,8 +34,12 @@ func (h *testParams) Mempool() *mempoolApi {
return h.mem
}
-func (h *testParams) Lsp() LspNode {
- return h.lsp
+func (h *testParams) Lspd() *Lspd {
+ return h.lspd
+}
+
+func (h *testParams) Node() lntest.LightningNode {
+ return h.node
}
func (h *testParams) Harness() *lntest.TestHarness {
diff --git a/itest/zero_conf_utxo_test.go b/itest/zero_conf_utxo_test.go
index cb2481a4..495547eb 100644
--- a/itest/zero_conf_utxo_test.go
+++ b/itest/zero_conf_utxo_test.go
@@ -4,8 +4,8 @@ import (
"log"
"time"
- "github.com/breez/lntest"
"github.com/breez/lspd/config"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -16,44 +16,45 @@ func testOpenZeroConfUtxo(p *testParams) {
alice.Fund(10000000)
minConfs := uint32(0)
- lsp := p.lspFunc(p.h, p.m, p.mem, &config.NodeConfig{MinConfs: &minConfs})
+ node, lsp := p.lspFunc(p.h, p.m, p.mem, &config.NodeConfig{MinConfs: &minConfs})
+ node.Start()
lsp.Start()
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(node, &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
- tempaddr := lsp.LightningNode().GetNewAddress()
+ tempaddr := node.GetNewAddress()
p.m.SendToAddress(tempaddr, 210000)
- reserveaddr := lsp.LightningNode().GetNewAddress()
+ reserveaddr := node.GetNewAddress()
p.m.SendToAddress(reserveaddr, 50000)
p.m.MineBlocks(6)
- lsp.LightningNode().WaitForSync()
+ node.WaitForSync()
initialHeight := p.m.GetBlockHeight()
- addr := lsp.LightningNode().GetNewAddress()
- lsp.LightningNode().SendToAddress(addr, 200000)
+ addr := node.GetNewAddress()
+ node.SendToAddress(addr, 200000)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: lsp,
+ lsp: lsp.Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(node)
log.Printf("Registering payment with lsp")
- RegisterPayment(lsp, &lspd.PaymentInformation{
+ lsp.Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -65,7 +66,7 @@ func testOpenZeroConfUtxo(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(node, p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
payResp, err := alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
lntest.CheckError(p.t, err)
bobInvoice := p.BreezClient().Node().GetInvoice(payResp.PaymentHash)
diff --git a/itest/zero_reserve_test.go b/itest/zero_reserve_test.go
index 71ecec2d..73b63e1a 100644
--- a/itest/zero_reserve_test.go
+++ b/itest/zero_reserve_test.go
@@ -4,7 +4,7 @@ import (
"log"
"time"
- "github.com/breez/lntest"
+ "github.com/breez/lspd/itest/lntest"
lspd "github.com/breez/lspd/rpc"
"github.com/stretchr/testify/assert"
)
@@ -13,32 +13,32 @@ func testZeroReserve(p *testParams) {
alice := lntest.NewClnNode(p.h, p.m, "Alice")
alice.Start()
alice.Fund(10000000)
- p.lsp.LightningNode().Fund(10000000)
+ p.Node().Fund(10000000)
log.Print("Opening channel between Alice and the lsp")
- channel := alice.OpenChannel(p.lsp.LightningNode(), &lntest.OpenChannelOptions{
+ channel := alice.OpenChannel(p.Node(), &lntest.OpenChannelOptions{
AmountSat: publicChanAmount,
})
channelId := alice.WaitForChannelReady(channel)
log.Printf("Adding bob's invoices")
outerAmountMsat := uint64(2100000)
- innerAmountMsat := calculateInnerAmountMsat(p.lsp, outerAmountMsat, nil)
+ innerAmountMsat := calculateInnerAmountMsat(p.Harness(), outerAmountMsat, nil)
description := "Please pay me"
innerInvoice, outerInvoice := GenerateInvoices(p.BreezClient(),
generateInvoicesRequest{
innerAmountMsat: innerAmountMsat,
outerAmountMsat: outerAmountMsat,
description: description,
- lsp: p.lsp,
+ lsp: p.Lspd().Client(0),
})
p.BreezClient().SetHtlcAcceptor(innerAmountMsat)
log.Print("Connecting bob to lspd")
- p.BreezClient().Node().ConnectPeer(p.lsp.LightningNode())
+ p.BreezClient().Node().ConnectPeer(p.Node())
log.Printf("Registering payment with lsp")
- RegisterPayment(p.lsp, &lspd.PaymentInformation{
+ p.Lspd().Client(0).RegisterPayment(&lspd.PaymentInformation{
PaymentHash: innerInvoice.paymentHash,
PaymentSecret: innerInvoice.paymentSecret,
Destination: p.BreezClient().Node().NodeId(),
@@ -50,7 +50,7 @@ func testZeroReserve(p *testParams) {
log.Printf("Waiting %v to allow htlc interceptor to activate.", htlcInterceptorDelay)
<-time.After(htlcInterceptorDelay)
log.Printf("Alice paying")
- route := constructRoute(p.lsp.LightningNode(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
+ route := constructRoute(p.Node(), p.BreezClient().Node(), channelId, lntest.NewShortChanIDFromString("1x0x0"), outerAmountMsat)
alice.PayViaRoute(outerAmountMsat, outerInvoice.paymentHash, outerInvoice.paymentSecret, route)
// Make sure balance is correct
@@ -62,7 +62,7 @@ func testZeroReserve(p *testParams) {
log.Printf("local reserve: %d, remote reserve: %d", c.LocalReserveMsat, c.RemoteReserveMsat)
assert.Zero(p.t, c.LocalReserveMsat)
- lspInvoice := p.lsp.LightningNode().CreateBolt11Invoice(&lntest.CreateInvoiceOptions{
+ lspInvoice := p.Node().CreateBolt11Invoice(&lntest.CreateInvoiceOptions{
AmountMsat: innerAmountMsat - 1,
})
<-time.After(time.Second * 1)
diff --git a/lnd/client.go b/lnd/client.go
index 8f8a938b..c0ed3e9a 100644
--- a/lnd/client.go
+++ b/lnd/client.go
@@ -80,8 +80,8 @@ func (c *LndClient) Close() {
c.conn.Close()
}
-func (c *LndClient) StartListeners() {
- c.listenerCtx, c.listenerCancel = context.WithCancel(context.Background())
+func (c *LndClient) StartListeners(ctx context.Context) {
+ c.listenerCtx, c.listenerCancel = context.WithCancel(ctx)
go c.listenPeerEvents()
go c.listenChannelEvents()
}
diff --git a/cmd/lspd/run.go b/lspd.go
similarity index 81%
rename from cmd/lspd/run.go
rename to lspd.go
index 76634356..9a788e83 100644
--- a/cmd/lspd/run.go
+++ b/lspd.go
@@ -1,17 +1,12 @@
-package main
+package lspd
import (
"context"
"encoding/hex"
- "encoding/json"
"fmt"
"log"
"os"
- "os/signal"
- "strconv"
- "strings"
"sync"
- "syscall"
"time"
"github.com/breez/lspd/build"
@@ -29,23 +24,12 @@ import (
"github.com/breez/lspd/postgresql"
"github.com/btcsuite/btcd/btcec/v2"
ecies "github.com/ecies/go/v2"
- "github.com/urfave/cli"
)
-func runLspd(cliCtx *cli.Context) error {
+func Main(ctx context.Context, config *config.Config) error {
log.Printf(`Starting lspd, tag='%s', revision='%s'`, build.GetTag(), build.GetRevision())
- n := os.Getenv("NODES")
- var nodeConfigs []*config.NodeConfig
- err := json.Unmarshal([]byte(n), &nodeConfigs)
- if err != nil {
- log.Fatalf("failed to unmarshal NODES env: %v", err)
- }
-
- if len(nodeConfigs) == 0 {
- log.Fatalf("need at least one node configured in NODES.")
- }
- nodes, err := initializeNodes(nodeConfigs)
+ nodes, err := initializeNodes(config.Nodes)
if err != nil {
log.Fatalf("failed to initialize nodes: %v", err)
}
@@ -55,54 +39,35 @@ func runLspd(cliCtx *cli.Context) error {
log.Fatalf("failed to create nodes service: %v", err)
}
- var feeStrategy chain.FeeStrategy
- envFeeStrategy := os.Getenv("MEMPOOL_PRIORITY")
- switch strings.ToLower(envFeeStrategy) {
- case "minimum":
- feeStrategy = chain.FeeStrategyMinimum
- case "economy":
- feeStrategy = chain.FeeStrategyEconomy
- case "hour":
- feeStrategy = chain.FeeStrategyHour
- case "halfhour":
- feeStrategy = chain.FeeStrategyHalfHour
- case "fastest":
- feeStrategy = chain.FeeStrategyFastest
- default:
- feeStrategy = chain.FeeStrategyEconomy
- }
-
var mempoolClient *mempool.MempoolClient
- mempoolUrl := os.Getenv("MEMPOOL_API_BASE_URL")
- if mempoolUrl != "" {
- mempoolClient, err = mempool.NewMempoolClient(mempoolUrl)
+ if config.MempoolApiBaseUrl != nil {
+ mempoolClient, err = mempool.NewMempoolClient(*config.MempoolApiBaseUrl)
if err != nil {
log.Fatalf("failed to initialize mempool client: %v", err)
}
- log.Printf("using mempool api for fee estimation: %v, fee strategy: %v:%v", mempoolUrl, envFeeStrategy, feeStrategy)
+ log.Printf("using mempool api for fee estimation: %v, fee strategy: %v", *config.MempoolApiBaseUrl, config.FeeStrategy)
}
- databaseUrl := os.Getenv("DATABASE_URL")
- automigrate, _ := strconv.ParseBool(os.Getenv("AUTO_MIGRATE_DATABASE"))
- if automigrate {
- err = postgresql.Migrate(databaseUrl)
+ if config.AutoMigrateDb {
+ err = postgresql.Migrate(config.DatabaseUrl)
if err != nil {
log.Fatalf("Failed to migrate postgres database: %v", err)
}
}
- pool, err := postgresql.PgConnect(databaseUrl)
+ pool, err := postgresql.PgConnect(config.DatabaseUrl)
if err != nil {
log.Fatalf("pgConnect() error: %v", err)
}
+ interceptor.OpenChannelEmailConfig = config.OpenChannelEmail
interceptStore := postgresql.NewPostgresInterceptStore(pool)
openingStore := postgresql.NewPostgresOpeningStore(pool)
notificationsStore := postgresql.NewNotificationsStore(pool)
lsps2Store := postgresql.NewLsps2Store(pool)
historyStore := postgresql.NewHistoryStore(pool)
- ctx, cancel := context.WithCancel(context.Background())
+ ctx, cancel := context.WithCancel(ctx)
notificationService := notifications.NewNotificationService(notificationsStore)
go notificationService.Start(ctx)
openingService := common.NewOpeningService(openingStore, nodesService)
@@ -129,11 +94,11 @@ func runLspd(cliCtx *cli.Context) error {
log.Fatalf("failed to initialize LND client: %v", err)
}
- client.StartListeners()
+ client.StartListeners(ctx)
forwardSync := lnd.NewForwardSync(node.NodeId, client, historyStore)
go forwardSync.ForwardsSynchronize(ctx)
- interceptor := interceptor.NewInterceptHandler(client, node.NodeConfig, interceptStore, historyStore, openingService, feeEstimator, feeStrategy, notificationService)
+ interceptor := interceptor.NewInterceptHandler(client, node.NodeConfig, interceptStore, historyStore, openingService, feeEstimator, config.FeeStrategy, notificationService)
combinedHandler := common.NewCombinedHandler(interceptor)
htlcInterceptor, err = lnd.NewLndHtlcInterceptor(node.NodeConfig, client, combinedHandler)
if err != nil {
@@ -149,13 +114,13 @@ func runLspd(cliCtx *cli.Context) error {
forwardSync := cln.NewForwardSync(node.NodeId, client, historyStore)
go forwardSync.ForwardsSynchronize(ctx)
- legacyHandler := interceptor.NewInterceptHandler(client, node.NodeConfig, interceptStore, historyStore, openingService, feeEstimator, feeStrategy, notificationService)
+ legacyHandler := interceptor.NewInterceptHandler(client, node.NodeConfig, interceptStore, historyStore, openingService, feeEstimator, config.FeeStrategy, notificationService)
lsps2Handler := lsps2.NewInterceptHandler(lsps2Store, historyStore, openingService, client, feeEstimator, &lsps2.InterceptorConfig{
NodeId: node.NodeId,
AdditionalChannelCapacitySat: uint64(node.NodeConfig.AdditionalChannelCapacity),
MinConfs: node.NodeConfig.MinConfs,
TargetConf: node.NodeConfig.TargetConf,
- FeeStrategy: feeStrategy,
+ FeeStrategy: config.FeeStrategy,
MinPaymentSizeMsat: node.NodeConfig.MinPaymentSizeMsat,
MaxPaymentSizeMsat: node.NodeConfig.MaxPaymentSizeMsat,
TimeLockDelta: node.NodeConfig.TimeLockDelta,
@@ -188,11 +153,9 @@ func runLspd(cliCtx *cli.Context) error {
interceptors = append(interceptors, htlcInterceptor)
}
- address := os.Getenv("LISTEN_ADDRESS")
- certMagicDomain := os.Getenv("CERTMAGIC_DOMAIN")
cs := NewChannelOpenerServer(interceptStore, openingService)
ns := notifications.NewNotificationsServer(notificationsStore)
- s, err := NewGrpcServer(nodesService, address, certMagicDomain, cs, ns)
+ s, err := NewGrpcServer(nodesService, config.ListenAddress, config.CertmagicDomain, cs, ns)
if err != nil {
log.Fatalf("failed to initialize grpc server: %v", err)
}
@@ -240,11 +203,9 @@ func runLspd(cliCtx *cli.Context) error {
stopInterceptors()
}()
- c := make(chan os.Signal, 1)
- signal.Notify(c, syscall.SIGINT, syscall.SIGTERM)
go func() {
- sig := <-c
- log.Printf("Received stop signal %v. Stopping.", sig)
+ <-ctx.Done()
+ log.Printf("Received stop signal. Stopping.")
// Stop everything gracefully on stop signal
s.Stop()
@@ -288,6 +249,12 @@ func initializeNodes(configs []*config.NodeConfig) ([]*common.Node, error) {
}
if config.Lnd != nil {
+ if tlsCert, err := os.ReadFile(config.Lnd.Cert); err == nil {
+ config.Lnd.Cert = string(tlsCert)
+ }
+ if macaroon, err := os.ReadFile(config.Lnd.Macaroon); err == nil {
+ config.Lnd.Macaroon = hex.EncodeToString(macaroon)
+ }
node.Client, err = lnd.NewLndClient(config.Lnd)
if err != nil {
return nil, err
diff --git a/rpc/lspd.pb.go b/rpc/lspd.pb.go
index c8d92f14..76105488 100644
--- a/rpc/lspd.pb.go
+++ b/rpc/lspd.pb.go
@@ -1,10 +1,10 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.28.1
-// protoc v4.25.2
+// protoc-gen-go v1.33.0
+// protoc v4.25.3
// source: lspd.proto
-package lspd
+package rpc
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
@@ -95,14 +95,14 @@ type ChannelInformationReply struct {
// / The minimum value in millisatoshi we will require for incoming HTLCs on
// / the channel.
MinHtlcMsat int64 `protobuf:"varint,9,opt,name=min_htlc_msat,proto3" json:"min_htlc_msat,omitempty"`
- // Deprecated: Do not use.
+ // Deprecated: Marked as deprecated in lspd.proto.
ChannelFeePermyriad int64 `protobuf:"varint,10,opt,name=channel_fee_permyriad,json=channelFeePermyriad,proto3" json:"channel_fee_permyriad,omitempty"`
LspPubkey []byte `protobuf:"bytes,11,opt,name=lsp_pubkey,json=lspPubkey,proto3" json:"lsp_pubkey,omitempty"`
// The channel can be closed if not used this duration in seconds.
//
- // Deprecated: Do not use.
+ // Deprecated: Marked as deprecated in lspd.proto.
MaxInactiveDuration int64 `protobuf:"varint,12,opt,name=max_inactive_duration,json=maxInactiveDuration,proto3" json:"max_inactive_duration,omitempty"`
- // Deprecated: Do not use.
+ // Deprecated: Marked as deprecated in lspd.proto.
ChannelMinimumFeeMsat int64 `protobuf:"varint,13,opt,name=channel_minimum_fee_msat,json=channelMinimumFeeMsat,proto3" json:"channel_minimum_fee_msat,omitempty"`
OpeningFeeParamsMenu []*OpeningFeeParams `protobuf:"bytes,14,rep,name=opening_fee_params_menu,json=openingFeeParamsMenu,proto3" json:"opening_fee_params_menu,omitempty"`
}
@@ -202,7 +202,7 @@ func (x *ChannelInformationReply) GetMinHtlcMsat() int64 {
return 0
}
-// Deprecated: Do not use.
+// Deprecated: Marked as deprecated in lspd.proto.
func (x *ChannelInformationReply) GetChannelFeePermyriad() int64 {
if x != nil {
return x.ChannelFeePermyriad
@@ -217,7 +217,7 @@ func (x *ChannelInformationReply) GetLspPubkey() []byte {
return nil
}
-// Deprecated: Do not use.
+// Deprecated: Marked as deprecated in lspd.proto.
func (x *ChannelInformationReply) GetMaxInactiveDuration() int64 {
if x != nil {
return x.MaxInactiveDuration
@@ -225,7 +225,7 @@ func (x *ChannelInformationReply) GetMaxInactiveDuration() int64 {
return 0
}
-// Deprecated: Do not use.
+// Deprecated: Marked as deprecated in lspd.proto.
func (x *ChannelInformationReply) GetChannelMinimumFeeMsat() int64 {
if x != nil {
return x.ChannelMinimumFeeMsat
@@ -887,11 +887,12 @@ var file_lspd_proto_rawDesc = []byte{
0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x0d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x0f, 0x2e, 0x6c, 0x73, 0x70, 0x64, 0x2e, 0x45, 0x6e,
0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x1a, 0x0f, 0x2e, 0x6c, 0x73, 0x70, 0x64, 0x2e, 0x45,
- 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x22, 0x00, 0x42, 0x3a, 0x0a, 0x14, 0x69, 0x6f,
+ 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x22, 0x00, 0x42, 0x3e, 0x0a, 0x14, 0x69, 0x6f,
0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x73, 0x70, 0x64, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
0x63, 0x65, 0x42, 0x09, 0x4c, 0x73, 0x70, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
- 0x15, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72, 0x65, 0x65,
- 0x7a, 0x2f, 0x6c, 0x73, 0x70, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x19, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72, 0x65, 0x65,
+ 0x7a, 0x2f, 0x6c, 0x73, 0x70, 0x64, 0x2f, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
}
var (
diff --git a/rpc/lspd.proto b/rpc/lspd.proto
index 021fa4dd..9116ee75 100644
--- a/rpc/lspd.proto
+++ b/rpc/lspd.proto
@@ -3,7 +3,7 @@ syntax = "proto3";
option java_multiple_files = true;
option java_package = "io.grpc.lspd.service";
option java_outer_classname = "LspdProto";
-option go_package = "github.com/breez/lspd";
+option go_package = "github.com/breez/lspd/rpc";
package lspd;
diff --git a/rpc/lspd_grpc.pb.go b/rpc/lspd_grpc.pb.go
index 4ac74e2b..9cf55257 100644
--- a/rpc/lspd_grpc.pb.go
+++ b/rpc/lspd_grpc.pb.go
@@ -1,10 +1,10 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
-// - protoc v4.25.2
+// - protoc v4.25.3
// source: lspd.proto
-package lspd
+package rpc
import (
context "context"
diff --git a/rpc/node_context.go b/rpc/node_context.go
index 436fb403..9b3388c6 100644
--- a/rpc/node_context.go
+++ b/rpc/node_context.go
@@ -1,4 +1,4 @@
-package lspd
+package rpc
import (
context "context"