From 2ba05ef2b8229d6c850f19e0cf9ed642894c614a Mon Sep 17 00:00:00 2001
From: daywalker90 <8257956+daywalker90@users.noreply.github.com>
Date: Sat, 9 Nov 2024 16:47:17 +0100
Subject: [PATCH] msggen: add missing rpc commands new to 24.11

Changelog-None
---
 .msggen.json                                  | 1399 +++++++++++++
 cln-grpc/proto/node.proto                     |  441 +++++
 cln-grpc/src/convert.rs                       | 1014 ++++++++++
 cln-grpc/src/server.rs                        |  704 +++++++
 cln-rpc/src/model.rs                          | 1339 +++++++++++++
 contrib/msggen/msggen/utils/utils.py          |   22 +
 contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py | 1752 +++++++++--------
 .../pyln/grpc/node_pb2_grpc.py                |  726 +++++++
 contrib/pyln-testing/pyln/testing/grpc2py.py  |  340 ++++
 9 files changed, 6928 insertions(+), 809 deletions(-)

diff --git a/.msggen.json b/.msggen.json
index 17da595ea..5f46dc5d1 100644
--- a/.msggen.json
+++ b/.msggen.json
@@ -1,11 +1,24 @@
 {
     "grpc-enum-map": {
+        "Askrene-inform-channelInform": {
+            "constrained": 0,
+            "succeeded": 2,
+            "unconstrained": 1
+        },
         "Bkpr-dumpincomecsvCsv_format": {
             "cointracker": 0,
             "harmony": 2,
             "koinly": 1,
             "quickbooks": 3
         },
+        "Bkpr-editdescriptionbyoutpointUpdatedType": {
+            "chain": 0,
+            "channel": 1
+        },
+        "Bkpr-editdescriptionbypaymentidUpdatedType": {
+            "chain": 0,
+            "channel": 1
+        },
         "Bkpr-listaccounteventsEventsType": {
             "chain": 1,
             "channel": 2,
@@ -511,6 +524,203 @@
             "AddPsbtOutput.outnum": 3,
             "AddPsbtOutput.psbt": 1
         },
+        "Askrene-ageRequest": {
+            "AskRene-Age.cutoff": 2,
+            "AskRene-Age.layer": 1
+        },
+        "Askrene-ageResponse": {
+            "AskRene-Age.layer": 1,
+            "AskRene-Age.num_removed": 2
+        },
+        "Askrene-bias-channelBiases": {
+            "AskRene-Bias-Channel.biases[].bias": 3,
+            "AskRene-Bias-Channel.biases[].description": 4,
+            "AskRene-Bias-Channel.biases[].layer": 1,
+            "AskRene-Bias-Channel.biases[].short_channel_id_dir": 2
+        },
+        "Askrene-bias-channelRequest": {
+            "AskRene-Bias-Channel.bias": 3,
+            "AskRene-Bias-Channel.description": 4,
+            "AskRene-Bias-Channel.layer": 1,
+            "AskRene-Bias-Channel.short_channel_id_dir": 2
+        },
+        "Askrene-bias-channelResponse": {
+            "AskRene-Bias-Channel.biases[]": 1
+        },
+        "Askrene-create-channelRequest": {
+            "AskRene-Create-Channel.base_fee": 8,
+            "AskRene-Create-Channel.capacity_msat": 5,
+            "AskRene-Create-Channel.delay": 10,
+            "AskRene-Create-Channel.destination": 3,
+            "AskRene-Create-Channel.htlc_max": 7,
+            "AskRene-Create-Channel.htlc_min": 6,
+            "AskRene-Create-Channel.layer": 1,
+            "AskRene-Create-Channel.proportional_fee": 9,
+            "AskRene-Create-Channel.short_channel_id": 4,
+            "AskRene-Create-Channel.source": 2
+        },
+        "Askrene-create-layerLayers": {
+            "AskRene-Create-Layer.layers[].biases[]": 8,
+            "AskRene-Create-Layer.layers[].channel_updates[]": 6,
+            "AskRene-Create-Layer.layers[].constraints[]": 7,
+            "AskRene-Create-Layer.layers[].created_channels[]": 5,
+            "AskRene-Create-Layer.layers[].disabled_channels[]": 4,
+            "AskRene-Create-Layer.layers[].disabled_nodes[]": 3,
+            "AskRene-Create-Layer.layers[].layer": 1,
+            "AskRene-Create-Layer.layers[].persistent": 2
+        },
+        "Askrene-create-layerLayersBiases": {
+            "AskRene-Create-Layer.layers[].biases[].bias": 2,
+            "AskRene-Create-Layer.layers[].biases[].description": 3,
+            "AskRene-Create-Layer.layers[].biases[].short_channel_id_dir": 1
+        },
+        "Askrene-create-layerLayersChannel_updates": {
+            "AskRene-Create-Layer.layers[].channel_updates[].delay": 5,
+            "AskRene-Create-Layer.layers[].channel_updates[].fee_base_msat": 3,
+            "AskRene-Create-Layer.layers[].channel_updates[].fee_proportional_millionths": 4,
+            "AskRene-Create-Layer.layers[].channel_updates[].htlc_maximum_msat": 2,
+            "AskRene-Create-Layer.layers[].channel_updates[].htlc_minimum_msat": 1
+        },
+        "Askrene-create-layerLayersConstraints": {
+            "AskRene-Create-Layer.layers[].constraints[].direction": 2,
+            "AskRene-Create-Layer.layers[].constraints[].maximum_msat": 3,
+            "AskRene-Create-Layer.layers[].constraints[].minimum_msat": 4,
+            "AskRene-Create-Layer.layers[].constraints[].short_channel_id": 1
+        },
+        "Askrene-create-layerLayersCreated_channels": {
+            "AskRene-Create-Layer.layers[].created_channels[].capacity_msat": 4,
+            "AskRene-Create-Layer.layers[].created_channels[].destination": 2,
+            "AskRene-Create-Layer.layers[].created_channels[].short_channel_id": 3,
+            "AskRene-Create-Layer.layers[].created_channels[].source": 1
+        },
+        "Askrene-create-layerRequest": {
+            "AskRene-Create-Layer.layer": 1,
+            "AskRene-Create-Layer.persistent": 2
+        },
+        "Askrene-create-layerResponse": {
+            "AskRene-Create-Layer.layers[]": 1
+        },
+        "Askrene-disable-nodeRequest": {
+            "AskRene-Disable-Node.layer": 1,
+            "AskRene-Disable-Node.node": 2
+        },
+        "Askrene-inform-channelConstraint": {
+            "AskRene-Inform-Channel.constraint.direction": 2,
+            "AskRene-Inform-Channel.constraint.maximum_msat": 4,
+            "AskRene-Inform-Channel.constraint.minimum_msat": 5,
+            "AskRene-Inform-Channel.constraint.short_channel_id": 1,
+            "AskRene-Inform-Channel.constraint.timestamp": 3
+        },
+        "Askrene-inform-channelConstraints": {
+            "AskRene-Inform-Channel.constraints[].layer": 2,
+            "AskRene-Inform-Channel.constraints[].maximum_msat": 4,
+            "AskRene-Inform-Channel.constraints[].minimum_msat": 5,
+            "AskRene-Inform-Channel.constraints[].short_channel_id_dir": 1,
+            "AskRene-Inform-Channel.constraints[].timestamp": 3
+        },
+        "Askrene-inform-channelRequest": {
+            "AskRene-Inform-Channel.amount_msat": 7,
+            "AskRene-Inform-Channel.direction": 3,
+            "AskRene-Inform-Channel.inform": 8,
+            "AskRene-Inform-Channel.layer": 1,
+            "AskRene-Inform-Channel.maximum_msat": 4,
+            "AskRene-Inform-Channel.minimum_msat": 5,
+            "AskRene-Inform-Channel.short_channel_id": 2,
+            "AskRene-Inform-Channel.short_channel_id_dir": 6
+        },
+        "Askrene-inform-channelResponse": {
+            "AskRene-Inform-Channel.constraint": 1,
+            "AskRene-Inform-Channel.constraints[]": 2
+        },
+        "Askrene-listlayersLayers": {
+            "AskRene-ListLayers.layers[].biases[]": 8,
+            "AskRene-ListLayers.layers[].channel_updates[]": 7,
+            "AskRene-ListLayers.layers[].constraints[]": 4,
+            "AskRene-ListLayers.layers[].created_channels[]": 3,
+            "AskRene-ListLayers.layers[].disabled_channels[]": 6,
+            "AskRene-ListLayers.layers[].disabled_nodes[]": 2,
+            "AskRene-ListLayers.layers[].layer": 1,
+            "AskRene-ListLayers.layers[].persistent": 5
+        },
+        "Askrene-listlayersLayersBiases": {
+            "AskRene-ListLayers.layers[].biases[].bias": 2,
+            "AskRene-ListLayers.layers[].biases[].description": 3,
+            "AskRene-ListLayers.layers[].biases[].short_channel_id_dir": 1
+        },
+        "Askrene-listlayersLayersChannel_updates": {
+            "AskRene-ListLayers.layers[].channel_updates[].cltv_expiry_delta": 7,
+            "AskRene-ListLayers.layers[].channel_updates[].enabled": 2,
+            "AskRene-ListLayers.layers[].channel_updates[].fee_base_msat": 5,
+            "AskRene-ListLayers.layers[].channel_updates[].fee_proportional_millionths": 6,
+            "AskRene-ListLayers.layers[].channel_updates[].htlc_maximum_msat": 4,
+            "AskRene-ListLayers.layers[].channel_updates[].htlc_minimum_msat": 3,
+            "AskRene-ListLayers.layers[].channel_updates[].short_channel_id_dir": 1
+        },
+        "Askrene-listlayersLayersConstraints": {
+            "AskRene-ListLayers.layers[].constraints[].direction": 2,
+            "AskRene-ListLayers.layers[].constraints[].maximum_msat": 3,
+            "AskRene-ListLayers.layers[].constraints[].minimum_msat": 4,
+            "AskRene-ListLayers.layers[].constraints[].short_channel_id": 1,
+            "AskRene-ListLayers.layers[].constraints[].short_channel_id_dir": 5,
+            "AskRene-ListLayers.layers[].constraints[].timestamp": 6
+        },
+        "Askrene-listlayersLayersCreated_channels": {
+            "AskRene-ListLayers.layers[].created_channels[].capacity_msat": 4,
+            "AskRene-ListLayers.layers[].created_channels[].delay": 9,
+            "AskRene-ListLayers.layers[].created_channels[].destination": 2,
+            "AskRene-ListLayers.layers[].created_channels[].fee_base_msat": 7,
+            "AskRene-ListLayers.layers[].created_channels[].fee_proportional_millionths": 8,
+            "AskRene-ListLayers.layers[].created_channels[].htlc_maximum_msat": 6,
+            "AskRene-ListLayers.layers[].created_channels[].htlc_minimum_msat": 5,
+            "AskRene-ListLayers.layers[].created_channels[].short_channel_id": 3,
+            "AskRene-ListLayers.layers[].created_channels[].source": 1
+        },
+        "Askrene-listlayersRequest": {
+            "AskRene-ListLayers.layer": 1
+        },
+        "Askrene-listlayersResponse": {
+            "AskRene-ListLayers.layers[]": 1
+        },
+        "Askrene-listreservationsReservations": {
+            "AskRene-ListReservations.reservations[].age_in_seconds": 3,
+            "AskRene-ListReservations.reservations[].amount_msat": 2,
+            "AskRene-ListReservations.reservations[].command_id": 4,
+            "AskRene-ListReservations.reservations[].short_channel_id_dir": 1
+        },
+        "Askrene-listreservationsResponse": {
+            "AskRene-ListReservations.reservations[]": 1
+        },
+        "Askrene-remove-layerRequest": {
+            "AskRene-Remove-Layer.layer": 1
+        },
+        "Askrene-reservePath": {
+            "AskRene-Reserve.path[].amount_msat": 3,
+            "AskRene-Reserve.path[].direction": 2,
+            "AskRene-Reserve.path[].short_channel_id": 1,
+            "AskRene-Reserve.path[].short_channel_id_dir": 4
+        },
+        "Askrene-reserveRequest": {
+            "AskRene-Reserve.path[]": 1
+        },
+        "Askrene-unreservePath": {
+            "AskRene-Unreserve.path[].amount_msat": 3,
+            "AskRene-Unreserve.path[].direction": 2,
+            "AskRene-Unreserve.path[].short_channel_id": 1,
+            "AskRene-Unreserve.path[].short_channel_id_dir": 4
+        },
+        "Askrene-unreserveRequest": {
+            "AskRene-Unreserve.path[]": 1
+        },
+        "Askrene-update-channelRequest": {
+            "AskRene-Update-Channel.cltv_expiry_delta": 8,
+            "AskRene-Update-Channel.enabled": 3,
+            "AskRene-Update-Channel.fee_base_msat": 6,
+            "AskRene-Update-Channel.fee_proportional_millionths": 7,
+            "AskRene-Update-Channel.htlc_maximum_msat": 5,
+            "AskRene-Update-Channel.htlc_minimum_msat": 4,
+            "AskRene-Update-Channel.layer": 1,
+            "AskRene-Update-Channel.short_channel_id_dir": 2
+        },
         "Autoclean-onceAutoclean": {
             "AutoClean-Once.autoclean.expiredinvoices": 6,
             "AutoClean-Once.autoclean.failedforwards": 2,
@@ -645,6 +855,56 @@
             "Bkpr-DumpIncomeCsv.csv_file": 1,
             "Bkpr-DumpIncomeCsv.csv_format": 2
         },
+        "Bkpr-editdescriptionbyoutpointRequest": {
+            "Bkpr-EditDescriptionByOutpoint.description": 2,
+            "Bkpr-EditDescriptionByOutpoint.outpoint": 1
+        },
+        "Bkpr-editdescriptionbyoutpointResponse": {
+            "Bkpr-EditDescriptionByOutpoint.updated[]": 1
+        },
+        "Bkpr-editdescriptionbyoutpointUpdated": {
+            "Bkpr-EditDescriptionByOutpoint.updated[].account": 1,
+            "Bkpr-EditDescriptionByOutpoint.updated[].blockheight": 10,
+            "Bkpr-EditDescriptionByOutpoint.updated[].credit_msat": 4,
+            "Bkpr-EditDescriptionByOutpoint.updated[].currency": 6,
+            "Bkpr-EditDescriptionByOutpoint.updated[].debit_msat": 5,
+            "Bkpr-EditDescriptionByOutpoint.updated[].description": 8,
+            "Bkpr-EditDescriptionByOutpoint.updated[].fees_msat": 14,
+            "Bkpr-EditDescriptionByOutpoint.updated[].is_rebalance": 15,
+            "Bkpr-EditDescriptionByOutpoint.updated[].origin": 11,
+            "Bkpr-EditDescriptionByOutpoint.updated[].outpoint": 9,
+            "Bkpr-EditDescriptionByOutpoint.updated[].part_id": 16,
+            "Bkpr-EditDescriptionByOutpoint.updated[].payment_id": 12,
+            "Bkpr-EditDescriptionByOutpoint.updated[].tag": 3,
+            "Bkpr-EditDescriptionByOutpoint.updated[].timestamp": 7,
+            "Bkpr-EditDescriptionByOutpoint.updated[].txid": 13,
+            "Bkpr-EditDescriptionByOutpoint.updated[].type": 2
+        },
+        "Bkpr-editdescriptionbypaymentidRequest": {
+            "Bkpr-EditDescriptionByPaymentId.description": 2,
+            "Bkpr-EditDescriptionByPaymentId.payment_id": 1
+        },
+        "Bkpr-editdescriptionbypaymentidResponse": {
+            "Bkpr-EditDescriptionByPaymentId.updated[]": 1
+        },
+        "Bkpr-editdescriptionbypaymentidUpdated": {
+            "Bkpr-EditDescriptionByPaymentId.updated[].account": 1,
+            "Bkpr-EditDescriptionByPaymentId.updated[].blockheight": 10,
+            "Bkpr-EditDescriptionByPaymentId.updated[].credit_msat": 4,
+            "Bkpr-EditDescriptionByPaymentId.updated[].currency": 6,
+            "Bkpr-EditDescriptionByPaymentId.updated[].debit_msat": 5,
+            "Bkpr-EditDescriptionByPaymentId.updated[].description": 8,
+            "Bkpr-EditDescriptionByPaymentId.updated[].fees_msat": 14,
+            "Bkpr-EditDescriptionByPaymentId.updated[].is_rebalance": 15,
+            "Bkpr-EditDescriptionByPaymentId.updated[].origin": 11,
+            "Bkpr-EditDescriptionByPaymentId.updated[].outpoint": 9,
+            "Bkpr-EditDescriptionByPaymentId.updated[].part_id": 16,
+            "Bkpr-EditDescriptionByPaymentId.updated[].payment_id": 12,
+            "Bkpr-EditDescriptionByPaymentId.updated[].tag": 3,
+            "Bkpr-EditDescriptionByPaymentId.updated[].timestamp": 7,
+            "Bkpr-EditDescriptionByPaymentId.updated[].txid": 13,
+            "Bkpr-EditDescriptionByPaymentId.updated[].type": 2
+        },
         "Bkpr-inspectRequest": {
             "Bkpr-Inspect.account": 1
         },
@@ -1149,6 +1409,20 @@
             "Dev-Forget-Channel.funding_txid": 3,
             "Dev-Forget-Channel.funding_unspent": 2
         },
+        "Dev-spliceRequest": {
+            "Dev-Splice.debug_log": 4,
+            "Dev-Splice.dev-wetrun": 5,
+            "Dev-Splice.dryrun": 2,
+            "Dev-Splice.force_feerate": 3,
+            "Dev-Splice.script_or_json": 1
+        },
+        "Dev-spliceResponse": {
+            "Dev-Splice.dryrun[]": 1,
+            "Dev-Splice.log[]": 5,
+            "Dev-Splice.psbt": 2,
+            "Dev-Splice.tx": 3,
+            "Dev-Splice.txid": 4
+        },
         "DisableinvoicerequestRequest": {
             "DisableInvoiceRequest.invreq_id": 1
         },
@@ -1178,6 +1452,25 @@
         "EmergencyrecoverResponse": {
             "EmergencyRecover.stubs[]": 1
         },
+        "EnableofferRequest": {
+            "EnableOffer.offer_id": 1
+        },
+        "EnableofferResponse": {
+            "EnableOffer.active": 2,
+            "EnableOffer.bolt12": 4,
+            "EnableOffer.label": 6,
+            "EnableOffer.offer_id": 1,
+            "EnableOffer.single_use": 3,
+            "EnableOffer.used": 5
+        },
+        "ExposesecretRequest": {
+            "ExposeSecret.identifier": 2,
+            "ExposeSecret.passphrase": 1
+        },
+        "ExposesecretResponse": {
+            "ExposeSecret.codex32": 2,
+            "ExposeSecret.identifier": 1
+        },
         "FeeratesOnchain_fee_estimates": {
             "Feerates.onchain_fee_estimates.htlc_success_satoshis": 5,
             "Feerates.onchain_fee_estimates.htlc_timeout_satoshis": 4,
@@ -1391,6 +1684,9 @@
             "FundPsbt.psbt": 1,
             "FundPsbt.reservations[]": 6
         },
+        "GetemergencyrecoverdataResponse": {
+            "GetEmergencyRecoverData.filedata": 1
+        },
         "GetinfoAddress": {
             "Getinfo.address[].address": 3,
             "Getinfo.address[].port": 2,
@@ -1470,6 +1766,33 @@
             "GetRoute.route[].msatoshi": 7,
             "GetRoute.route[].style": 6
         },
+        "GetroutesRequest": {
+            "GetRoutes.amount_msat": 3,
+            "GetRoutes.destination": 2,
+            "GetRoutes.final_cltv": 7,
+            "GetRoutes.finalcltv": 6,
+            "GetRoutes.layers[]": 4,
+            "GetRoutes.maxfee_msat": 5,
+            "GetRoutes.source": 1
+        },
+        "GetroutesResponse": {
+            "GetRoutes.probability_ppm": 1,
+            "GetRoutes.routes[]": 2
+        },
+        "GetroutesRoutes": {
+            "GetRoutes.routes[].amount_msat": 2,
+            "GetRoutes.routes[].final_cltv": 4,
+            "GetRoutes.routes[].path[]": 3,
+            "GetRoutes.routes[].probability_ppm": 1
+        },
+        "GetroutesRoutesPath": {
+            "GetRoutes.routes[].path[].amount_msat": 3,
+            "GetRoutes.routes[].path[].delay": 5,
+            "GetRoutes.routes[].path[].direction": 2,
+            "GetRoutes.routes[].path[].next_node_id": 4,
+            "GetRoutes.routes[].path[].short_channel_id": 1,
+            "GetRoutes.routes[].path[].short_channel_id_dir": 6
+        },
         "HelpHelp": {
             "Help.help[].category": 2,
             "Help.help[].command": 1,
@@ -1483,6 +1806,22 @@
             "Help.format-hint": 2,
             "Help.help[]": 1
         },
+        "InjectpaymentonionRequest": {
+            "InjectPaymentOnion.amount_msat": 3,
+            "InjectPaymentOnion.cltv_expiry": 4,
+            "InjectPaymentOnion.groupid": 6,
+            "InjectPaymentOnion.invstring": 8,
+            "InjectPaymentOnion.label": 7,
+            "InjectPaymentOnion.localinvreqid": 9,
+            "InjectPaymentOnion.onion": 1,
+            "InjectPaymentOnion.partid": 5,
+            "InjectPaymentOnion.payment_hash": 2
+        },
+        "InjectpaymentonionResponse": {
+            "InjectPaymentOnion.completed_at": 2,
+            "InjectPaymentOnion.created_at": 1,
+            "InjectPaymentOnion.created_index": 3
+        },
         "InvoiceRequest": {
             "Invoice.amount_msat": 10,
             "Invoice.cltv": 6,
@@ -1547,6 +1886,19 @@
             "KeySend.status": 9,
             "KeySend.warning_partial_completion": 8
         },
+        "ListaddressesAddresses": {
+            "ListAddresses.addresses[].bech32": 2,
+            "ListAddresses.addresses[].keyidx": 1,
+            "ListAddresses.addresses[].p2tr": 3
+        },
+        "ListaddressesRequest": {
+            "ListAddresses.address": 1,
+            "ListAddresses.limit": 3,
+            "ListAddresses.start": 2
+        },
+        "ListaddressesResponse": {
+            "ListAddresses.addresses[]": 1
+        },
         "ListchannelsChannels": {
             "ListChannels.channels[].active": 8,
             "ListChannels.channels[].amount_msat": 5,
@@ -3369,6 +3721,21 @@
             "Withdraw.psbt": 3,
             "Withdraw.tx": 1,
             "Withdraw.txid": 2
+        },
+        "XpayRequest": {
+            "Xpay.amount_msat": 2,
+            "Xpay.invstring": 1,
+            "Xpay.layers[]": 4,
+            "Xpay.maxfee": 3,
+            "Xpay.partial_msat": 6,
+            "Xpay.retry_for": 5
+        },
+        "XpayResponse": {
+            "Xpay.amount_msat": 4,
+            "Xpay.amount_sent_msat": 5,
+            "Xpay.failed_parts": 2,
+            "Xpay.payment_preimage": 1,
+            "Xpay.successful_parts": 3
         }
     },
     "model-field-versions": {
@@ -3412,6 +3779,574 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "AskRene-Age": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Age.cutoff": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Age.layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Age.num_removed": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.bias": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.biases[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.biases[].bias": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.biases[].description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.biases[].layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.biases[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Bias-Channel.short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.base_fee": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.capacity_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.delay": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.destination": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.htlc_max": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.htlc_min": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.proportional_fee": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Channel.source": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].biases[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].biases[].bias": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].biases[].description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].biases[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[].delay": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[].fee_base_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[].fee_proportional_millionths": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[].htlc_maximum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].channel_updates[].htlc_minimum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].constraints[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].constraints[].direction": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].constraints[].maximum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].constraints[].minimum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].constraints[].short_channel_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].created_channels[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].created_channels[].capacity_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].created_channels[].destination": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].created_channels[].short_channel_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].created_channels[].source": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].disabled_channels[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].disabled_nodes[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.layers[].persistent": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Create-Layer.persistent": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Disable-Node": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Disable-Node.layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Disable-Node.node": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.amount_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint.direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint.maximum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint.minimum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint.short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraint.timestamp": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[].layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[].maximum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[].minimum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.constraints[].timestamp": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.inform": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.maximum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.minimum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Inform-Channel.short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].biases[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].biases[].bias": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].biases[].description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].biases[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].cltv_expiry_delta": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].enabled": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].fee_base_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].fee_proportional_millionths": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].htlc_maximum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].htlc_minimum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].channel_updates[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].maximum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].minimum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].constraints[].timestamp": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].capacity_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].delay": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].destination": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].fee_base_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].fee_proportional_millionths": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].htlc_maximum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].htlc_minimum_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].created_channels[].source": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].disabled_channels[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].disabled_nodes[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].layer": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-ListLayers.layers[].persistent": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations.reservations[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations.reservations[].age_in_seconds": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations.reservations[].amount_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations.reservations[].command_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-ListReservations.reservations[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Remove-Layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Remove-Layer.layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Reserve": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Reserve.path[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Reserve.path[].amount_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Reserve.path[].direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Reserve.path[].short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Reserve.path[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Unreserve": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Unreserve.path[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Unreserve.path[].amount_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Unreserve.path[].direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Unreserve.path[].short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "AskRene-Unreserve.path[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.cltv_expiry_delta": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.enabled": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.fee_base_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.fee_proportional_millionths": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.htlc_maximum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.htlc_minimum_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.layer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "AskRene-Update-Channel.short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "AutoClean-Once": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -3752,6 +4687,166 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "Bkpr-EditDescriptionByOutpoint": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.outpoint": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].account": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].blockheight": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].credit_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].currency": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].debit_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].fees_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].is_rebalance": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].origin": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].outpoint": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].part_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].payment_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].tag": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].timestamp": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].txid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByOutpoint.updated[].type": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.payment_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].account": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].blockheight": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].credit_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].currency": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].debit_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].description": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].fees_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].is_rebalance": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].origin": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].outpoint": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].part_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].payment_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].tag": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].timestamp": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].txid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Bkpr-EditDescriptionByPaymentId.updated[].type": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "Bkpr-Inspect": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -5316,6 +6411,50 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "Dev-Splice": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.debug_log": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.dev-wetrun": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.dryrun": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.dryrun[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.force_feerate": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.log[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.psbt": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.script_or_json": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.tx": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Dev-Splice.txid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "DisableInvoiceRequest": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -5392,6 +6531,50 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "EnableOffer": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.active": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.bolt12": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.label": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.offer_id": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.single_use": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "EnableOffer.used": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ExposeSecret": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ExposeSecret.codex32": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ExposeSecret.identifier": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ExposeSecret.passphrase": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "Feerates": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -5984,6 +7167,14 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "GetEmergencyRecoverData": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "GetEmergencyRecoverData.filedata": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "GetLog": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -6100,6 +7291,86 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "GetRoutes": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.amount_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.destination": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.final_cltv": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "GetRoutes.finalcltv": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.layers[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.maxfee_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.probability_ppm": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].amount_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].final_cltv": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[]": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].amount_msat": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].delay": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].direction": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].next_node_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].short_channel_id": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].path[].short_channel_id_dir": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "GetRoutes.routes[].probability_ppm": {
+            "added": "v24.08",
+            "deprecated": null
+        },
+        "GetRoutes.source": {
+            "added": "v24.08",
+            "deprecated": null
+        },
         "Getinfo": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -6252,6 +7523,58 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "InjectPaymentOnion": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.amount_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.cltv_expiry": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.completed_at": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.created_at": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.created_index": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.groupid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.invstring": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.label": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.localinvreqid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.onion": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.partid": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "InjectPaymentOnion.payment_hash": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "Invoice": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -6448,6 +7771,38 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "ListAddresses": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.address": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.addresses[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.addresses[].bech32": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.addresses[].keyidx": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.addresses[].p2tr": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.limit": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "ListAddresses.start": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "ListChannels": {
             "added": "pre-v0.10.1",
             "deprecated": null
@@ -11580,6 +12935,50 @@
             "added": "pre-v0.10.1",
             "deprecated": null
         },
+        "Xpay": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.amount_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.amount_sent_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.failed_parts": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.invstring": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.layers[]": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.maxfee": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.partial_msat": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.payment_preimage": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.retry_for": {
+            "added": "v24.11",
+            "deprecated": null
+        },
+        "Xpay.successful_parts": {
+            "added": "v24.11",
+            "deprecated": null
+        },
         "block_added": {
             "added": "v22.11",
             "deprecated": null
diff --git a/cln-grpc/proto/node.proto b/cln-grpc/proto/node.proto
index 5ec0e0617..abc06452c 100644
--- a/cln-grpc/proto/node.proto
+++ b/cln-grpc/proto/node.proto
@@ -28,6 +28,8 @@ service Node {
 	rpc DelInvoice(DelinvoiceRequest) returns (DelinvoiceResponse) {}
 	rpc DevForgetChannel(DevforgetchannelRequest) returns (DevforgetchannelResponse) {}
 	rpc EmergencyRecover(EmergencyrecoverRequest) returns (EmergencyrecoverResponse) {}
+	rpc GetEmergencyRecoverData(GetemergencyrecoverdataRequest) returns (GetemergencyrecoverdataResponse) {}
+	rpc ExposeSecret(ExposesecretRequest) returns (ExposesecretResponse) {}
 	rpc Recover(RecoverRequest) returns (RecoverResponse) {}
 	rpc RecoverChannel(RecoverchannelRequest) returns (RecoverchannelResponse) {}
 	rpc Invoice(InvoiceRequest) returns (InvoiceResponse) {}
@@ -62,6 +64,7 @@ service Node {
 	rpc DelPay(DelpayRequest) returns (DelpayResponse) {}
 	rpc DelForward(DelforwardRequest) returns (DelforwardResponse) {}
 	rpc DisableOffer(DisableofferRequest) returns (DisableofferResponse) {}
+	rpc EnableOffer(EnableofferRequest) returns (EnableofferResponse) {}
 	rpc Disconnect(DisconnectRequest) returns (DisconnectResponse) {}
 	rpc Feerates(FeeratesRequest) returns (FeeratesResponse) {}
 	rpc FetchInvoice(FetchinvoiceRequest) returns (FetchinvoiceResponse) {}
@@ -72,6 +75,7 @@ service Node {
 	rpc GetLog(GetlogRequest) returns (GetlogResponse) {}
 	rpc FunderUpdate(FunderupdateRequest) returns (FunderupdateResponse) {}
 	rpc GetRoute(GetrouteRequest) returns (GetrouteResponse) {}
+	rpc ListAddresses(ListaddressesRequest) returns (ListaddressesResponse) {}
 	rpc ListForwards(ListforwardsRequest) returns (ListforwardsResponse) {}
 	rpc ListOffers(ListoffersRequest) returns (ListoffersResponse) {}
 	rpc ListPays(ListpaysRequest) returns (ListpaysResponse) {}
@@ -99,6 +103,7 @@ service Node {
 	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 DevSplice(DevspliceRequest) returns (DevspliceResponse) {}
 	rpc UnreserveInputs(UnreserveinputsRequest) returns (UnreserveinputsResponse) {}
 	rpc UpgradeWallet(UpgradewalletRequest) returns (UpgradewalletResponse) {}
 	rpc WaitBlockHeight(WaitblockheightRequest) returns (WaitblockheightResponse) {}
@@ -115,10 +120,27 @@ service Node {
 	rpc BkprListAccountEvents(BkprlistaccounteventsRequest) returns (BkprlistaccounteventsResponse) {}
 	rpc BkprListBalances(BkprlistbalancesRequest) returns (BkprlistbalancesResponse) {}
 	rpc BkprListIncome(BkprlistincomeRequest) returns (BkprlistincomeResponse) {}
+	rpc BkprEditDescriptionByPaymentId(BkpreditdescriptionbypaymentidRequest) returns (BkpreditdescriptionbypaymentidResponse) {}
+	rpc BkprEditDescriptionByOutpoint(BkpreditdescriptionbyoutpointRequest) returns (BkpreditdescriptionbyoutpointResponse) {}
 	rpc BlacklistRune(BlacklistruneRequest) returns (BlacklistruneResponse) {}
 	rpc CheckRune(CheckruneRequest) returns (CheckruneResponse) {}
 	rpc CreateRune(CreateruneRequest) returns (CreateruneResponse) {}
 	rpc ShowRunes(ShowrunesRequest) returns (ShowrunesResponse) {}
+	rpc AskReneUnreserve(AskreneunreserveRequest) returns (AskreneunreserveResponse) {}
+	rpc AskReneListLayers(AskrenelistlayersRequest) returns (AskrenelistlayersResponse) {}
+	rpc AskReneCreateLayer(AskrenecreatelayerRequest) returns (AskrenecreatelayerResponse) {}
+	rpc AskReneRemoveLayer(AskreneremovelayerRequest) returns (AskreneremovelayerResponse) {}
+	rpc AskReneReserve(AskrenereserveRequest) returns (AskrenereserveResponse) {}
+	rpc AskReneAge(AskreneageRequest) returns (AskreneageResponse) {}
+	rpc GetRoutes(GetroutesRequest) returns (GetroutesResponse) {}
+	rpc AskReneDisableNode(AskrenedisablenodeRequest) returns (AskrenedisablenodeResponse) {}
+	rpc AskReneInformChannel(AskreneinformchannelRequest) returns (AskreneinformchannelResponse) {}
+	rpc AskReneCreateChannel(AskrenecreatechannelRequest) returns (AskrenecreatechannelResponse) {}
+	rpc AskReneUpdateChannel(AskreneupdatechannelRequest) returns (AskreneupdatechannelResponse) {}
+	rpc AskReneBiasChannel(AskrenebiaschannelRequest) returns (AskrenebiaschannelResponse) {}
+	rpc AskReneListReservations(AskrenelistreservationsRequest) returns (AskrenelistreservationsResponse) {}
+	rpc InjectPaymentOnion(InjectpaymentonionRequest) returns (InjectpaymentonionResponse) {}
+	rpc Xpay(XpayRequest) returns (XpayResponse) {}
 
 	rpc SubscribeBlockAdded(StreamBlockAddedRequest) returns (stream BlockAddedNotification) {}
 	rpc SubscribeChannelOpenFailed(StreamChannelOpenFailedRequest) returns (stream ChannelOpenFailedNotification) {}
@@ -699,6 +721,23 @@ message EmergencyrecoverResponse {
 	repeated bytes stubs = 1;
 }
 
+message GetemergencyrecoverdataRequest {
+}
+
+message GetemergencyrecoverdataResponse {
+	bytes filedata = 1;
+}
+
+message ExposesecretRequest {
+	string passphrase = 1;
+	optional string identifier = 2;
+}
+
+message ExposesecretResponse {
+	string identifier = 1;
+	string codex32 = 2;
+}
+
 message RecoverRequest {
 	string hsmsecret = 1;
 }
@@ -1803,6 +1842,19 @@ message DisableofferResponse {
 	optional string label = 6;
 }
 
+message EnableofferRequest {
+	bytes offer_id = 1;
+}
+
+message EnableofferResponse {
+	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;
@@ -2105,6 +2157,22 @@ message GetrouteRoute {
 	GetrouteRouteStyle style = 6;
 }
 
+message ListaddressesRequest {
+	optional string address = 1;
+	optional uint64 start = 2;
+	optional uint32 limit = 3;
+}
+
+message ListaddressesResponse {
+	repeated ListaddressesAddresses addresses = 1;
+}
+
+message ListaddressesAddresses {
+	uint64 keyidx = 1;
+	optional string bech32 = 2;
+	optional string p2tr = 3;
+}
+
 message ListforwardsRequest {
 	// ListForwards.status
 	enum ListforwardsStatus {
@@ -2692,6 +2760,22 @@ message Splice_updateResponse {
 	optional bool signatures_secured = 3;
 }
 
+message DevspliceRequest {
+	string script_or_json = 1;
+	optional bool dryrun = 2;
+	optional bool force_feerate = 3;
+	optional bool debug_log = 4;
+	optional bool dev_wetrun = 5;
+}
+
+message DevspliceResponse {
+	repeated string dryrun = 1;
+	optional string psbt = 2;
+	optional string tx = 3;
+	optional string txid = 4;
+	repeated string log = 5;
+}
+
 message UnreserveinputsRequest {
 	string psbt = 1;
 	optional uint32 reserve = 2;
@@ -3540,6 +3624,72 @@ message BkprlistincomeIncome_events {
 	optional bytes payment_id = 10;
 }
 
+message BkpreditdescriptionbypaymentidRequest {
+	string payment_id = 1;
+	string description = 2;
+}
+
+message BkpreditdescriptionbypaymentidResponse {
+	repeated BkpreditdescriptionbypaymentidUpdated updated = 1;
+}
+
+message BkpreditdescriptionbypaymentidUpdated {
+	// Bkpr-EditDescriptionByPaymentId.updated[].type
+	enum BkpreditdescriptionbypaymentidUpdatedType {
+		CHAIN = 0;
+		CHANNEL = 1;
+	}
+	string account = 1;
+	BkpreditdescriptionbypaymentidUpdatedType item_type = 2;
+	string tag = 3;
+	Amount credit_msat = 4;
+	Amount debit_msat = 5;
+	string currency = 6;
+	uint32 timestamp = 7;
+	string description = 8;
+	optional string outpoint = 9;
+	optional uint32 blockheight = 10;
+	optional string origin = 11;
+	optional bytes payment_id = 12;
+	optional bytes txid = 13;
+	optional Amount fees_msat = 14;
+	optional bool is_rebalance = 15;
+	optional uint32 part_id = 16;
+}
+
+message BkpreditdescriptionbyoutpointRequest {
+	string outpoint = 1;
+	string description = 2;
+}
+
+message BkpreditdescriptionbyoutpointResponse {
+	repeated BkpreditdescriptionbyoutpointUpdated updated = 1;
+}
+
+message BkpreditdescriptionbyoutpointUpdated {
+	// Bkpr-EditDescriptionByOutpoint.updated[].type
+	enum BkpreditdescriptionbyoutpointUpdatedType {
+		CHAIN = 0;
+		CHANNEL = 1;
+	}
+	string account = 1;
+	BkpreditdescriptionbyoutpointUpdatedType item_type = 2;
+	string tag = 3;
+	Amount credit_msat = 4;
+	Amount debit_msat = 5;
+	string currency = 6;
+	uint32 timestamp = 7;
+	string description = 8;
+	optional string outpoint = 9;
+	optional uint32 blockheight = 10;
+	optional string origin = 11;
+	optional bytes payment_id = 12;
+	optional bytes txid = 13;
+	optional Amount fees_msat = 14;
+	optional bool is_rebalance = 15;
+	optional uint32 part_id = 16;
+}
+
 message BlacklistruneRequest {
 	optional uint64 start = 1;
 	optional uint64 end = 2;
@@ -3607,6 +3757,297 @@ message ShowrunesRunesRestrictionsAlternatives {
 	string english = 4;
 }
 
+message AskreneunreserveRequest {
+	repeated AskreneunreservePath path = 1;
+}
+
+message AskreneunreserveResponse {
+}
+
+message AskreneunreservePath {
+	Amount amount_msat = 3;
+	optional string short_channel_id_dir = 4;
+}
+
+message AskrenelistlayersRequest {
+	optional string layer = 1;
+}
+
+message AskrenelistlayersResponse {
+	repeated AskrenelistlayersLayers layers = 1;
+}
+
+message AskrenelistlayersLayers {
+	string layer = 1;
+	repeated bytes disabled_nodes = 2;
+	repeated AskrenelistlayersLayersCreated_channels created_channels = 3;
+	repeated AskrenelistlayersLayersConstraints constraints = 4;
+	optional bool persistent = 5;
+	repeated string disabled_channels = 6;
+	repeated AskrenelistlayersLayersChannel_updates channel_updates = 7;
+	repeated AskrenelistlayersLayersBiases biases = 8;
+}
+
+message AskrenelistlayersLayersCreated_channels {
+	bytes source = 1;
+	bytes destination = 2;
+	string short_channel_id = 3;
+	Amount capacity_msat = 4;
+}
+
+message AskrenelistlayersLayersChannel_updates {
+	string short_channel_id_dir = 1;
+	optional bool enabled = 2;
+	optional Amount htlc_minimum_msat = 3;
+	optional Amount htlc_maximum_msat = 4;
+	optional Amount fee_base_msat = 5;
+	optional uint32 fee_proportional_millionths = 6;
+	optional uint32 cltv_expiry_delta = 7;
+}
+
+message AskrenelistlayersLayersConstraints {
+	optional Amount maximum_msat = 3;
+	optional Amount minimum_msat = 4;
+	optional string short_channel_id_dir = 5;
+	optional uint64 timestamp = 6;
+}
+
+message AskrenelistlayersLayersBiases {
+	string short_channel_id_dir = 1;
+	sint64 bias = 2;
+	optional string description = 3;
+}
+
+message AskrenecreatelayerRequest {
+	string layer = 1;
+	optional bool persistent = 2;
+}
+
+message AskrenecreatelayerResponse {
+	repeated AskrenecreatelayerLayers layers = 1;
+}
+
+message AskrenecreatelayerLayers {
+	string layer = 1;
+	bool persistent = 2;
+	repeated bytes disabled_nodes = 3;
+	repeated string disabled_channels = 4;
+	repeated AskrenecreatelayerLayersCreated_channels created_channels = 5;
+	repeated AskrenecreatelayerLayersChannel_updates channel_updates = 6;
+	repeated AskrenecreatelayerLayersConstraints constraints = 7;
+	repeated AskrenecreatelayerLayersBiases biases = 8;
+}
+
+message AskrenecreatelayerLayersCreated_channels {
+	bytes source = 1;
+	bytes destination = 2;
+	string short_channel_id = 3;
+	Amount capacity_msat = 4;
+}
+
+message AskrenecreatelayerLayersChannel_updates {
+	optional Amount htlc_minimum_msat = 1;
+	optional Amount htlc_maximum_msat = 2;
+	optional Amount fee_base_msat = 3;
+	optional uint32 fee_proportional_millionths = 4;
+	optional uint32 delay = 5;
+}
+
+message AskrenecreatelayerLayersConstraints {
+	string short_channel_id = 1;
+	uint32 direction = 2;
+	optional Amount maximum_msat = 3;
+	optional Amount minimum_msat = 4;
+}
+
+message AskrenecreatelayerLayersBiases {
+	string short_channel_id_dir = 1;
+	sint64 bias = 2;
+	optional string description = 3;
+}
+
+message AskreneremovelayerRequest {
+	string layer = 1;
+}
+
+message AskreneremovelayerResponse {
+}
+
+message AskrenereserveRequest {
+	repeated AskrenereservePath path = 1;
+}
+
+message AskrenereserveResponse {
+}
+
+message AskrenereservePath {
+	Amount amount_msat = 3;
+	optional string short_channel_id_dir = 4;
+}
+
+message AskreneageRequest {
+	string layer = 1;
+	uint64 cutoff = 2;
+}
+
+message AskreneageResponse {
+	string layer = 1;
+	uint64 num_removed = 2;
+}
+
+message GetroutesRequest {
+	bytes source = 1;
+	bytes destination = 2;
+	Amount amount_msat = 3;
+	repeated string layers = 4;
+	Amount maxfee_msat = 5;
+	optional uint32 final_cltv = 7;
+}
+
+message GetroutesResponse {
+	uint64 probability_ppm = 1;
+	repeated GetroutesRoutes routes = 2;
+}
+
+message GetroutesRoutes {
+	uint64 probability_ppm = 1;
+	Amount amount_msat = 2;
+	repeated GetroutesRoutesPath path = 3;
+	optional uint32 final_cltv = 4;
+}
+
+message GetroutesRoutesPath {
+	Amount amount_msat = 3;
+	bytes next_node_id = 4;
+	uint32 delay = 5;
+	optional string short_channel_id_dir = 6;
+}
+
+message AskrenedisablenodeRequest {
+	string layer = 1;
+	bytes node = 2;
+}
+
+message AskrenedisablenodeResponse {
+}
+
+message AskreneinformchannelRequest {
+	// AskRene-Inform-Channel.inform
+	enum AskreneinformchannelInform {
+		CONSTRAINED = 0;
+		UNCONSTRAINED = 1;
+		SUCCEEDED = 2;
+	}
+	string layer = 1;
+	optional string short_channel_id_dir = 6;
+	optional Amount amount_msat = 7;
+	optional AskreneinformchannelInform inform = 8;
+}
+
+message AskreneinformchannelResponse {
+	repeated AskreneinformchannelConstraints constraints = 2;
+}
+
+message AskreneinformchannelConstraints {
+	string short_channel_id_dir = 1;
+	string layer = 2;
+	uint64 timestamp = 3;
+	optional Amount maximum_msat = 4;
+	optional Amount minimum_msat = 5;
+}
+
+message AskrenecreatechannelRequest {
+	string layer = 1;
+	bytes source = 2;
+	bytes destination = 3;
+	string short_channel_id = 4;
+	Amount capacity_msat = 5;
+}
+
+message AskrenecreatechannelResponse {
+}
+
+message AskreneupdatechannelRequest {
+	string layer = 1;
+	string short_channel_id_dir = 2;
+	optional bool enabled = 3;
+	optional Amount htlc_minimum_msat = 4;
+	optional Amount htlc_maximum_msat = 5;
+	optional Amount fee_base_msat = 6;
+	optional uint32 fee_proportional_millionths = 7;
+	optional uint32 cltv_expiry_delta = 8;
+}
+
+message AskreneupdatechannelResponse {
+}
+
+message AskrenebiaschannelRequest {
+	string layer = 1;
+	string short_channel_id_dir = 2;
+	sint64 bias = 3;
+	optional string description = 4;
+}
+
+message AskrenebiaschannelResponse {
+	repeated AskrenebiaschannelBiases biases = 1;
+}
+
+message AskrenebiaschannelBiases {
+	string layer = 1;
+	string short_channel_id_dir = 2;
+	sint64 bias = 3;
+	optional string description = 4;
+}
+
+message AskrenelistreservationsRequest {
+}
+
+message AskrenelistreservationsResponse {
+	repeated AskrenelistreservationsReservations reservations = 1;
+}
+
+message AskrenelistreservationsReservations {
+	string short_channel_id_dir = 1;
+	Amount amount_msat = 2;
+	uint64 age_in_seconds = 3;
+	string command_id = 4;
+}
+
+message InjectpaymentonionRequest {
+	bytes onion = 1;
+	bytes payment_hash = 2;
+	Amount amount_msat = 3;
+	uint32 cltv_expiry = 4;
+	uint64 partid = 5;
+	uint64 groupid = 6;
+	optional string label = 7;
+	optional string invstring = 8;
+	optional bytes localinvreqid = 9;
+}
+
+message InjectpaymentonionResponse {
+	uint64 created_at = 1;
+	uint64 completed_at = 2;
+	uint64 created_index = 3;
+}
+
+message XpayRequest {
+	string invstring = 1;
+	optional Amount amount_msat = 2;
+	optional Amount maxfee = 3;
+	repeated string layers = 4;
+	optional uint32 retry_for = 5;
+	optional Amount partial_msat = 6;
+}
+
+message XpayResponse {
+	bytes payment_preimage = 1;
+	uint64 failed_parts = 2;
+	uint64 successful_parts = 3;
+	Amount amount_msat = 4;
+	Amount amount_sent_msat = 5;
+}
+
 message StreamBlockAddedRequest {
 }
 
diff --git a/cln-grpc/src/convert.rs b/cln-grpc/src/convert.rs
index 84625f97e..b20ed17aa 100644
--- a/cln-grpc/src/convert.rs
+++ b/cln-grpc/src/convert.rs
@@ -601,6 +601,25 @@ impl From<responses::EmergencyrecoverResponse> for pb::EmergencyrecoverResponse
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::GetemergencyrecoverdataResponse> for pb::GetemergencyrecoverdataResponse {
+    fn from(c: responses::GetemergencyrecoverdataResponse) -> Self {
+        Self {
+            filedata: hex::decode(&c.filedata).unwrap(), // Rule #2 for type hex
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::ExposesecretResponse> for pb::ExposesecretResponse {
+    fn from(c: responses::ExposesecretResponse) -> Self {
+        Self {
+            codex32: c.codex32, // Rule #2 for type string
+            identifier: c.identifier, // Rule #2 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<responses::RecoverResponse> for pb::RecoverResponse {
     fn from(c: responses::RecoverResponse) -> Self {
@@ -1694,6 +1713,20 @@ impl From<responses::DisableofferResponse> for pb::DisableofferResponse {
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::EnableofferResponse> for pb::EnableofferResponse {
+    fn from(c: responses::EnableofferResponse) -> Self {
+        Self {
+            active: c.active, // Rule #2 for type boolean
+            bolt12: c.bolt12, // Rule #2 for type string
+            label: c.label, // Rule #2 for type string?
+            offer_id: <Sha256 as AsRef<[u8]>>::as_ref(&c.offer_id).to_vec(), // Rule #2 for type hash
+            single_use: c.single_use, // Rule #2 for type boolean
+            used: c.used, // Rule #2 for type boolean
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<responses::DisconnectResponse> for pb::DisconnectResponse {
     fn from(c: responses::DisconnectResponse) -> Self {
@@ -1980,6 +2013,27 @@ impl From<responses::GetrouteResponse> for pb::GetrouteResponse {
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::ListaddressesAddresses> for pb::ListaddressesAddresses {
+    fn from(c: responses::ListaddressesAddresses) -> Self {
+        Self {
+            bech32: c.bech32, // Rule #2 for type string?
+            keyidx: c.keyidx, // Rule #2 for type u64
+            p2tr: c.p2tr, // Rule #2 for type string?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::ListaddressesResponse> for pb::ListaddressesResponse {
+    fn from(c: responses::ListaddressesResponse) -> Self {
+        Self {
+            // Field: ListAddresses.addresses[]
+            addresses: c.addresses.into_iter().map(|i| i.into()).collect(), // Rule #3 for type ListaddressesAddresses
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<responses::ListforwardsForwards> for pb::ListforwardsForwards {
     fn from(c: responses::ListforwardsForwards) -> Self {
@@ -2531,6 +2585,21 @@ impl From<responses::Splice_updateResponse> for pb::SpliceUpdateResponse {
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::DevspliceResponse> for pb::DevspliceResponse {
+    fn from(c: responses::DevspliceResponse) -> Self {
+        Self {
+            // Field: Dev-Splice.dryrun[]
+            dryrun: c.dryrun.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: Dev-Splice.log[]
+            log: c.log.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            psbt: c.psbt, // Rule #2 for type string?
+            tx: c.tx, // Rule #2 for type string?
+            txid: c.txid, // Rule #2 for type string?
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<responses::UnreserveinputsReservations> for pb::UnreserveinputsReservations {
     fn from(c: responses::UnreserveinputsReservations) -> Self {
@@ -3845,6 +3914,74 @@ impl From<responses::BkprlistincomeResponse> for pb::BkprlistincomeResponse {
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::BkpreditdescriptionbypaymentidUpdated> for pb::BkpreditdescriptionbypaymentidUpdated {
+    fn from(c: responses::BkpreditdescriptionbypaymentidUpdated) -> Self {
+        Self {
+            account: c.account, // Rule #2 for type string
+            blockheight: c.blockheight, // Rule #2 for type u32?
+            credit_msat: Some(c.credit_msat.into()), // Rule #2 for type msat
+            currency: c.currency, // Rule #2 for type string
+            debit_msat: Some(c.debit_msat.into()), // Rule #2 for type msat
+            description: c.description, // Rule #2 for type string
+            fees_msat: c.fees_msat.map(|f| f.into()), // Rule #2 for type msat?
+            is_rebalance: c.is_rebalance, // Rule #2 for type boolean?
+            origin: c.origin, // Rule #2 for type string?
+            outpoint: c.outpoint, // Rule #2 for type string?
+            part_id: c.part_id, // Rule #2 for type u32?
+            payment_id: c.payment_id.map(|v| hex::decode(v).unwrap()), // Rule #2 for type hex?
+            tag: c.tag, // Rule #2 for type string
+            timestamp: c.timestamp, // Rule #2 for type u32
+            txid: c.txid.map(|v| hex::decode(v).unwrap()), // Rule #2 for type txid?
+            item_type: c.item_type as i32,
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::BkpreditdescriptionbypaymentidResponse> for pb::BkpreditdescriptionbypaymentidResponse {
+    fn from(c: responses::BkpreditdescriptionbypaymentidResponse) -> Self {
+        Self {
+            // Field: Bkpr-EditDescriptionByPaymentId.updated[]
+            updated: c.updated.into_iter().map(|i| i.into()).collect(), // Rule #3 for type BkpreditdescriptionbypaymentidUpdated
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::BkpreditdescriptionbyoutpointUpdated> for pb::BkpreditdescriptionbyoutpointUpdated {
+    fn from(c: responses::BkpreditdescriptionbyoutpointUpdated) -> Self {
+        Self {
+            account: c.account, // Rule #2 for type string
+            blockheight: c.blockheight, // Rule #2 for type u32?
+            credit_msat: Some(c.credit_msat.into()), // Rule #2 for type msat
+            currency: c.currency, // Rule #2 for type string
+            debit_msat: Some(c.debit_msat.into()), // Rule #2 for type msat
+            description: c.description, // Rule #2 for type string
+            fees_msat: c.fees_msat.map(|f| f.into()), // Rule #2 for type msat?
+            is_rebalance: c.is_rebalance, // Rule #2 for type boolean?
+            origin: c.origin, // Rule #2 for type string?
+            outpoint: c.outpoint, // Rule #2 for type string?
+            part_id: c.part_id, // Rule #2 for type u32?
+            payment_id: c.payment_id.map(|v| hex::decode(v).unwrap()), // Rule #2 for type hex?
+            tag: c.tag, // Rule #2 for type string
+            timestamp: c.timestamp, // Rule #2 for type u32
+            txid: c.txid.map(|v| hex::decode(v).unwrap()), // Rule #2 for type txid?
+            item_type: c.item_type as i32,
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::BkpreditdescriptionbyoutpointResponse> for pb::BkpreditdescriptionbyoutpointResponse {
+    fn from(c: responses::BkpreditdescriptionbyoutpointResponse) -> Self {
+        Self {
+            // Field: Bkpr-EditDescriptionByOutpoint.updated[]
+            updated: c.updated.into_iter().map(|i| i.into()).collect(), // Rule #3 for type BkpreditdescriptionbyoutpointUpdated
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<responses::BlacklistruneBlacklist> for pb::BlacklistruneBlacklist {
     fn from(c: responses::BlacklistruneBlacklist) -> Self {
@@ -3935,6 +4072,353 @@ impl From<responses::ShowrunesResponse> for pb::ShowrunesResponse {
     }
 }
 
+#[allow(unused_variables)]
+impl From<responses::AskreneunreserveResponse> for pb::AskreneunreserveResponse {
+    fn from(c: responses::AskreneunreserveResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersLayersBiases> for pb::AskrenelistlayersLayersBiases {
+    fn from(c: responses::AskrenelistlayersLayersBiases) -> Self {
+        Self {
+            bias: c.bias, // Rule #2 for type integer
+            description: c.description, // Rule #2 for type string?
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersLayersChannel_updates> for pb::AskrenelistlayersLayersChannelUpdates {
+    fn from(c: responses::AskrenelistlayersLayersChannel_updates) -> Self {
+        Self {
+            cltv_expiry_delta: c.cltv_expiry_delta.map(|v| v.into()), // Rule #2 for type u16?
+            enabled: c.enabled, // Rule #2 for type boolean?
+            fee_base_msat: c.fee_base_msat.map(|f| f.into()), // Rule #2 for type msat?
+            fee_proportional_millionths: c.fee_proportional_millionths, // Rule #2 for type u32?
+            htlc_maximum_msat: c.htlc_maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            htlc_minimum_msat: c.htlc_minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersLayersConstraints> for pb::AskrenelistlayersLayersConstraints {
+    fn from(c: responses::AskrenelistlayersLayersConstraints) -> Self {
+        Self {
+            maximum_msat: c.maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            minimum_msat: c.minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| v.to_string()), // Rule #2 for type short_channel_id_dir?
+            timestamp: c.timestamp, // Rule #2 for type u64?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersLayersCreated_channels> for pb::AskrenelistlayersLayersCreatedChannels {
+    fn from(c: responses::AskrenelistlayersLayersCreated_channels) -> Self {
+        Self {
+            capacity_msat: Some(c.capacity_msat.into()), // Rule #2 for type msat
+            destination: c.destination.serialize().to_vec(), // Rule #2 for type pubkey
+            short_channel_id: c.short_channel_id.to_string(), // Rule #2 for type short_channel_id
+            source: c.source.serialize().to_vec(), // Rule #2 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersLayers> for pb::AskrenelistlayersLayers {
+    fn from(c: responses::AskrenelistlayersLayers) -> Self {
+        Self {
+            // Field: AskRene-ListLayers.layers[].biases[]
+            biases: c.biases.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: AskRene-ListLayers.layers[].channel_updates[]
+            channel_updates: c.channel_updates.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: AskRene-ListLayers.layers[].constraints[]
+            constraints: c.constraints.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenelistlayersLayersConstraints
+            // Field: AskRene-ListLayers.layers[].created_channels[]
+            created_channels: c.created_channels.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenelistlayersLayersCreated_channels
+            // Field: AskRene-ListLayers.layers[].disabled_channels[]
+            disabled_channels: c.disabled_channels.map(|arr| arr.into_iter().map(|i| i.to_string()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: AskRene-ListLayers.layers[].disabled_nodes[]
+            disabled_nodes: c.disabled_nodes.into_iter().map(|i| i.serialize().to_vec()).collect(), // Rule #3 for type pubkey
+            layer: c.layer, // Rule #2 for type string
+            persistent: c.persistent, // Rule #2 for type boolean?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistlayersResponse> for pb::AskrenelistlayersResponse {
+    fn from(c: responses::AskrenelistlayersResponse) -> Self {
+        Self {
+            // Field: AskRene-ListLayers.layers[]
+            layers: c.layers.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenelistlayersLayers
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerLayersBiases> for pb::AskrenecreatelayerLayersBiases {
+    fn from(c: responses::AskrenecreatelayerLayersBiases) -> Self {
+        Self {
+            bias: c.bias, // Rule #2 for type integer
+            description: c.description, // Rule #2 for type string?
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerLayersChannel_updates> for pb::AskrenecreatelayerLayersChannelUpdates {
+    fn from(c: responses::AskrenecreatelayerLayersChannel_updates) -> Self {
+        Self {
+            delay: c.delay.map(|v| v.into()), // Rule #2 for type u16?
+            fee_base_msat: c.fee_base_msat.map(|f| f.into()), // Rule #2 for type msat?
+            fee_proportional_millionths: c.fee_proportional_millionths, // Rule #2 for type u32?
+            htlc_maximum_msat: c.htlc_maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            htlc_minimum_msat: c.htlc_minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerLayersConstraints> for pb::AskrenecreatelayerLayersConstraints {
+    fn from(c: responses::AskrenecreatelayerLayersConstraints) -> Self {
+        Self {
+            direction: c.direction, // Rule #2 for type u32
+            maximum_msat: c.maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            minimum_msat: c.minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            short_channel_id: c.short_channel_id.to_string(), // Rule #2 for type short_channel_id
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerLayersCreated_channels> for pb::AskrenecreatelayerLayersCreatedChannels {
+    fn from(c: responses::AskrenecreatelayerLayersCreated_channels) -> Self {
+        Self {
+            capacity_msat: Some(c.capacity_msat.into()), // Rule #2 for type msat
+            destination: c.destination.serialize().to_vec(), // Rule #2 for type pubkey
+            short_channel_id: c.short_channel_id.to_string(), // Rule #2 for type short_channel_id
+            source: c.source.serialize().to_vec(), // Rule #2 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerLayers> for pb::AskrenecreatelayerLayers {
+    fn from(c: responses::AskrenecreatelayerLayers) -> Self {
+        Self {
+            // Field: AskRene-Create-Layer.layers[].biases[]
+            biases: c.biases.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: AskRene-Create-Layer.layers[].channel_updates[]
+            channel_updates: c.channel_updates.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenecreatelayerLayersChannel_updates
+            // Field: AskRene-Create-Layer.layers[].constraints[]
+            constraints: c.constraints.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenecreatelayerLayersConstraints
+            // Field: AskRene-Create-Layer.layers[].created_channels[]
+            created_channels: c.created_channels.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenecreatelayerLayersCreated_channels
+            // Field: AskRene-Create-Layer.layers[].disabled_channels[]
+            disabled_channels: c.disabled_channels.map(|arr| arr.into_iter().map(|i| i.to_string()).collect()).unwrap_or(vec![]), // Rule #3
+            // Field: AskRene-Create-Layer.layers[].disabled_nodes[]
+            disabled_nodes: c.disabled_nodes.into_iter().map(|i| i.serialize().to_vec()).collect(), // Rule #3 for type pubkey
+            layer: c.layer, // Rule #2 for type string
+            persistent: c.persistent, // Rule #2 for type boolean
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatelayerResponse> for pb::AskrenecreatelayerResponse {
+    fn from(c: responses::AskrenecreatelayerResponse) -> Self {
+        Self {
+            // Field: AskRene-Create-Layer.layers[]
+            layers: c.layers.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenecreatelayerLayers
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskreneremovelayerResponse> for pb::AskreneremovelayerResponse {
+    fn from(c: responses::AskreneremovelayerResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenereserveResponse> for pb::AskrenereserveResponse {
+    fn from(c: responses::AskrenereserveResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskreneageResponse> for pb::AskreneageResponse {
+    fn from(c: responses::AskreneageResponse) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string
+            num_removed: c.num_removed, // Rule #2 for type u64
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::GetroutesRoutesPath> for pb::GetroutesRoutesPath {
+    fn from(c: responses::GetroutesRoutesPath) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            delay: c.delay, // Rule #2 for type u32
+            next_node_id: c.next_node_id.serialize().to_vec(), // Rule #2 for type pubkey
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| v.to_string()), // Rule #2 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::GetroutesRoutes> for pb::GetroutesRoutes {
+    fn from(c: responses::GetroutesRoutes) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            final_cltv: c.final_cltv, // Rule #2 for type u32?
+            // Field: GetRoutes.routes[].path[]
+            path: c.path.into_iter().map(|i| i.into()).collect(), // Rule #3 for type GetroutesRoutesPath
+            probability_ppm: c.probability_ppm, // Rule #2 for type u64
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::GetroutesResponse> for pb::GetroutesResponse {
+    fn from(c: responses::GetroutesResponse) -> Self {
+        Self {
+            probability_ppm: c.probability_ppm, // Rule #2 for type u64
+            // Field: GetRoutes.routes[]
+            routes: c.routes.into_iter().map(|i| i.into()).collect(), // Rule #3 for type GetroutesRoutes
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenedisablenodeResponse> for pb::AskrenedisablenodeResponse {
+    fn from(c: responses::AskrenedisablenodeResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskreneinformchannelConstraints> for pb::AskreneinformchannelConstraints {
+    fn from(c: responses::AskreneinformchannelConstraints) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string
+            maximum_msat: c.maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            minimum_msat: c.minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+            timestamp: c.timestamp, // Rule #2 for type u64
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskreneinformchannelResponse> for pb::AskreneinformchannelResponse {
+    fn from(c: responses::AskreneinformchannelResponse) -> Self {
+        Self {
+            // Field: AskRene-Inform-Channel.constraints[]
+            constraints: c.constraints.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenecreatechannelResponse> for pb::AskrenecreatechannelResponse {
+    fn from(c: responses::AskrenecreatechannelResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskreneupdatechannelResponse> for pb::AskreneupdatechannelResponse {
+    fn from(c: responses::AskreneupdatechannelResponse) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenebiaschannelBiases> for pb::AskrenebiaschannelBiases {
+    fn from(c: responses::AskrenebiaschannelBiases) -> Self {
+        Self {
+            bias: c.bias, // Rule #2 for type integer
+            description: c.description, // Rule #2 for type string?
+            layer: c.layer, // Rule #2 for type string
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenebiaschannelResponse> for pb::AskrenebiaschannelResponse {
+    fn from(c: responses::AskrenebiaschannelResponse) -> Self {
+        Self {
+            // Field: AskRene-Bias-Channel.biases[]
+            biases: c.biases.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenebiaschannelBiases
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistreservationsReservations> for pb::AskrenelistreservationsReservations {
+    fn from(c: responses::AskrenelistreservationsReservations) -> Self {
+        Self {
+            age_in_seconds: c.age_in_seconds, // Rule #2 for type u64
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            command_id: c.command_id, // Rule #2 for type string
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::AskrenelistreservationsResponse> for pb::AskrenelistreservationsResponse {
+    fn from(c: responses::AskrenelistreservationsResponse) -> Self {
+        Self {
+            // Field: AskRene-ListReservations.reservations[]
+            reservations: c.reservations.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenelistreservationsReservations
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::InjectpaymentonionResponse> for pb::InjectpaymentonionResponse {
+    fn from(c: responses::InjectpaymentonionResponse) -> Self {
+        Self {
+            completed_at: c.completed_at, // Rule #2 for type u64
+            created_at: c.created_at, // Rule #2 for type u64
+            created_index: c.created_index, // Rule #2 for type u64
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<responses::XpayResponse> for pb::XpayResponse {
+    fn from(c: responses::XpayResponse) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            amount_sent_msat: Some(c.amount_sent_msat.into()), // Rule #2 for type msat
+            failed_parts: c.failed_parts, // Rule #2 for type u64
+            payment_preimage: c.payment_preimage.to_vec(), // Rule #2 for type secret
+            successful_parts: c.successful_parts, // Rule #2 for type u64
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<notifications::BlockAddedNotification> for pb::BlockAddedNotification {
     fn from(c: notifications::BlockAddedNotification) -> Self {
@@ -4247,6 +4731,24 @@ impl From<requests::EmergencyrecoverRequest> for pb::EmergencyrecoverRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::GetemergencyrecoverdataRequest> for pb::GetemergencyrecoverdataRequest {
+    fn from(c: requests::GetemergencyrecoverdataRequest) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::ExposesecretRequest> for pb::ExposesecretRequest {
+    fn from(c: requests::ExposesecretRequest) -> Self {
+        Self {
+            identifier: c.identifier, // Rule #2 for type string?
+            passphrase: c.passphrase, // Rule #2 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<requests::RecoverRequest> for pb::RecoverRequest {
     fn from(c: requests::RecoverRequest) -> Self {
@@ -4669,6 +5171,15 @@ impl From<requests::DisableofferRequest> for pb::DisableofferRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::EnableofferRequest> for pb::EnableofferRequest {
+    fn from(c: requests::EnableofferRequest) -> Self {
+        Self {
+            offer_id: <Sha256 as AsRef<[u8]>>::as_ref(&c.offer_id).to_vec(), // Rule #2 for type hash
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<requests::DisconnectRequest> for pb::DisconnectRequest {
     fn from(c: requests::DisconnectRequest) -> Self {
@@ -4815,6 +5326,17 @@ impl From<requests::GetrouteRequest> for pb::GetrouteRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::ListaddressesRequest> for pb::ListaddressesRequest {
+    fn from(c: requests::ListaddressesRequest) -> Self {
+        Self {
+            address: c.address, // Rule #2 for type string?
+            limit: c.limit, // Rule #2 for type u32?
+            start: c.start, // Rule #2 for type u64?
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<requests::ListforwardsRequest> for pb::ListforwardsRequest {
     fn from(c: requests::ListforwardsRequest) -> Self {
@@ -5161,6 +5683,19 @@ impl From<requests::Splice_updateRequest> for pb::SpliceUpdateRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::DevspliceRequest> for pb::DevspliceRequest {
+    fn from(c: requests::DevspliceRequest) -> Self {
+        Self {
+            debug_log: c.debug_log, // Rule #2 for type boolean?
+            dev_wetrun: c.dev_wetrun, // Rule #2 for type boolean?
+            dryrun: c.dryrun, // Rule #2 for type boolean?
+            force_feerate: c.force_feerate, // Rule #2 for type boolean?
+            script_or_json: c.script_or_json, // Rule #2 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<requests::UnreserveinputsRequest> for pb::UnreserveinputsRequest {
     fn from(c: requests::UnreserveinputsRequest) -> Self {
@@ -5317,6 +5852,26 @@ impl From<requests::BkprlistincomeRequest> for pb::BkprlistincomeRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::BkpreditdescriptionbypaymentidRequest> for pb::BkpreditdescriptionbypaymentidRequest {
+    fn from(c: requests::BkpreditdescriptionbypaymentidRequest) -> Self {
+        Self {
+            description: c.description, // Rule #2 for type string
+            payment_id: c.payment_id, // Rule #2 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::BkpreditdescriptionbyoutpointRequest> for pb::BkpreditdescriptionbyoutpointRequest {
+    fn from(c: requests::BkpreditdescriptionbyoutpointRequest) -> Self {
+        Self {
+            description: c.description, // Rule #2 for type string
+            outpoint: c.outpoint, // Rule #2 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<requests::BlacklistruneRequest> for pb::BlacklistruneRequest {
     fn from(c: requests::BlacklistruneRequest) -> Self {
@@ -5360,6 +5915,202 @@ impl From<requests::ShowrunesRequest> for pb::ShowrunesRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<requests::AskreneunreservePath> for pb::AskreneunreservePath {
+    fn from(c: requests::AskreneunreservePath) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| v.to_string()), // Rule #2 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskreneunreserveRequest> for pb::AskreneunreserveRequest {
+    fn from(c: requests::AskreneunreserveRequest) -> Self {
+        Self {
+            // Field: AskRene-Unreserve.path[]
+            path: c.path.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskreneunreservePath
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenelistlayersRequest> for pb::AskrenelistlayersRequest {
+    fn from(c: requests::AskrenelistlayersRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenecreatelayerRequest> for pb::AskrenecreatelayerRequest {
+    fn from(c: requests::AskrenecreatelayerRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string
+            persistent: c.persistent, // Rule #2 for type boolean?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskreneremovelayerRequest> for pb::AskreneremovelayerRequest {
+    fn from(c: requests::AskreneremovelayerRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenereservePath> for pb::AskrenereservePath {
+    fn from(c: requests::AskrenereservePath) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| v.to_string()), // Rule #2 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenereserveRequest> for pb::AskrenereserveRequest {
+    fn from(c: requests::AskrenereserveRequest) -> Self {
+        Self {
+            // Field: AskRene-Reserve.path[]
+            path: c.path.into_iter().map(|i| i.into()).collect(), // Rule #3 for type AskrenereservePath
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskreneageRequest> for pb::AskreneageRequest {
+    fn from(c: requests::AskreneageRequest) -> Self {
+        Self {
+            cutoff: c.cutoff, // Rule #2 for type u64
+            layer: c.layer, // Rule #2 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::GetroutesRequest> for pb::GetroutesRequest {
+    fn from(c: requests::GetroutesRequest) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            destination: c.destination.serialize().to_vec(), // Rule #2 for type pubkey
+            final_cltv: c.final_cltv, // Rule #2 for type u32?
+            // Field: GetRoutes.layers[]
+            layers: c.layers.into_iter().map(|i| i.into()).collect(), // Rule #3 for type string
+            maxfee_msat: Some(c.maxfee_msat.into()), // Rule #2 for type msat
+            source: c.source.serialize().to_vec(), // Rule #2 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenedisablenodeRequest> for pb::AskrenedisablenodeRequest {
+    fn from(c: requests::AskrenedisablenodeRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #2 for type string
+            node: c.node.serialize().to_vec(), // Rule #2 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskreneinformchannelRequest> for pb::AskreneinformchannelRequest {
+    fn from(c: requests::AskreneinformchannelRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.map(|f| f.into()), // Rule #2 for type msat?
+            inform: c.inform.map(|v| v as i32),
+            layer: c.layer, // Rule #2 for type string
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| v.to_string()), // Rule #2 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenecreatechannelRequest> for pb::AskrenecreatechannelRequest {
+    fn from(c: requests::AskrenecreatechannelRequest) -> Self {
+        Self {
+            capacity_msat: Some(c.capacity_msat.into()), // Rule #2 for type msat
+            destination: c.destination.serialize().to_vec(), // Rule #2 for type pubkey
+            layer: c.layer, // Rule #2 for type string
+            short_channel_id: c.short_channel_id.to_string(), // Rule #2 for type short_channel_id
+            source: c.source.serialize().to_vec(), // Rule #2 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskreneupdatechannelRequest> for pb::AskreneupdatechannelRequest {
+    fn from(c: requests::AskreneupdatechannelRequest) -> Self {
+        Self {
+            cltv_expiry_delta: c.cltv_expiry_delta.map(|v| v.into()), // Rule #2 for type u16?
+            enabled: c.enabled, // Rule #2 for type boolean?
+            fee_base_msat: c.fee_base_msat.map(|f| f.into()), // Rule #2 for type msat?
+            fee_proportional_millionths: c.fee_proportional_millionths, // Rule #2 for type u32?
+            htlc_maximum_msat: c.htlc_maximum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            htlc_minimum_msat: c.htlc_minimum_msat.map(|f| f.into()), // Rule #2 for type msat?
+            layer: c.layer, // Rule #2 for type string
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenebiaschannelRequest> for pb::AskrenebiaschannelRequest {
+    fn from(c: requests::AskrenebiaschannelRequest) -> Self {
+        Self {
+            bias: c.bias, // Rule #2 for type integer
+            description: c.description, // Rule #2 for type string?
+            layer: c.layer, // Rule #2 for type string
+            short_channel_id_dir: c.short_channel_id_dir.to_string(), // Rule #2 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::AskrenelistreservationsRequest> for pb::AskrenelistreservationsRequest {
+    fn from(c: requests::AskrenelistreservationsRequest) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::InjectpaymentonionRequest> for pb::InjectpaymentonionRequest {
+    fn from(c: requests::InjectpaymentonionRequest) -> Self {
+        Self {
+            amount_msat: Some(c.amount_msat.into()), // Rule #2 for type msat
+            cltv_expiry: c.cltv_expiry.into(), // Rule #2 for type u16
+            groupid: c.groupid, // Rule #2 for type u64
+            invstring: c.invstring, // Rule #2 for type string?
+            label: c.label, // Rule #2 for type string?
+            localinvreqid: c.localinvreqid.map(|v| <Sha256 as AsRef<[u8]>>::as_ref(&v).to_vec()), // Rule #2 for type hash?
+            onion: hex::decode(&c.onion).unwrap(), // Rule #2 for type hex
+            partid: c.partid, // Rule #2 for type u64
+            payment_hash: <Sha256 as AsRef<[u8]>>::as_ref(&c.payment_hash).to_vec(), // Rule #2 for type hash
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<requests::XpayRequest> for pb::XpayRequest {
+    fn from(c: requests::XpayRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.map(|f| f.into()), // Rule #2 for type msat?
+            invstring: c.invstring, // Rule #2 for type string
+            // Field: Xpay.layers[]
+            layers: c.layers.map(|arr| arr.into_iter().map(|i| i.into()).collect()).unwrap_or(vec![]), // Rule #3
+            maxfee: c.maxfee.map(|f| f.into()), // Rule #2 for type msat?
+            partial_msat: c.partial_msat.map(|f| f.into()), // Rule #2 for type msat?
+            retry_for: c.retry_for, // Rule #2 for type u32?
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<notifications::requests::StreamBlockAddedRequest> for pb::StreamBlockAddedRequest {
     fn from(c: notifications::requests::StreamBlockAddedRequest) -> Self {
@@ -5643,6 +6394,24 @@ impl From<pb::EmergencyrecoverRequest> for requests::EmergencyrecoverRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::GetemergencyrecoverdataRequest> for requests::GetemergencyrecoverdataRequest {
+    fn from(c: pb::GetemergencyrecoverdataRequest) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::ExposesecretRequest> for requests::ExposesecretRequest {
+    fn from(c: pb::ExposesecretRequest) -> Self {
+        Self {
+            identifier: c.identifier, // Rule #1 for type string?
+            passphrase: c.passphrase, // Rule #1 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::RecoverRequest> for requests::RecoverRequest {
     fn from(c: pb::RecoverRequest) -> Self {
@@ -6054,6 +6823,15 @@ impl From<pb::DisableofferRequest> for requests::DisableofferRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::EnableofferRequest> for requests::EnableofferRequest {
+    fn from(c: pb::EnableofferRequest) -> Self {
+        Self {
+            offer_id: Sha256::from_slice(&c.offer_id).unwrap(), // Rule #1 for type hash
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::DisconnectRequest> for requests::DisconnectRequest {
     fn from(c: pb::DisconnectRequest) -> Self {
@@ -6196,6 +6974,17 @@ impl From<pb::GetrouteRequest> for requests::GetrouteRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::ListaddressesRequest> for requests::ListaddressesRequest {
+    fn from(c: pb::ListaddressesRequest) -> Self {
+        Self {
+            address: c.address, // Rule #1 for type string?
+            limit: c.limit, // Rule #1 for type u32?
+            start: c.start, // Rule #1 for type u64?
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::ListforwardsRequest> for requests::ListforwardsRequest {
     fn from(c: pb::ListforwardsRequest) -> Self {
@@ -6535,6 +7324,19 @@ impl From<pb::SpliceUpdateRequest> for requests::Splice_updateRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::DevspliceRequest> for requests::DevspliceRequest {
+    fn from(c: pb::DevspliceRequest) -> Self {
+        Self {
+            debug_log: c.debug_log, // Rule #1 for type boolean?
+            dev_wetrun: c.dev_wetrun, // Rule #1 for type boolean?
+            dryrun: c.dryrun, // Rule #1 for type boolean?
+            force_feerate: c.force_feerate, // Rule #1 for type boolean?
+            script_or_json: c.script_or_json, // Rule #1 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::UnreserveinputsRequest> for requests::UnreserveinputsRequest {
     fn from(c: pb::UnreserveinputsRequest) -> Self {
@@ -6691,6 +7493,26 @@ impl From<pb::BkprlistincomeRequest> for requests::BkprlistincomeRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::BkpreditdescriptionbypaymentidRequest> for requests::BkpreditdescriptionbypaymentidRequest {
+    fn from(c: pb::BkpreditdescriptionbypaymentidRequest) -> Self {
+        Self {
+            description: c.description, // Rule #1 for type string
+            payment_id: c.payment_id, // Rule #1 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::BkpreditdescriptionbyoutpointRequest> for requests::BkpreditdescriptionbyoutpointRequest {
+    fn from(c: pb::BkpreditdescriptionbyoutpointRequest) -> Self {
+        Self {
+            description: c.description, // Rule #1 for type string
+            outpoint: c.outpoint, // Rule #1 for type string
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::BlacklistruneRequest> for requests::BlacklistruneRequest {
     fn from(c: pb::BlacklistruneRequest) -> Self {
@@ -6732,6 +7554,198 @@ impl From<pb::ShowrunesRequest> for requests::ShowrunesRequest {
     }
 }
 
+#[allow(unused_variables)]
+impl From<pb::AskreneunreservePath> for requests::AskreneunreservePath {
+    fn from(c: pb::AskreneunreservePath) -> Self {
+        Self {
+            amount_msat: c.amount_msat.unwrap().into(), // Rule #1 for type msat
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| cln_rpc::primitives::ShortChannelIdDir::from_str(&v).unwrap()), // Rule #1 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskreneunreserveRequest> for requests::AskreneunreserveRequest {
+    fn from(c: pb::AskreneunreserveRequest) -> Self {
+        Self {
+            path: c.path.into_iter().map(|s| s.into()).collect(), // Rule #4
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenelistlayersRequest> for requests::AskrenelistlayersRequest {
+    fn from(c: pb::AskrenelistlayersRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #1 for type string?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenecreatelayerRequest> for requests::AskrenecreatelayerRequest {
+    fn from(c: pb::AskrenecreatelayerRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #1 for type string
+            persistent: c.persistent, // Rule #1 for type boolean?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskreneremovelayerRequest> for requests::AskreneremovelayerRequest {
+    fn from(c: pb::AskreneremovelayerRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #1 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenereservePath> for requests::AskrenereservePath {
+    fn from(c: pb::AskrenereservePath) -> Self {
+        Self {
+            amount_msat: c.amount_msat.unwrap().into(), // Rule #1 for type msat
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| cln_rpc::primitives::ShortChannelIdDir::from_str(&v).unwrap()), // Rule #1 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenereserveRequest> for requests::AskrenereserveRequest {
+    fn from(c: pb::AskrenereserveRequest) -> Self {
+        Self {
+            path: c.path.into_iter().map(|s| s.into()).collect(), // Rule #4
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskreneageRequest> for requests::AskreneageRequest {
+    fn from(c: pb::AskreneageRequest) -> Self {
+        Self {
+            cutoff: c.cutoff, // Rule #1 for type u64
+            layer: c.layer, // Rule #1 for type string
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::GetroutesRequest> for requests::GetroutesRequest {
+    fn from(c: pb::GetroutesRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.unwrap().into(), // Rule #1 for type msat
+            destination: PublicKey::from_slice(&c.destination).unwrap(), // Rule #1 for type pubkey
+            final_cltv: c.final_cltv, // Rule #1 for type u32?
+            layers: c.layers.into_iter().map(|s| s.into()).collect(), // Rule #4
+            maxfee_msat: c.maxfee_msat.unwrap().into(), // Rule #1 for type msat
+            source: PublicKey::from_slice(&c.source).unwrap(), // Rule #1 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenedisablenodeRequest> for requests::AskrenedisablenodeRequest {
+    fn from(c: pb::AskrenedisablenodeRequest) -> Self {
+        Self {
+            layer: c.layer, // Rule #1 for type string
+            node: PublicKey::from_slice(&c.node).unwrap(), // Rule #1 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskreneinformchannelRequest> for requests::AskreneinformchannelRequest {
+    fn from(c: pb::AskreneinformchannelRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.map(|a| a.into()), // Rule #1 for type msat?
+            inform: c.inform.map(|v| v.try_into().unwrap()),
+            layer: c.layer, // Rule #1 for type string
+            short_channel_id_dir: c.short_channel_id_dir.map(|v| cln_rpc::primitives::ShortChannelIdDir::from_str(&v).unwrap()), // Rule #1 for type short_channel_id_dir?
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenecreatechannelRequest> for requests::AskrenecreatechannelRequest {
+    fn from(c: pb::AskrenecreatechannelRequest) -> Self {
+        Self {
+            capacity_msat: c.capacity_msat.unwrap().into(), // Rule #1 for type msat
+            destination: PublicKey::from_slice(&c.destination).unwrap(), // Rule #1 for type pubkey
+            layer: c.layer, // Rule #1 for type string
+            short_channel_id: cln_rpc::primitives::ShortChannelId::from_str(&c.short_channel_id).unwrap(), // Rule #1 for type short_channel_id
+            source: PublicKey::from_slice(&c.source).unwrap(), // Rule #1 for type pubkey
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskreneupdatechannelRequest> for requests::AskreneupdatechannelRequest {
+    fn from(c: pb::AskreneupdatechannelRequest) -> Self {
+        Self {
+            cltv_expiry_delta: c.cltv_expiry_delta.map(|v| v as u16), // Rule #1 for type u16?
+            enabled: c.enabled, // Rule #1 for type boolean?
+            fee_base_msat: c.fee_base_msat.map(|a| a.into()), // Rule #1 for type msat?
+            fee_proportional_millionths: c.fee_proportional_millionths, // Rule #1 for type u32?
+            htlc_maximum_msat: c.htlc_maximum_msat.map(|a| a.into()), // Rule #1 for type msat?
+            htlc_minimum_msat: c.htlc_minimum_msat.map(|a| a.into()), // Rule #1 for type msat?
+            layer: c.layer, // Rule #1 for type string
+            short_channel_id_dir: cln_rpc::primitives::ShortChannelIdDir::from_str(&c.short_channel_id_dir).unwrap(), // Rule #1 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenebiaschannelRequest> for requests::AskrenebiaschannelRequest {
+    fn from(c: pb::AskrenebiaschannelRequest) -> Self {
+        Self {
+            bias: c.bias, // Rule #1 for type integer
+            description: c.description, // Rule #1 for type string?
+            layer: c.layer, // Rule #1 for type string
+            short_channel_id_dir: cln_rpc::primitives::ShortChannelIdDir::from_str(&c.short_channel_id_dir).unwrap(), // Rule #1 for type short_channel_id_dir
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::AskrenelistreservationsRequest> for requests::AskrenelistreservationsRequest {
+    fn from(c: pb::AskrenelistreservationsRequest) -> Self {
+        Self {
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::InjectpaymentonionRequest> for requests::InjectpaymentonionRequest {
+    fn from(c: pb::InjectpaymentonionRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.unwrap().into(), // Rule #1 for type msat
+            cltv_expiry: c.cltv_expiry as u16, // Rule #1 for type u16
+            groupid: c.groupid, // Rule #1 for type u64
+            invstring: c.invstring, // Rule #1 for type string?
+            label: c.label, // Rule #1 for type string?
+            localinvreqid: c.localinvreqid.map(|v| Sha256::from_slice(&v).unwrap()), // Rule #1 for type hash?
+            onion: hex::encode(&c.onion), // Rule #1 for type hex
+            partid: c.partid, // Rule #1 for type u64
+            payment_hash: Sha256::from_slice(&c.payment_hash).unwrap(), // Rule #1 for type hash
+        }
+    }
+}
+
+#[allow(unused_variables)]
+impl From<pb::XpayRequest> for requests::XpayRequest {
+    fn from(c: pb::XpayRequest) -> Self {
+        Self {
+            amount_msat: c.amount_msat.map(|a| a.into()), // Rule #1 for type msat?
+            invstring: c.invstring, // Rule #1 for type string
+            layers: Some(c.layers.into_iter().map(|s| s.into()).collect()), // Rule #4
+            maxfee: c.maxfee.map(|a| a.into()), // Rule #1 for type msat?
+            partial_msat: c.partial_msat.map(|a| a.into()), // Rule #1 for type msat?
+            retry_for: c.retry_for, // Rule #1 for type u32?
+        }
+    }
+}
+
 #[allow(unused_variables)]
 impl From<pb::StreamBlockAddedRequest> for notifications::requests::StreamBlockAddedRequest {
     fn from(c: pb::StreamBlockAddedRequest) -> Self {
diff --git a/cln-grpc/src/server.rs b/cln-grpc/src/server.rs
index 613130de9..3446c0338 100644
--- a/cln-grpc/src/server.rs
+++ b/cln-grpc/src/server.rs
@@ -722,6 +722,70 @@ impl Node for Server
 
     }
 
+    async fn get_emergency_recover_data(
+        &self,
+        request: tonic::Request<pb::GetemergencyrecoverdataRequest>,
+    ) -> Result<tonic::Response<pb::GetemergencyrecoverdataResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::GetemergencyrecoverdataRequest = req.into();
+        debug!("Client asked for get_emergency_recover_data");
+        trace!("get_emergency_recover_data request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::GetEmergencyRecoverData(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method GetEmergencyRecoverData: {:?}", e)))?;
+        match result {
+            Response::GetEmergencyRecoverData(r) => {
+               trace!("get_emergency_recover_data response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call GetEmergencyRecoverData",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn expose_secret(
+        &self,
+        request: tonic::Request<pb::ExposesecretRequest>,
+    ) -> Result<tonic::Response<pb::ExposesecretResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::ExposesecretRequest = req.into();
+        debug!("Client asked for expose_secret");
+        trace!("expose_secret request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::ExposeSecret(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method ExposeSecret: {:?}", e)))?;
+        match result {
+            Response::ExposeSecret(r) => {
+               trace!("expose_secret response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call ExposeSecret",
+                    r
+                )
+            )),
+        }
+
+    }
+
     async fn recover(
         &self,
         request: tonic::Request<pb::RecoverRequest>,
@@ -1810,6 +1874,38 @@ impl Node for Server
 
     }
 
+    async fn enable_offer(
+        &self,
+        request: tonic::Request<pb::EnableofferRequest>,
+    ) -> Result<tonic::Response<pb::EnableofferResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::EnableofferRequest = req.into();
+        debug!("Client asked for enable_offer");
+        trace!("enable_offer request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::EnableOffer(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method EnableOffer: {:?}", e)))?;
+        match result {
+            Response::EnableOffer(r) => {
+               trace!("enable_offer response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call EnableOffer",
+                    r
+                )
+            )),
+        }
+
+    }
+
     async fn disconnect(
         &self,
         request: tonic::Request<pb::DisconnectRequest>,
@@ -2130,6 +2226,38 @@ impl Node for Server
 
     }
 
+    async fn list_addresses(
+        &self,
+        request: tonic::Request<pb::ListaddressesRequest>,
+    ) -> Result<tonic::Response<pb::ListaddressesResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::ListaddressesRequest = req.into();
+        debug!("Client asked for list_addresses");
+        trace!("list_addresses request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::ListAddresses(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method ListAddresses: {:?}", e)))?;
+        match result {
+            Response::ListAddresses(r) => {
+               trace!("list_addresses response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call ListAddresses",
+                    r
+                )
+            )),
+        }
+
+    }
+
     async fn list_forwards(
         &self,
         request: tonic::Request<pb::ListforwardsRequest>,
@@ -2994,6 +3122,38 @@ impl Node for Server
 
     }
 
+    async fn dev_splice(
+        &self,
+        request: tonic::Request<pb::DevspliceRequest>,
+    ) -> Result<tonic::Response<pb::DevspliceResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::DevspliceRequest = req.into();
+        debug!("Client asked for dev_splice");
+        trace!("dev_splice request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::DevSplice(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method DevSplice: {:?}", e)))?;
+        match result {
+            Response::DevSplice(r) => {
+               trace!("dev_splice response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call DevSplice",
+                    r
+                )
+            )),
+        }
+
+    }
+
     async fn unreserve_inputs(
         &self,
         request: tonic::Request<pb::UnreserveinputsRequest>,
@@ -3506,6 +3666,70 @@ impl Node for Server
 
     }
 
+    async fn bkpr_edit_description_by_payment_id(
+        &self,
+        request: tonic::Request<pb::BkpreditdescriptionbypaymentidRequest>,
+    ) -> Result<tonic::Response<pb::BkpreditdescriptionbypaymentidResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::BkpreditdescriptionbypaymentidRequest = req.into();
+        debug!("Client asked for bkpr_edit_description_by_payment_id");
+        trace!("bkpr_edit_description_by_payment_id request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::BkprEditDescriptionByPaymentId(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method BkprEditDescriptionByPaymentId: {:?}", e)))?;
+        match result {
+            Response::BkprEditDescriptionByPaymentId(r) => {
+               trace!("bkpr_edit_description_by_payment_id response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call BkprEditDescriptionByPaymentId",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn bkpr_edit_description_by_outpoint(
+        &self,
+        request: tonic::Request<pb::BkpreditdescriptionbyoutpointRequest>,
+    ) -> Result<tonic::Response<pb::BkpreditdescriptionbyoutpointResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::BkpreditdescriptionbyoutpointRequest = req.into();
+        debug!("Client asked for bkpr_edit_description_by_outpoint");
+        trace!("bkpr_edit_description_by_outpoint request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::BkprEditDescriptionByOutpoint(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method BkprEditDescriptionByOutpoint: {:?}", e)))?;
+        match result {
+            Response::BkprEditDescriptionByOutpoint(r) => {
+               trace!("bkpr_edit_description_by_outpoint response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call BkprEditDescriptionByOutpoint",
+                    r
+                )
+            )),
+        }
+
+    }
+
     async fn blacklist_rune(
         &self,
         request: tonic::Request<pb::BlacklistruneRequest>,
@@ -3634,6 +3858,486 @@ impl Node for Server
 
     }
 
+    async fn ask_rene_unreserve(
+        &self,
+        request: tonic::Request<pb::AskreneunreserveRequest>,
+    ) -> Result<tonic::Response<pb::AskreneunreserveResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskreneunreserveRequest = req.into();
+        debug!("Client asked for ask_rene_unreserve");
+        trace!("ask_rene_unreserve request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneUnreserve(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneUnreserve: {:?}", e)))?;
+        match result {
+            Response::AskReneUnreserve(r) => {
+               trace!("ask_rene_unreserve response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneUnreserve",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_list_layers(
+        &self,
+        request: tonic::Request<pb::AskrenelistlayersRequest>,
+    ) -> Result<tonic::Response<pb::AskrenelistlayersResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenelistlayersRequest = req.into();
+        debug!("Client asked for ask_rene_list_layers");
+        trace!("ask_rene_list_layers request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneListLayers(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneListLayers: {:?}", e)))?;
+        match result {
+            Response::AskReneListLayers(r) => {
+               trace!("ask_rene_list_layers response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneListLayers",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_create_layer(
+        &self,
+        request: tonic::Request<pb::AskrenecreatelayerRequest>,
+    ) -> Result<tonic::Response<pb::AskrenecreatelayerResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenecreatelayerRequest = req.into();
+        debug!("Client asked for ask_rene_create_layer");
+        trace!("ask_rene_create_layer request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneCreateLayer(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneCreateLayer: {:?}", e)))?;
+        match result {
+            Response::AskReneCreateLayer(r) => {
+               trace!("ask_rene_create_layer response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneCreateLayer",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_remove_layer(
+        &self,
+        request: tonic::Request<pb::AskreneremovelayerRequest>,
+    ) -> Result<tonic::Response<pb::AskreneremovelayerResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskreneremovelayerRequest = req.into();
+        debug!("Client asked for ask_rene_remove_layer");
+        trace!("ask_rene_remove_layer request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneRemoveLayer(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneRemoveLayer: {:?}", e)))?;
+        match result {
+            Response::AskReneRemoveLayer(r) => {
+               trace!("ask_rene_remove_layer response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneRemoveLayer",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_reserve(
+        &self,
+        request: tonic::Request<pb::AskrenereserveRequest>,
+    ) -> Result<tonic::Response<pb::AskrenereserveResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenereserveRequest = req.into();
+        debug!("Client asked for ask_rene_reserve");
+        trace!("ask_rene_reserve request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneReserve(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneReserve: {:?}", e)))?;
+        match result {
+            Response::AskReneReserve(r) => {
+               trace!("ask_rene_reserve response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneReserve",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_age(
+        &self,
+        request: tonic::Request<pb::AskreneageRequest>,
+    ) -> Result<tonic::Response<pb::AskreneageResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskreneageRequest = req.into();
+        debug!("Client asked for ask_rene_age");
+        trace!("ask_rene_age request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneAge(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneAge: {:?}", e)))?;
+        match result {
+            Response::AskReneAge(r) => {
+               trace!("ask_rene_age response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneAge",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn get_routes(
+        &self,
+        request: tonic::Request<pb::GetroutesRequest>,
+    ) -> Result<tonic::Response<pb::GetroutesResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::GetroutesRequest = req.into();
+        debug!("Client asked for get_routes");
+        trace!("get_routes request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::GetRoutes(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method GetRoutes: {:?}", e)))?;
+        match result {
+            Response::GetRoutes(r) => {
+               trace!("get_routes response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call GetRoutes",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_disable_node(
+        &self,
+        request: tonic::Request<pb::AskrenedisablenodeRequest>,
+    ) -> Result<tonic::Response<pb::AskrenedisablenodeResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenedisablenodeRequest = req.into();
+        debug!("Client asked for ask_rene_disable_node");
+        trace!("ask_rene_disable_node request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneDisableNode(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneDisableNode: {:?}", e)))?;
+        match result {
+            Response::AskReneDisableNode(r) => {
+               trace!("ask_rene_disable_node response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneDisableNode",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_inform_channel(
+        &self,
+        request: tonic::Request<pb::AskreneinformchannelRequest>,
+    ) -> Result<tonic::Response<pb::AskreneinformchannelResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskreneinformchannelRequest = req.into();
+        debug!("Client asked for ask_rene_inform_channel");
+        trace!("ask_rene_inform_channel request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneInformChannel(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneInformChannel: {:?}", e)))?;
+        match result {
+            Response::AskReneInformChannel(r) => {
+               trace!("ask_rene_inform_channel response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneInformChannel",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_create_channel(
+        &self,
+        request: tonic::Request<pb::AskrenecreatechannelRequest>,
+    ) -> Result<tonic::Response<pb::AskrenecreatechannelResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenecreatechannelRequest = req.into();
+        debug!("Client asked for ask_rene_create_channel");
+        trace!("ask_rene_create_channel request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneCreateChannel(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneCreateChannel: {:?}", e)))?;
+        match result {
+            Response::AskReneCreateChannel(r) => {
+               trace!("ask_rene_create_channel response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneCreateChannel",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_update_channel(
+        &self,
+        request: tonic::Request<pb::AskreneupdatechannelRequest>,
+    ) -> Result<tonic::Response<pb::AskreneupdatechannelResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskreneupdatechannelRequest = req.into();
+        debug!("Client asked for ask_rene_update_channel");
+        trace!("ask_rene_update_channel request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneUpdateChannel(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneUpdateChannel: {:?}", e)))?;
+        match result {
+            Response::AskReneUpdateChannel(r) => {
+               trace!("ask_rene_update_channel response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneUpdateChannel",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_bias_channel(
+        &self,
+        request: tonic::Request<pb::AskrenebiaschannelRequest>,
+    ) -> Result<tonic::Response<pb::AskrenebiaschannelResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenebiaschannelRequest = req.into();
+        debug!("Client asked for ask_rene_bias_channel");
+        trace!("ask_rene_bias_channel request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneBiasChannel(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneBiasChannel: {:?}", e)))?;
+        match result {
+            Response::AskReneBiasChannel(r) => {
+               trace!("ask_rene_bias_channel response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneBiasChannel",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn ask_rene_list_reservations(
+        &self,
+        request: tonic::Request<pb::AskrenelistreservationsRequest>,
+    ) -> Result<tonic::Response<pb::AskrenelistreservationsResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::AskrenelistreservationsRequest = req.into();
+        debug!("Client asked for ask_rene_list_reservations");
+        trace!("ask_rene_list_reservations request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::AskReneListReservations(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method AskReneListReservations: {:?}", e)))?;
+        match result {
+            Response::AskReneListReservations(r) => {
+               trace!("ask_rene_list_reservations response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call AskReneListReservations",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn inject_payment_onion(
+        &self,
+        request: tonic::Request<pb::InjectpaymentonionRequest>,
+    ) -> Result<tonic::Response<pb::InjectpaymentonionResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::InjectpaymentonionRequest = req.into();
+        debug!("Client asked for inject_payment_onion");
+        trace!("inject_payment_onion request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::InjectPaymentOnion(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method InjectPaymentOnion: {:?}", e)))?;
+        match result {
+            Response::InjectPaymentOnion(r) => {
+               trace!("inject_payment_onion response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call InjectPaymentOnion",
+                    r
+                )
+            )),
+        }
+
+    }
+
+    async fn xpay(
+        &self,
+        request: tonic::Request<pb::XpayRequest>,
+    ) -> Result<tonic::Response<pb::XpayResponse>, tonic::Status> {
+        let req = request.into_inner();
+        let req: requests::XpayRequest = req.into();
+        debug!("Client asked for xpay");
+        trace!("xpay request: {:?}", req);
+        let mut rpc = ClnRpc::new(&self.rpc_path)
+            .await
+            .map_err(|e| Status::new(Code::Internal, e.to_string()))?;
+        let result = rpc.call(Request::Xpay(req))
+            .await
+            .map_err(|e| Status::new(
+               Code::Unknown,
+               format!("Error calling method Xpay: {:?}", e)))?;
+        match result {
+            Response::Xpay(r) => {
+               trace!("xpay response: {:?}", r);
+               Ok(tonic::Response::new(r.into()))
+            },
+            r => Err(Status::new(
+                Code::Internal,
+                format!(
+                    "Unexpected result {:?} to method call Xpay",
+                    r
+                )
+            )),
+        }
+
+    }
+
 
 
     type SubscribeBlockAddedStream = NotificationStream<pb::BlockAddedNotification>;
diff --git a/cln-rpc/src/model.rs b/cln-rpc/src/model.rs
index 0ec9f0706..f19879cab 100644
--- a/cln-rpc/src/model.rs
+++ b/cln-rpc/src/model.rs
@@ -40,6 +40,8 @@ pub enum Request {
 	#[serde(rename = "dev-forget-channel")]
 	DevForgetChannel(requests::DevforgetchannelRequest),
 	EmergencyRecover(requests::EmergencyrecoverRequest),
+	GetEmergencyRecoverData(requests::GetemergencyrecoverdataRequest),
+	ExposeSecret(requests::ExposesecretRequest),
 	Recover(requests::RecoverRequest),
 	RecoverChannel(requests::RecoverchannelRequest),
 	Invoice(requests::InvoiceRequest),
@@ -74,6 +76,7 @@ pub enum Request {
 	DelPay(requests::DelpayRequest),
 	DelForward(requests::DelforwardRequest),
 	DisableOffer(requests::DisableofferRequest),
+	EnableOffer(requests::EnableofferRequest),
 	Disconnect(requests::DisconnectRequest),
 	Feerates(requests::FeeratesRequest),
 	FetchInvoice(requests::FetchinvoiceRequest),
@@ -84,6 +87,7 @@ pub enum Request {
 	GetLog(requests::GetlogRequest),
 	FunderUpdate(requests::FunderupdateRequest),
 	GetRoute(requests::GetrouteRequest),
+	ListAddresses(requests::ListaddressesRequest),
 	ListForwards(requests::ListforwardsRequest),
 	ListOffers(requests::ListoffersRequest),
 	ListPays(requests::ListpaysRequest),
@@ -111,6 +115,8 @@ pub enum Request {
 	Splice_Init(requests::Splice_initRequest),
 	Splice_Signed(requests::Splice_signedRequest),
 	Splice_Update(requests::Splice_updateRequest),
+	#[serde(rename = "dev-splice")]
+	DevSplice(requests::DevspliceRequest),
 	UnreserveInputs(requests::UnreserveinputsRequest),
 	UpgradeWallet(requests::UpgradewalletRequest),
 	WaitBlockHeight(requests::WaitblockheightRequest),
@@ -133,10 +139,41 @@ pub enum Request {
 	BkprListBalances(requests::BkprlistbalancesRequest),
 	#[serde(rename = "bkpr-listincome")]
 	BkprListIncome(requests::BkprlistincomeRequest),
+	#[serde(rename = "bkpr-editdescriptionbypaymentid")]
+	BkprEditDescriptionByPaymentId(requests::BkpreditdescriptionbypaymentidRequest),
+	#[serde(rename = "bkpr-editdescriptionbyoutpoint")]
+	BkprEditDescriptionByOutpoint(requests::BkpreditdescriptionbyoutpointRequest),
 	BlacklistRune(requests::BlacklistruneRequest),
 	CheckRune(requests::CheckruneRequest),
 	CreateRune(requests::CreateruneRequest),
 	ShowRunes(requests::ShowrunesRequest),
+	#[serde(rename = "askrene-unreserve")]
+	AskReneUnreserve(requests::AskreneunreserveRequest),
+	#[serde(rename = "askrene-listlayers")]
+	AskReneListLayers(requests::AskrenelistlayersRequest),
+	#[serde(rename = "askrene-create-layer")]
+	AskReneCreateLayer(requests::AskrenecreatelayerRequest),
+	#[serde(rename = "askrene-remove-layer")]
+	AskReneRemoveLayer(requests::AskreneremovelayerRequest),
+	#[serde(rename = "askrene-reserve")]
+	AskReneReserve(requests::AskrenereserveRequest),
+	#[serde(rename = "askrene-age")]
+	AskReneAge(requests::AskreneageRequest),
+	GetRoutes(requests::GetroutesRequest),
+	#[serde(rename = "askrene-disable-node")]
+	AskReneDisableNode(requests::AskrenedisablenodeRequest),
+	#[serde(rename = "askrene-inform-channel")]
+	AskReneInformChannel(requests::AskreneinformchannelRequest),
+	#[serde(rename = "askrene-create-channel")]
+	AskReneCreateChannel(requests::AskrenecreatechannelRequest),
+	#[serde(rename = "askrene-update-channel")]
+	AskReneUpdateChannel(requests::AskreneupdatechannelRequest),
+	#[serde(rename = "askrene-bias-channel")]
+	AskReneBiasChannel(requests::AskrenebiaschannelRequest),
+	#[serde(rename = "askrene-listreservations")]
+	AskReneListReservations(requests::AskrenelistreservationsRequest),
+	InjectPaymentOnion(requests::InjectpaymentonionRequest),
+	Xpay(requests::XpayRequest),
 }
 
 #[derive(Clone, Debug, Serialize, Deserialize)]
@@ -166,6 +203,8 @@ pub enum Response {
 	#[serde(rename = "dev-forget-channel")]
 	DevForgetChannel(responses::DevforgetchannelResponse),
 	EmergencyRecover(responses::EmergencyrecoverResponse),
+	GetEmergencyRecoverData(responses::GetemergencyrecoverdataResponse),
+	ExposeSecret(responses::ExposesecretResponse),
 	Recover(responses::RecoverResponse),
 	RecoverChannel(responses::RecoverchannelResponse),
 	Invoice(responses::InvoiceResponse),
@@ -200,6 +239,7 @@ pub enum Response {
 	DelPay(responses::DelpayResponse),
 	DelForward(responses::DelforwardResponse),
 	DisableOffer(responses::DisableofferResponse),
+	EnableOffer(responses::EnableofferResponse),
 	Disconnect(responses::DisconnectResponse),
 	Feerates(responses::FeeratesResponse),
 	FetchInvoice(responses::FetchinvoiceResponse),
@@ -210,6 +250,7 @@ pub enum Response {
 	GetLog(responses::GetlogResponse),
 	FunderUpdate(responses::FunderupdateResponse),
 	GetRoute(responses::GetrouteResponse),
+	ListAddresses(responses::ListaddressesResponse),
 	ListForwards(responses::ListforwardsResponse),
 	ListOffers(responses::ListoffersResponse),
 	ListPays(responses::ListpaysResponse),
@@ -237,6 +278,8 @@ pub enum Response {
 	Splice_Init(responses::Splice_initResponse),
 	Splice_Signed(responses::Splice_signedResponse),
 	Splice_Update(responses::Splice_updateResponse),
+	#[serde(rename = "dev-splice")]
+	DevSplice(responses::DevspliceResponse),
 	UnreserveInputs(responses::UnreserveinputsResponse),
 	UpgradeWallet(responses::UpgradewalletResponse),
 	WaitBlockHeight(responses::WaitblockheightResponse),
@@ -259,10 +302,41 @@ pub enum Response {
 	BkprListBalances(responses::BkprlistbalancesResponse),
 	#[serde(rename = "bkpr-listincome")]
 	BkprListIncome(responses::BkprlistincomeResponse),
+	#[serde(rename = "bkpr-editdescriptionbypaymentid")]
+	BkprEditDescriptionByPaymentId(responses::BkpreditdescriptionbypaymentidResponse),
+	#[serde(rename = "bkpr-editdescriptionbyoutpoint")]
+	BkprEditDescriptionByOutpoint(responses::BkpreditdescriptionbyoutpointResponse),
 	BlacklistRune(responses::BlacklistruneResponse),
 	CheckRune(responses::CheckruneResponse),
 	CreateRune(responses::CreateruneResponse),
 	ShowRunes(responses::ShowrunesResponse),
+	#[serde(rename = "askrene-unreserve")]
+	AskReneUnreserve(responses::AskreneunreserveResponse),
+	#[serde(rename = "askrene-listlayers")]
+	AskReneListLayers(responses::AskrenelistlayersResponse),
+	#[serde(rename = "askrene-create-layer")]
+	AskReneCreateLayer(responses::AskrenecreatelayerResponse),
+	#[serde(rename = "askrene-remove-layer")]
+	AskReneRemoveLayer(responses::AskreneremovelayerResponse),
+	#[serde(rename = "askrene-reserve")]
+	AskReneReserve(responses::AskrenereserveResponse),
+	#[serde(rename = "askrene-age")]
+	AskReneAge(responses::AskreneageResponse),
+	GetRoutes(responses::GetroutesResponse),
+	#[serde(rename = "askrene-disable-node")]
+	AskReneDisableNode(responses::AskrenedisablenodeResponse),
+	#[serde(rename = "askrene-inform-channel")]
+	AskReneInformChannel(responses::AskreneinformchannelResponse),
+	#[serde(rename = "askrene-create-channel")]
+	AskReneCreateChannel(responses::AskrenecreatechannelResponse),
+	#[serde(rename = "askrene-update-channel")]
+	AskReneUpdateChannel(responses::AskreneupdatechannelResponse),
+	#[serde(rename = "askrene-bias-channel")]
+	AskReneBiasChannel(responses::AskrenebiaschannelResponse),
+	#[serde(rename = "askrene-listreservations")]
+	AskReneListReservations(responses::AskrenelistreservationsResponse),
+	InjectPaymentOnion(responses::InjectpaymentonionResponse),
+	Xpay(responses::XpayResponse),
 }
 
 
@@ -938,6 +1012,51 @@ pub mod requests {
 	    }
 	}
 	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetemergencyrecoverdataRequest {
+	}
+
+	impl From<GetemergencyrecoverdataRequest> for Request {
+	    fn from(r: GetemergencyrecoverdataRequest) -> Self {
+	        Request::GetEmergencyRecoverData(r)
+	    }
+	}
+
+	impl IntoRequest for GetemergencyrecoverdataRequest {
+	    type Response = super::responses::GetemergencyrecoverdataResponse;
+	}
+
+	impl TypedRequest for GetemergencyrecoverdataRequest {
+	    type Response = super::responses::GetemergencyrecoverdataResponse;
+
+	    fn method(&self) -> &str {
+	        "getemergencyrecoverdata"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct ExposesecretRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub identifier: Option<String>,
+	    pub passphrase: String,
+	}
+
+	impl From<ExposesecretRequest> for Request {
+	    fn from(r: ExposesecretRequest) -> Self {
+	        Request::ExposeSecret(r)
+	    }
+	}
+
+	impl IntoRequest for ExposesecretRequest {
+	    type Response = super::responses::ExposesecretResponse;
+	}
+
+	impl TypedRequest for ExposesecretRequest {
+	    type Response = super::responses::ExposesecretResponse;
+
+	    fn method(&self) -> &str {
+	        "exposesecret"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct RecoverRequest {
 	    pub hsmsecret: String,
 	}
@@ -2065,6 +2184,28 @@ pub mod requests {
 	    }
 	}
 	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct EnableofferRequest {
+	    pub offer_id: Sha256,
+	}
+
+	impl From<EnableofferRequest> for Request {
+	    fn from(r: EnableofferRequest) -> Self {
+	        Request::EnableOffer(r)
+	    }
+	}
+
+	impl IntoRequest for EnableofferRequest {
+	    type Response = super::responses::EnableofferResponse;
+	}
+
+	impl TypedRequest for EnableofferRequest {
+	    type Response = super::responses::EnableofferResponse;
+
+	    fn method(&self) -> &str {
+	        "enableoffer"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct DisconnectRequest {
 	    #[serde(skip_serializing_if = "Option::is_none")]
 	    pub force: Option<bool>,
@@ -2493,6 +2634,33 @@ pub mod requests {
 	        "getroute"
 	    }
 	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct ListaddressesRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub address: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub limit: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub start: Option<u64>,
+	}
+
+	impl From<ListaddressesRequest> for Request {
+	    fn from(r: ListaddressesRequest) -> Self {
+	        Request::ListAddresses(r)
+	    }
+	}
+
+	impl IntoRequest for ListaddressesRequest {
+	    type Response = super::responses::ListaddressesResponse;
+	}
+
+	impl TypedRequest for ListaddressesRequest {
+	    type Response = super::responses::ListaddressesResponse;
+
+	    fn method(&self) -> &str {
+	        "listaddresses"
+	    }
+	}
 	/// ['If neither *in_channel* nor *out_channel* is specified, it controls ordering.']
 	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
 	pub enum ListforwardsIndex {
@@ -3388,6 +3556,37 @@ pub mod requests {
 	    }
 	}
 	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct DevspliceRequest {
+	    #[serde(rename = "dev-wetrun")]
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub dev_wetrun: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub debug_log: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub dryrun: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub force_feerate: Option<bool>,
+	    pub script_or_json: String,
+	}
+
+	impl From<DevspliceRequest> for Request {
+	    fn from(r: DevspliceRequest) -> Self {
+	        Request::DevSplice(r)
+	    }
+	}
+
+	impl IntoRequest for DevspliceRequest {
+	    type Response = super::responses::DevspliceResponse;
+	}
+
+	impl TypedRequest for DevspliceRequest {
+	    type Response = super::responses::DevspliceResponse;
+
+	    fn method(&self) -> &str {
+	        "dev-splice"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct UnreserveinputsRequest {
 	    #[serde(skip_serializing_if = "Option::is_none")]
 	    pub reserve: Option<u32>,
@@ -3837,6 +4036,52 @@ pub mod requests {
 	    }
 	}
 	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbypaymentidRequest {
+	    pub description: String,
+	    pub payment_id: String,
+	}
+
+	impl From<BkpreditdescriptionbypaymentidRequest> for Request {
+	    fn from(r: BkpreditdescriptionbypaymentidRequest) -> Self {
+	        Request::BkprEditDescriptionByPaymentId(r)
+	    }
+	}
+
+	impl IntoRequest for BkpreditdescriptionbypaymentidRequest {
+	    type Response = super::responses::BkpreditdescriptionbypaymentidResponse;
+	}
+
+	impl TypedRequest for BkpreditdescriptionbypaymentidRequest {
+	    type Response = super::responses::BkpreditdescriptionbypaymentidResponse;
+
+	    fn method(&self) -> &str {
+	        "bkpr-editdescriptionbypaymentid"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbyoutpointRequest {
+	    pub description: String,
+	    pub outpoint: String,
+	}
+
+	impl From<BkpreditdescriptionbyoutpointRequest> for Request {
+	    fn from(r: BkpreditdescriptionbyoutpointRequest) -> Self {
+	        Request::BkprEditDescriptionByOutpoint(r)
+	    }
+	}
+
+	impl IntoRequest for BkpreditdescriptionbyoutpointRequest {
+	    type Response = super::responses::BkpreditdescriptionbyoutpointResponse;
+	}
+
+	impl TypedRequest for BkpreditdescriptionbyoutpointRequest {
+	    type Response = super::responses::BkpreditdescriptionbyoutpointResponse;
+
+	    fn method(&self) -> &str {
+	        "bkpr-editdescriptionbyoutpoint"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct BlacklistruneRequest {
 	    #[serde(skip_serializing_if = "Option::is_none")]
 	    pub end: Option<u64>,
@@ -3937,6 +4182,441 @@ pub mod requests {
 	        "showrunes"
 	    }
 	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneunreservePath {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub short_channel_id_dir: Option<ShortChannelIdDir>,
+	    pub amount_msat: Amount,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneunreserveRequest {
+	    pub path: Vec<AskreneunreservePath>,
+	}
+
+	impl From<AskreneunreserveRequest> for Request {
+	    fn from(r: AskreneunreserveRequest) -> Self {
+	        Request::AskReneUnreserve(r)
+	    }
+	}
+
+	impl IntoRequest for AskreneunreserveRequest {
+	    type Response = super::responses::AskreneunreserveResponse;
+	}
+
+	impl TypedRequest for AskreneunreserveRequest {
+	    type Response = super::responses::AskreneunreserveResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-unreserve"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub layer: Option<String>,
+	}
+
+	impl From<AskrenelistlayersRequest> for Request {
+	    fn from(r: AskrenelistlayersRequest) -> Self {
+	        Request::AskReneListLayers(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenelistlayersRequest {
+	    type Response = super::responses::AskrenelistlayersResponse;
+	}
+
+	impl TypedRequest for AskrenelistlayersRequest {
+	    type Response = super::responses::AskrenelistlayersResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-listlayers"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub persistent: Option<bool>,
+	    pub layer: String,
+	}
+
+	impl From<AskrenecreatelayerRequest> for Request {
+	    fn from(r: AskrenecreatelayerRequest) -> Self {
+	        Request::AskReneCreateLayer(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenecreatelayerRequest {
+	    type Response = super::responses::AskrenecreatelayerResponse;
+	}
+
+	impl TypedRequest for AskrenecreatelayerRequest {
+	    type Response = super::responses::AskrenecreatelayerResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-create-layer"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneremovelayerRequest {
+	    pub layer: String,
+	}
+
+	impl From<AskreneremovelayerRequest> for Request {
+	    fn from(r: AskreneremovelayerRequest) -> Self {
+	        Request::AskReneRemoveLayer(r)
+	    }
+	}
+
+	impl IntoRequest for AskreneremovelayerRequest {
+	    type Response = super::responses::AskreneremovelayerResponse;
+	}
+
+	impl TypedRequest for AskreneremovelayerRequest {
+	    type Response = super::responses::AskreneremovelayerResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-remove-layer"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenereservePath {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub short_channel_id_dir: Option<ShortChannelIdDir>,
+	    pub amount_msat: Amount,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenereserveRequest {
+	    pub path: Vec<AskrenereservePath>,
+	}
+
+	impl From<AskrenereserveRequest> for Request {
+	    fn from(r: AskrenereserveRequest) -> Self {
+	        Request::AskReneReserve(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenereserveRequest {
+	    type Response = super::responses::AskrenereserveResponse;
+	}
+
+	impl TypedRequest for AskrenereserveRequest {
+	    type Response = super::responses::AskrenereserveResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-reserve"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneageRequest {
+	    pub cutoff: u64,
+	    pub layer: String,
+	}
+
+	impl From<AskreneageRequest> for Request {
+	    fn from(r: AskreneageRequest) -> Self {
+	        Request::AskReneAge(r)
+	    }
+	}
+
+	impl IntoRequest for AskreneageRequest {
+	    type Response = super::responses::AskreneageResponse;
+	}
+
+	impl TypedRequest for AskreneageRequest {
+	    type Response = super::responses::AskreneageResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-age"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetroutesRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub final_cltv: Option<u32>,
+	    pub amount_msat: Amount,
+	    pub destination: PublicKey,
+	    pub layers: Vec<String>,
+	    pub maxfee_msat: Amount,
+	    pub source: PublicKey,
+	}
+
+	impl From<GetroutesRequest> for Request {
+	    fn from(r: GetroutesRequest) -> Self {
+	        Request::GetRoutes(r)
+	    }
+	}
+
+	impl IntoRequest for GetroutesRequest {
+	    type Response = super::responses::GetroutesResponse;
+	}
+
+	impl TypedRequest for GetroutesRequest {
+	    type Response = super::responses::GetroutesResponse;
+
+	    fn method(&self) -> &str {
+	        "getroutes"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenedisablenodeRequest {
+	    pub layer: String,
+	    pub node: PublicKey,
+	}
+
+	impl From<AskrenedisablenodeRequest> for Request {
+	    fn from(r: AskrenedisablenodeRequest) -> Self {
+	        Request::AskReneDisableNode(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenedisablenodeRequest {
+	    type Response = super::responses::AskrenedisablenodeResponse;
+	}
+
+	impl TypedRequest for AskrenedisablenodeRequest {
+	    type Response = super::responses::AskrenedisablenodeResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-disable-node"
+	    }
+	}
+	/// ['Whether this payment passed (implying capacity of at least that amount), failed (implying maximum capacity of one msat less), or succeeded (implying capacity has been reduced in this direction)']
+	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
+	pub enum AskreneinformchannelInform {
+	    #[serde(rename = "constrained")]
+	    CONSTRAINED = 0,
+	    #[serde(rename = "unconstrained")]
+	    UNCONSTRAINED = 1,
+	    #[serde(rename = "succeeded")]
+	    SUCCEEDED = 2,
+	}
+
+	impl TryFrom<i32> for AskreneinformchannelInform {
+	    type Error = anyhow::Error;
+	    fn try_from(c: i32) -> Result<AskreneinformchannelInform, anyhow::Error> {
+	        match c {
+	    0 => Ok(AskreneinformchannelInform::CONSTRAINED),
+	    1 => Ok(AskreneinformchannelInform::UNCONSTRAINED),
+	    2 => Ok(AskreneinformchannelInform::SUCCEEDED),
+	            o => Err(anyhow::anyhow!("Unknown variant {} for enum AskreneinformchannelInform", o)),
+	        }
+	    }
+	}
+
+	impl ToString for AskreneinformchannelInform {
+	    fn to_string(&self) -> String {
+	        match self {
+	            AskreneinformchannelInform::CONSTRAINED => "CONSTRAINED",
+	            AskreneinformchannelInform::UNCONSTRAINED => "UNCONSTRAINED",
+	            AskreneinformchannelInform::SUCCEEDED => "SUCCEEDED",
+	        }.to_string()
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneinformchannelRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub amount_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub inform: Option<AskreneinformchannelInform>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub short_channel_id_dir: Option<ShortChannelIdDir>,
+	    pub layer: String,
+	}
+
+	impl From<AskreneinformchannelRequest> for Request {
+	    fn from(r: AskreneinformchannelRequest) -> Self {
+	        Request::AskReneInformChannel(r)
+	    }
+	}
+
+	impl IntoRequest for AskreneinformchannelRequest {
+	    type Response = super::responses::AskreneinformchannelResponse;
+	}
+
+	impl TypedRequest for AskreneinformchannelRequest {
+	    type Response = super::responses::AskreneinformchannelResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-inform-channel"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatechannelRequest {
+	    pub capacity_msat: Amount,
+	    pub destination: PublicKey,
+	    pub layer: String,
+	    pub short_channel_id: ShortChannelId,
+	    pub source: PublicKey,
+	}
+
+	impl From<AskrenecreatechannelRequest> for Request {
+	    fn from(r: AskrenecreatechannelRequest) -> Self {
+	        Request::AskReneCreateChannel(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenecreatechannelRequest {
+	    type Response = super::responses::AskrenecreatechannelResponse;
+	}
+
+	impl TypedRequest for AskrenecreatechannelRequest {
+	    type Response = super::responses::AskrenecreatechannelResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-create-channel"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneupdatechannelRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub cltv_expiry_delta: Option<u16>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub enabled: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_base_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_proportional_millionths: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_minimum_msat: Option<Amount>,
+	    pub layer: String,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	impl From<AskreneupdatechannelRequest> for Request {
+	    fn from(r: AskreneupdatechannelRequest) -> Self {
+	        Request::AskReneUpdateChannel(r)
+	    }
+	}
+
+	impl IntoRequest for AskreneupdatechannelRequest {
+	    type Response = super::responses::AskreneupdatechannelResponse;
+	}
+
+	impl TypedRequest for AskreneupdatechannelRequest {
+	    type Response = super::responses::AskreneupdatechannelResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-update-channel"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenebiaschannelRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub description: Option<String>,
+	    pub bias: i64,
+	    pub layer: String,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	impl From<AskrenebiaschannelRequest> for Request {
+	    fn from(r: AskrenebiaschannelRequest) -> Self {
+	        Request::AskReneBiasChannel(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenebiaschannelRequest {
+	    type Response = super::responses::AskrenebiaschannelResponse;
+	}
+
+	impl TypedRequest for AskrenebiaschannelRequest {
+	    type Response = super::responses::AskrenebiaschannelResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-bias-channel"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistreservationsRequest {
+	}
+
+	impl From<AskrenelistreservationsRequest> for Request {
+	    fn from(r: AskrenelistreservationsRequest) -> Self {
+	        Request::AskReneListReservations(r)
+	    }
+	}
+
+	impl IntoRequest for AskrenelistreservationsRequest {
+	    type Response = super::responses::AskrenelistreservationsResponse;
+	}
+
+	impl TypedRequest for AskrenelistreservationsRequest {
+	    type Response = super::responses::AskrenelistreservationsResponse;
+
+	    fn method(&self) -> &str {
+	        "askrene-listreservations"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct InjectpaymentonionRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub invstring: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub label: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub localinvreqid: Option<Sha256>,
+	    pub amount_msat: Amount,
+	    pub cltv_expiry: u16,
+	    pub groupid: u64,
+	    pub onion: String,
+	    pub partid: u64,
+	    pub payment_hash: Sha256,
+	}
+
+	impl From<InjectpaymentonionRequest> for Request {
+	    fn from(r: InjectpaymentonionRequest) -> Self {
+	        Request::InjectPaymentOnion(r)
+	    }
+	}
+
+	impl IntoRequest for InjectpaymentonionRequest {
+	    type Response = super::responses::InjectpaymentonionResponse;
+	}
+
+	impl TypedRequest for InjectpaymentonionRequest {
+	    type Response = super::responses::InjectpaymentonionResponse;
+
+	    fn method(&self) -> &str {
+	        "injectpaymentonion"
+	    }
+	}
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct XpayRequest {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub amount_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub maxfee: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub partial_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub retry_for: Option<u32>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub layers: Option<Vec<String>>,
+	    pub invstring: String,
+	}
+
+	impl From<XpayRequest> for Request {
+	    fn from(r: XpayRequest) -> Self {
+	        Request::Xpay(r)
+	    }
+	}
+
+	impl IntoRequest for XpayRequest {
+	    type Response = super::responses::XpayResponse;
+	}
+
+	impl TypedRequest for XpayRequest {
+	    type Response = super::responses::XpayResponse;
+
+	    fn method(&self) -> &str {
+	        "xpay"
+	    }
+	}
 }
 
 
@@ -5045,6 +5725,39 @@ pub mod responses {
 	    }
 	}
 
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetemergencyrecoverdataResponse {
+	    pub filedata: String,
+	}
+
+	impl TryFrom<Response> for GetemergencyrecoverdataResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::GetEmergencyRecoverData(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct ExposesecretResponse {
+	    pub codex32: String,
+	    pub identifier: String,
+	}
+
+	impl TryFrom<Response> for ExposesecretResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::ExposeSecret(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
 	pub enum RecoverResult {
 	    #[serde(rename = "Recovery restart in progress")]
@@ -7125,6 +7838,28 @@ pub mod responses {
 	    }
 	}
 
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct EnableofferResponse {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub label: Option<String>,
+	    pub active: bool,
+	    pub bolt12: String,
+	    pub offer_id: Sha256,
+	    pub single_use: bool,
+	    pub used: bool,
+	}
+
+	impl TryFrom<Response> for EnableofferResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::EnableOffer(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct DisconnectResponse {
 	}
@@ -7590,6 +8325,31 @@ pub mod responses {
 	    }
 	}
 
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct ListaddressesAddresses {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub bech32: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub p2tr: Option<String>,
+	    pub keyidx: u64,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct ListaddressesResponse {
+	    pub addresses: Vec<ListaddressesAddresses>,
+	}
+
+	impl TryFrom<Response> for ListaddressesResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::ListAddresses(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 	/// ['Either a legacy onion format or a modern tlv format.']
 	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
 	pub enum ListforwardsForwardsStyle {
@@ -8587,6 +9347,31 @@ pub mod responses {
 	    }
 	}
 
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct DevspliceResponse {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub psbt: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub tx: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub txid: Option<String>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub dryrun: Option<Vec<String>>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub log: Option<Vec<String>>,
+	}
+
+	impl TryFrom<Response> for DevspliceResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::DevSplice(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct UnreserveinputsReservations {
 	    #[serde(skip_serializing_if = "Option::is_none")]
@@ -10226,6 +11011,156 @@ pub mod responses {
 	    }
 	}
 
+	/// ['Coin movement type.']
+	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
+	pub enum BkpreditdescriptionbypaymentidUpdatedType {
+	    #[serde(rename = "chain")]
+	    CHAIN = 0,
+	    #[serde(rename = "channel")]
+	    CHANNEL = 1,
+	}
+
+	impl TryFrom<i32> for BkpreditdescriptionbypaymentidUpdatedType {
+	    type Error = anyhow::Error;
+	    fn try_from(c: i32) -> Result<BkpreditdescriptionbypaymentidUpdatedType, anyhow::Error> {
+	        match c {
+	    0 => Ok(BkpreditdescriptionbypaymentidUpdatedType::CHAIN),
+	    1 => Ok(BkpreditdescriptionbypaymentidUpdatedType::CHANNEL),
+	            o => Err(anyhow::anyhow!("Unknown variant {} for enum BkpreditdescriptionbypaymentidUpdatedType", o)),
+	        }
+	    }
+	}
+
+	impl ToString for BkpreditdescriptionbypaymentidUpdatedType {
+	    fn to_string(&self) -> String {
+	        match self {
+	            BkpreditdescriptionbypaymentidUpdatedType::CHAIN => "CHAIN",
+	            BkpreditdescriptionbypaymentidUpdatedType::CHANNEL => "CHANNEL",
+	        }.to_string()
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbypaymentidUpdated {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub blockheight: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fees_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub is_rebalance: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub origin: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub outpoint: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub part_id: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub payment_id: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub txid: Option<String>,
+	    // Path `Bkpr-EditDescriptionByPaymentId.updated[].type`
+	    #[serde(rename = "type")]
+	    pub item_type: BkpreditdescriptionbypaymentidUpdatedType,
+	    pub account: String,
+	    pub credit_msat: Amount,
+	    pub currency: String,
+	    pub debit_msat: Amount,
+	    pub description: String,
+	    pub tag: String,
+	    pub timestamp: u32,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbypaymentidResponse {
+	    pub updated: Vec<BkpreditdescriptionbypaymentidUpdated>,
+	}
+
+	impl TryFrom<Response> for BkpreditdescriptionbypaymentidResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::BkprEditDescriptionByPaymentId(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	/// ['Coin movement type.']
+	#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
+	pub enum BkpreditdescriptionbyoutpointUpdatedType {
+	    #[serde(rename = "chain")]
+	    CHAIN = 0,
+	    #[serde(rename = "channel")]
+	    CHANNEL = 1,
+	}
+
+	impl TryFrom<i32> for BkpreditdescriptionbyoutpointUpdatedType {
+	    type Error = anyhow::Error;
+	    fn try_from(c: i32) -> Result<BkpreditdescriptionbyoutpointUpdatedType, anyhow::Error> {
+	        match c {
+	    0 => Ok(BkpreditdescriptionbyoutpointUpdatedType::CHAIN),
+	    1 => Ok(BkpreditdescriptionbyoutpointUpdatedType::CHANNEL),
+	            o => Err(anyhow::anyhow!("Unknown variant {} for enum BkpreditdescriptionbyoutpointUpdatedType", o)),
+	        }
+	    }
+	}
+
+	impl ToString for BkpreditdescriptionbyoutpointUpdatedType {
+	    fn to_string(&self) -> String {
+	        match self {
+	            BkpreditdescriptionbyoutpointUpdatedType::CHAIN => "CHAIN",
+	            BkpreditdescriptionbyoutpointUpdatedType::CHANNEL => "CHANNEL",
+	        }.to_string()
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbyoutpointUpdated {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub blockheight: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fees_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub is_rebalance: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub origin: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub outpoint: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub part_id: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub payment_id: Option<String>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub txid: Option<String>,
+	    // Path `Bkpr-EditDescriptionByOutpoint.updated[].type`
+	    #[serde(rename = "type")]
+	    pub item_type: BkpreditdescriptionbyoutpointUpdatedType,
+	    pub account: String,
+	    pub credit_msat: Amount,
+	    pub currency: String,
+	    pub debit_msat: Amount,
+	    pub description: String,
+	    pub tag: String,
+	    pub timestamp: u32,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct BkpreditdescriptionbyoutpointResponse {
+	    pub updated: Vec<BkpreditdescriptionbyoutpointUpdated>,
+	}
+
+	impl TryFrom<Response> for BkpreditdescriptionbyoutpointResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::BkprEditDescriptionByOutpoint(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 	#[derive(Clone, Debug, Deserialize, Serialize)]
 	pub struct BlacklistruneBlacklist {
 	    pub end: u64,
@@ -10329,5 +11264,409 @@ pub mod responses {
 	    }
 	}
 
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneunreserveResponse {
+	}
+
+	impl TryFrom<Response> for AskreneunreserveResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneUnreserve(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersLayersBiases {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub description: Option<String>,
+	    pub bias: i64,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersLayersChannel_updates {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub cltv_expiry_delta: Option<u16>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub enabled: Option<bool>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_base_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_proportional_millionths: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_minimum_msat: Option<Amount>,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersLayersConstraints {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub minimum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub short_channel_id_dir: Option<ShortChannelIdDir>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub timestamp: Option<u64>,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersLayersCreated_channels {
+	    pub capacity_msat: Amount,
+	    pub destination: PublicKey,
+	    pub short_channel_id: ShortChannelId,
+	    pub source: PublicKey,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersLayers {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub persistent: Option<bool>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub biases: Option<Vec<AskrenelistlayersLayersBiases>>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub channel_updates: Option<Vec<AskrenelistlayersLayersChannel_updates>>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub disabled_channels: Option<Vec<ShortChannelIdDir>>,
+	    pub constraints: Vec<AskrenelistlayersLayersConstraints>,
+	    pub created_channels: Vec<AskrenelistlayersLayersCreated_channels>,
+	    pub disabled_nodes: Vec<PublicKey>,
+	    pub layer: String,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistlayersResponse {
+	    pub layers: Vec<AskrenelistlayersLayers>,
+	}
+
+	impl TryFrom<Response> for AskrenelistlayersResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneListLayers(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerLayersBiases {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub description: Option<String>,
+	    pub bias: i64,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerLayersChannel_updates {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub delay: Option<u16>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_base_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub fee_proportional_millionths: Option<u32>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub htlc_minimum_msat: Option<Amount>,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerLayersConstraints {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub minimum_msat: Option<Amount>,
+	    pub direction: u32,
+	    pub short_channel_id: ShortChannelId,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerLayersCreated_channels {
+	    pub capacity_msat: Amount,
+	    pub destination: PublicKey,
+	    pub short_channel_id: ShortChannelId,
+	    pub source: PublicKey,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerLayers {
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub biases: Option<Vec<AskrenecreatelayerLayersBiases>>,
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub disabled_channels: Option<Vec<ShortChannelIdDir>>,
+	    pub channel_updates: Vec<AskrenecreatelayerLayersChannel_updates>,
+	    pub constraints: Vec<AskrenecreatelayerLayersConstraints>,
+	    pub created_channels: Vec<AskrenecreatelayerLayersCreated_channels>,
+	    pub disabled_nodes: Vec<PublicKey>,
+	    pub layer: String,
+	    pub persistent: bool,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatelayerResponse {
+	    pub layers: Vec<AskrenecreatelayerLayers>,
+	}
+
+	impl TryFrom<Response> for AskrenecreatelayerResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneCreateLayer(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneremovelayerResponse {
+	}
+
+	impl TryFrom<Response> for AskreneremovelayerResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneRemoveLayer(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenereserveResponse {
+	}
+
+	impl TryFrom<Response> for AskrenereserveResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneReserve(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneageResponse {
+	    pub layer: String,
+	    pub num_removed: u64,
+	}
+
+	impl TryFrom<Response> for AskreneageResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneAge(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetroutesRoutesPath {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub short_channel_id_dir: Option<ShortChannelIdDir>,
+	    pub amount_msat: Amount,
+	    pub delay: u32,
+	    pub next_node_id: PublicKey,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetroutesRoutes {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub final_cltv: Option<u32>,
+	    pub amount_msat: Amount,
+	    pub path: Vec<GetroutesRoutesPath>,
+	    pub probability_ppm: u64,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct GetroutesResponse {
+	    pub probability_ppm: u64,
+	    pub routes: Vec<GetroutesRoutes>,
+	}
+
+	impl TryFrom<Response> for GetroutesResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::GetRoutes(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenedisablenodeResponse {
+	}
+
+	impl TryFrom<Response> for AskrenedisablenodeResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneDisableNode(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneinformchannelConstraints {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub maximum_msat: Option<Amount>,
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub minimum_msat: Option<Amount>,
+	    pub layer: String,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	    pub timestamp: u64,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneinformchannelResponse {
+	    #[serde(skip_serializing_if = "crate::is_none_or_empty")]
+	    pub constraints: Option<Vec<AskreneinformchannelConstraints>>,
+	}
+
+	impl TryFrom<Response> for AskreneinformchannelResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneInformChannel(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenecreatechannelResponse {
+	}
+
+	impl TryFrom<Response> for AskrenecreatechannelResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneCreateChannel(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskreneupdatechannelResponse {
+	}
+
+	impl TryFrom<Response> for AskreneupdatechannelResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneUpdateChannel(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenebiaschannelBiases {
+	    #[serde(skip_serializing_if = "Option::is_none")]
+	    pub description: Option<String>,
+	    pub bias: i64,
+	    pub layer: String,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenebiaschannelResponse {
+	    pub biases: Vec<AskrenebiaschannelBiases>,
+	}
+
+	impl TryFrom<Response> for AskrenebiaschannelResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneBiasChannel(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistreservationsReservations {
+	    pub age_in_seconds: u64,
+	    pub amount_msat: Amount,
+	    pub command_id: String,
+	    pub short_channel_id_dir: ShortChannelIdDir,
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct AskrenelistreservationsResponse {
+	    pub reservations: Vec<AskrenelistreservationsReservations>,
+	}
+
+	impl TryFrom<Response> for AskrenelistreservationsResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::AskReneListReservations(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct InjectpaymentonionResponse {
+	    pub completed_at: u64,
+	    pub created_at: u64,
+	    pub created_index: u64,
+	}
+
+	impl TryFrom<Response> for InjectpaymentonionResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::InjectPaymentOnion(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
+	#[derive(Clone, Debug, Deserialize, Serialize)]
+	pub struct XpayResponse {
+	    pub amount_msat: Amount,
+	    pub amount_sent_msat: Amount,
+	    pub failed_parts: u64,
+	    pub payment_preimage: Secret,
+	    pub successful_parts: u64,
+	}
+
+	impl TryFrom<Response> for XpayResponse {
+	    type Error = super::TryFromResponseError;
+
+	    fn try_from(response: Response) -> Result<Self, Self::Error> {
+	        match response {
+	            Response::Xpay(response) => Ok(response),
+	            _ => Err(TryFromResponseError)
+	        }
+	    }
+	}
+
 }
 
diff --git a/contrib/msggen/msggen/utils/utils.py b/contrib/msggen/msggen/utils/utils.py
index a310cf051..e726489e5 100644
--- a/contrib/msggen/msggen/utils/utils.py
+++ b/contrib/msggen/msggen/utils/utils.py
@@ -26,6 +26,8 @@ grpc_method_names = [
     "DelInvoice",
     "Dev-Forget-Channel",
     "EmergencyRecover",
+    "GetEmergencyRecoverData",
+    "ExposeSecret",
     "Recover",
     "RecoverChannel",
     "Invoice",
@@ -60,6 +62,7 @@ grpc_method_names = [
     "DelPay",
     "DelForward",
     "DisableOffer",
+    "EnableOffer",
     "Disconnect",
     "Feerates",
     "FetchInvoice",
@@ -70,6 +73,7 @@ grpc_method_names = [
     "GetLog",
     "FunderUpdate",
     "GetRoute",
+    "ListAddresses",
     "ListForwards",
     "ListOffers",
     "ListPays",
@@ -98,6 +102,7 @@ grpc_method_names = [
     "Splice_Init",
     "Splice_Signed",
     "Splice_Update",
+    "Dev-Splice",
     "UnreserveInputs",
     "UpgradeWallet",
     "WaitBlockHeight",
@@ -116,10 +121,27 @@ grpc_method_names = [
     "Bkpr-ListAccountEvents",
     "Bkpr-ListBalances",
     "Bkpr-ListIncome",
+    "Bkpr-EditDescriptionByPaymentId",
+    "Bkpr-EditDescriptionByOutpoint",
     "BlacklistRune",
     "CheckRune",
     "CreateRune",
     "ShowRunes",
+    "AskRene-Unreserve",
+    "AskRene-ListLayers",
+    "AskRene-Create-Layer",
+    "AskRene-Remove-Layer",
+    "AskRene-Reserve",
+    "AskRene-Age",
+    "GetRoutes",
+    "AskRene-Disable-Node",
+    "AskRene-Inform-Channel",
+    "AskRene-Create-Channel",
+    "AskRene-Update-Channel",
+    "AskRene-Bias-Channel",
+    "AskRene-ListReservations",
+    "InjectPaymentOnion",
+    "Xpay",
 ]
 
 grpc_notification_names = [
diff --git a/contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py b/contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py
index 2122787a0..1e21fe567 100644
--- a/contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py
+++ b/contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py
@@ -15,7 +15,7 @@ _sym_db = _symbol_database.Default()
 from pyln.grpc import primitives_pb2 as primitives__pb2
 
 
-DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\nnode.proto\x12\x03\x63ln\x1a\x10primitives.proto\"\x10\n\x0eGetinfoRequest\"\xc1\x04\n\x0fGetinfoResponse\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\x05\x61lias\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05\x63olor\x18\x03 \x01(\x0c\x12\x11\n\tnum_peers\x18\x04 \x01(\r\x12\x1c\n\x14num_pending_channels\x18\x05 \x01(\r\x12\x1b\n\x13num_active_channels\x18\x06 \x01(\r\x12\x1d\n\x15num_inactive_channels\x18\x07 \x01(\r\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x15\n\rlightning_dir\x18\t \x01(\t\x12\x33\n\x0cour_features\x18\n \x01(\x0b\x32\x18.cln.GetinfoOur_featuresH\x01\x88\x01\x01\x12\x13\n\x0b\x62lockheight\x18\x0b \x01(\r\x12\x0f\n\x07network\x18\x0c \x01(\t\x12(\n\x13\x66\x65\x65s_collected_msat\x18\r \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x07\x61\x64\x64ress\x18\x0e \x03(\x0b\x32\x13.cln.GetinfoAddress\x12$\n\x07\x62inding\x18\x0f \x03(\x0b\x32\x13.cln.GetinfoBinding\x12\"\n\x15warning_bitcoind_sync\x18\x10 \x01(\tH\x02\x88\x01\x01\x12$\n\x17warning_lightningd_sync\x18\x11 \x01(\tH\x03\x88\x01\x01\x42\x08\n\x06_aliasB\x0f\n\r_our_featuresB\x18\n\x16_warning_bitcoind_syncB\x1a\n\x18_warning_lightningd_sync\"S\n\x13GetinfoOur_features\x12\x0c\n\x04init\x18\x01 \x01(\x0c\x12\x0c\n\x04node\x18\x02 \x01(\x0c\x12\x0f\n\x07\x63hannel\x18\x03 \x01(\x0c\x12\x0f\n\x07invoice\x18\x04 \x01(\x0c\"\xc4\x01\n\x0eGetinfoAddress\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.GetinfoAddress.GetinfoAddressType\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\"G\n\x12GetinfoAddressType\x12\x07\n\x03\x44NS\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\n\n\x08_address\"\xac\x02\n\x0eGetinfoBinding\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.GetinfoBinding.GetinfoBindingType\x12\x14\n\x07\x61\x64\x64ress\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04port\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06socket\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07subtype\x18\x05 \x01(\tH\x03\x88\x01\x01\"_\n\x12GetinfoBindingType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x12\r\n\tWEBSOCKET\x10\x05\x42\n\n\x08_addressB\x07\n\x05_portB\t\n\x07_socketB\n\n\x08_subtype\"\xb5\x01\n\x10ListpeersRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x38\n\x05level\x18\x02 \x01(\x0e\x32$.cln.ListpeersRequest.ListpeersLevelH\x01\x88\x01\x01\"E\n\x0eListpeersLevel\x12\x06\n\x02IO\x10\x00\x12\t\n\x05\x44\x45\x42UG\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\x0b\n\x07UNUSUAL\x10\x03\x12\t\n\x05TRACE\x10\x04\x42\x05\n\x03_idB\x08\n\x06_level\"7\n\x11ListpeersResponse\x12\"\n\x05peers\x18\x01 \x03(\x0b\x32\x13.cln.ListpeersPeers\"\xdf\x01\n\x0eListpeersPeers\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x11\n\tconnected\x18\x02 \x01(\x08\x12#\n\x03log\x18\x03 \x03(\x0b\x32\x16.cln.ListpeersPeersLog\x12\x0f\n\x07netaddr\x18\x05 \x03(\t\x12\x15\n\x08\x66\x65\x61tures\x18\x06 \x01(\x0cH\x00\x88\x01\x01\x12\x18\n\x0bremote_addr\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cnum_channels\x18\x08 \x01(\rH\x02\x88\x01\x01\x42\x0b\n\t_featuresB\x0e\n\x0c_remote_addrB\x0f\n\r_num_channels\"\x88\x03\n\x11ListpeersPeersLog\x12?\n\titem_type\x18\x01 \x01(\x0e\x32,.cln.ListpeersPeersLog.ListpeersPeersLogType\x12\x18\n\x0bnum_skipped\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x11\n\x04time\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03log\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x07node_id\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x12\x11\n\x04\x64\x61ta\x18\x07 \x01(\x0cH\x05\x88\x01\x01\"t\n\x15ListpeersPeersLogType\x12\x0b\n\x07SKIPPED\x10\x00\x12\n\n\x06\x42ROKEN\x10\x01\x12\x0b\n\x07UNUSUAL\x10\x02\x12\x08\n\x04INFO\x10\x03\x12\t\n\x05\x44\x45\x42UG\x10\x04\x12\t\n\x05IO_IN\x10\x05\x12\n\n\x06IO_OUT\x10\x06\x12\t\n\x05TRACE\x10\x07\x42\x0e\n\x0c_num_skippedB\x07\n\x05_timeB\t\n\x07_sourceB\x06\n\x04_logB\n\n\x08_node_idB\x07\n\x05_data\"0\n\x10ListfundsRequest\x12\x12\n\x05spent\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\x08\n\x06_spent\"e\n\x11ListfundsResponse\x12&\n\x07outputs\x18\x01 \x03(\x0b\x32\x15.cln.ListfundsOutputs\x12(\n\x08\x63hannels\x18\x02 \x03(\x0b\x32\x16.cln.ListfundsChannels\"\xb9\x03\n\x10ListfundsOutputs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06output\x18\x02 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0cscriptpubkey\x18\x04 \x01(\x0c\x12\x14\n\x07\x61\x64\x64ress\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0credeemscript\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12<\n\x06status\x18\x07 \x01(\x0e\x32,.cln.ListfundsOutputs.ListfundsOutputsStatus\x12\x18\n\x0b\x62lockheight\x18\x08 \x01(\rH\x02\x88\x01\x01\x12\x10\n\x08reserved\x18\t \x01(\x08\x12\x1e\n\x11reserved_to_block\x18\n \x01(\rH\x03\x88\x01\x01\"Q\n\x16ListfundsOutputsStatus\x12\x0f\n\x0bUNCONFIRMED\x10\x00\x12\r\n\tCONFIRMED\x10\x01\x12\t\n\x05SPENT\x10\x02\x12\x0c\n\x08IMMATURE\x10\x03\x42\n\n\x08_addressB\x0f\n\r_redeemscriptB\x0e\n\x0c_blockheightB\x14\n\x12_reserved_to_block\"\xab\x02\n\x11ListfundsChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12$\n\x0four_amount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66unding_txid\x18\x04 \x01(\x0c\x12\x16\n\x0e\x66unding_output\x18\x05 \x01(\r\x12\x11\n\tconnected\x18\x06 \x01(\x08\x12 \n\x05state\x18\x07 \x01(\x0e\x32\x11.cln.ChannelState\x12\x1d\n\x10short_channel_id\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nchannel_id\x18\t \x01(\x0cH\x01\x88\x01\x01\x42\x13\n\x11_short_channel_idB\r\n\x0b_channel_id\"\xbb\x03\n\x0eSendpayRequest\x12 \n\x05route\x18\x01 \x03(\x0b\x32\x11.cln.SendpayRoute\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0epayment_secret\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x13\n\x06partid\x18\x07 \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x07groupid\x18\t \x01(\x04H\x04\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\x0b \x01(\x0cH\x06\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\r \x01(\tH\x08\x88\x01\x01\x42\x08\n\x06_labelB\t\n\x07_bolt11B\x11\n\x0f_payment_secretB\t\n\x07_partidB\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x13\n\x11_payment_metadataB\x0e\n\x0c_description\"\xad\x05\n\x0fSendpayResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x07groupid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x32\n\x06status\x18\x04 \x01(\x0e\x32\".cln.SendpayResponse.SendpayStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06partid\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x14\n\x07message\x18\x0e \x01(\tH\x08\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0f \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\x0b\x88\x01\x01\"*\n\rSendpayStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x42\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\n\n\x08_messageB\x0f\n\r_completed_atB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"\\\n\x0cSendpayRoute\x12\n\n\x02id\x18\x02 \x01(\x0c\x12\r\n\x05\x64\x65lay\x18\x03 \x01(\r\x12\x0f\n\x07\x63hannel\x18\x04 \x01(\t\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\"\x93\x01\n\x13ListchannelsRequest\x12\x1d\n\x10short_channel_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06source\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x42\x13\n\x11_short_channel_idB\t\n\x07_sourceB\x0e\n\x0c_destination\"C\n\x14ListchannelsResponse\x12+\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x19.cln.ListchannelsChannels\"\xb3\x03\n\x14ListchannelsChannels\x12\x0e\n\x06source\x18\x01 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\x0c\x12\x18\n\x10short_channel_id\x18\x03 \x01(\t\x12\x0e\n\x06public\x18\x04 \x01(\x08\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x15\n\rmessage_flags\x18\x06 \x01(\r\x12\x15\n\rchannel_flags\x18\x07 \x01(\r\x12\x0e\n\x06\x61\x63tive\x18\x08 \x01(\x08\x12\x13\n\x0blast_update\x18\t \x01(\r\x12\x1d\n\x15\x62\x61se_fee_millisatoshi\x18\n \x01(\r\x12\x19\n\x11\x66\x65\x65_per_millionth\x18\x0b \x01(\r\x12\r\n\x05\x64\x65lay\x18\x0c \x01(\r\x12&\n\x11htlc_minimum_msat\x18\r \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x11htlc_maximum_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x10\n\x08\x66\x65\x61tures\x18\x0f \x01(\x0c\x12\x11\n\tdirection\x18\x10 \x01(\rB\x14\n\x12_htlc_maximum_msat\"#\n\x10\x41\x64\x64gossipRequest\x12\x0f\n\x07message\x18\x01 \x01(\x0c\"\x13\n\x11\x41\x64\x64gossipResponse\"\xac\x01\n\x14\x41\x64\x64psbtoutputRequest\x12\x1c\n\x07satoshi\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x15\n\x08locktime\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x18\n\x0binitialpsbt\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\x0b\n\t_locktimeB\x0e\n\x0c_initialpsbtB\x0e\n\x0c_destination\"U\n\x15\x41\x64\x64psbtoutputResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x1e\n\x16\x65stimated_added_weight\x18\x02 \x01(\r\x12\x0e\n\x06outnum\x18\x03 \x01(\r\"O\n\x14\x41utocleanonceRequest\x12*\n\tsubsystem\x18\x01 \x01(\x0e\x32\x17.cln.AutocleanSubsystem\x12\x0b\n\x03\x61ge\x18\x02 \x01(\x04\"G\n\x15\x41utocleanonceResponse\x12.\n\tautoclean\x18\x01 \x01(\x0b\x32\x1b.cln.AutocleanonceAutoclean\"\xb1\x04\n\x16\x41utocleanonceAutoclean\x12L\n\x11succeededforwards\x18\x01 \x01(\x0b\x32,.cln.AutocleanonceAutocleanSucceededforwardsH\x00\x88\x01\x01\x12\x46\n\x0e\x66\x61iledforwards\x18\x02 \x01(\x0b\x32).cln.AutocleanonceAutocleanFailedforwardsH\x01\x88\x01\x01\x12\x44\n\rsucceededpays\x18\x03 \x01(\x0b\x32(.cln.AutocleanonceAutocleanSucceededpaysH\x02\x88\x01\x01\x12>\n\nfailedpays\x18\x04 \x01(\x0b\x32%.cln.AutocleanonceAutocleanFailedpaysH\x03\x88\x01\x01\x12\x42\n\x0cpaidinvoices\x18\x05 \x01(\x0b\x32\'.cln.AutocleanonceAutocleanPaidinvoicesH\x04\x88\x01\x01\x12H\n\x0f\x65xpiredinvoices\x18\x06 \x01(\x0b\x32*.cln.AutocleanonceAutocleanExpiredinvoicesH\x05\x88\x01\x01\x42\x14\n\x12_succeededforwardsB\x11\n\x0f_failedforwardsB\x10\n\x0e_succeededpaysB\r\n\x0b_failedpaysB\x0f\n\r_paidinvoicesB\x12\n\x10_expiredinvoices\"M\n\'AutocleanonceAutocleanSucceededforwards\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"J\n$AutocleanonceAutocleanFailedforwards\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"I\n#AutocleanonceAutocleanSucceededpays\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"F\n AutocleanonceAutocleanFailedpays\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"H\n\"AutocleanonceAutocleanPaidinvoices\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"K\n%AutocleanonceAutocleanExpiredinvoices\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"W\n\x16\x41utocleanstatusRequest\x12/\n\tsubsystem\x18\x01 \x01(\x0e\x32\x17.cln.AutocleanSubsystemH\x00\x88\x01\x01\x42\x0c\n\n_subsystem\"K\n\x17\x41utocleanstatusResponse\x12\x30\n\tautoclean\x18\x01 \x01(\x0b\x32\x1d.cln.AutocleanstatusAutoclean\"\xbf\x04\n\x18\x41utocleanstatusAutoclean\x12N\n\x11succeededforwards\x18\x01 \x01(\x0b\x32..cln.AutocleanstatusAutocleanSucceededforwardsH\x00\x88\x01\x01\x12H\n\x0e\x66\x61iledforwards\x18\x02 \x01(\x0b\x32+.cln.AutocleanstatusAutocleanFailedforwardsH\x01\x88\x01\x01\x12\x46\n\rsucceededpays\x18\x03 \x01(\x0b\x32*.cln.AutocleanstatusAutocleanSucceededpaysH\x02\x88\x01\x01\x12@\n\nfailedpays\x18\x04 \x01(\x0b\x32\'.cln.AutocleanstatusAutocleanFailedpaysH\x03\x88\x01\x01\x12\x44\n\x0cpaidinvoices\x18\x05 \x01(\x0b\x32).cln.AutocleanstatusAutocleanPaidinvoicesH\x04\x88\x01\x01\x12J\n\x0f\x65xpiredinvoices\x18\x06 \x01(\x0b\x32,.cln.AutocleanstatusAutocleanExpiredinvoicesH\x05\x88\x01\x01\x42\x14\n\x12_succeededforwardsB\x11\n\x0f_failedforwardsB\x10\n\x0e_succeededpaysB\r\n\x0b_failedpaysB\x0f\n\r_paidinvoicesB\x12\n\x10_expiredinvoices\"g\n)AutocleanstatusAutocleanSucceededforwards\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"d\n&AutocleanstatusAutocleanFailedforwards\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"c\n%AutocleanstatusAutocleanSucceededpays\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"`\n\"AutocleanstatusAutocleanFailedpays\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"b\n$AutocleanstatusAutocleanPaidinvoices\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"e\n\'AutocleanstatusAutocleanExpiredinvoices\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"U\n\x13\x43heckmessageRequest\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\r\n\x05zbase\x18\x02 \x01(\t\x12\x13\n\x06pubkey\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x42\t\n\x07_pubkey\"8\n\x14\x43heckmessageResponse\x12\x10\n\x08verified\x18\x01 \x01(\x08\x12\x0e\n\x06pubkey\x18\x02 \x01(\x0c\"\xcb\x02\n\x0c\x43loseRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1e\n\x11unilateraltimeout\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\tH\x01\x88\x01\x01\x12!\n\x14\x66\x65\x65_negotiation_step\x18\x04 \x01(\tH\x02\x88\x01\x01\x12)\n\rwrong_funding\x18\x05 \x01(\x0b\x32\r.cln.OutpointH\x03\x88\x01\x01\x12\x1f\n\x12\x66orce_lease_closed\x18\x06 \x01(\x08H\x04\x88\x01\x01\x12\x1e\n\x08\x66\x65\x65range\x18\x07 \x03(\x0b\x32\x0c.cln.FeerateB\x14\n\x12_unilateraltimeoutB\x0e\n\x0c_destinationB\x17\n\x15_fee_negotiation_stepB\x10\n\x0e_wrong_fundingB\x15\n\x13_force_lease_closed\"\xc7\x01\n\rCloseResponse\x12/\n\titem_type\x18\x01 \x01(\x0e\x32\x1c.cln.CloseResponse.CloseType\x12\x0f\n\x02tx\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x11\n\x04txid\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x0b\n\x03txs\x18\x04 \x03(\x0c\x12\r\n\x05txids\x18\x05 \x03(\x0c\"5\n\tCloseType\x12\n\n\x06MUTUAL\x10\x00\x12\x0e\n\nUNILATERAL\x10\x01\x12\x0c\n\x08UNOPENED\x10\x02\x42\x05\n\x03_txB\x07\n\x05_txid\"T\n\x0e\x43onnectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04host\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04port\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x07\n\x05_hostB\x07\n\x05_port\"\xb4\x01\n\x0f\x43onnectResponse\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x10\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0c\x12\x38\n\tdirection\x18\x03 \x01(\x0e\x32%.cln.ConnectResponse.ConnectDirection\x12$\n\x07\x61\x64\x64ress\x18\x04 \x01(\x0b\x32\x13.cln.ConnectAddress\"#\n\x10\x43onnectDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\"\xfb\x01\n\x0e\x43onnectAddress\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.ConnectAddress.ConnectAddressType\x12\x13\n\x06socket\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04port\x18\x04 \x01(\rH\x02\x88\x01\x01\"P\n\x12\x43onnectAddressType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\t\n\x07_socketB\n\n\x08_addressB\x07\n\x05_port\"J\n\x14\x43reateinvoiceRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x10\n\x08preimage\x18\x03 \x01(\x0c\"\xfe\x05\n\x15\x43reateinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x06\x62olt11\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x04 \x01(\x0c\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12>\n\x06status\x18\x06 \x01(\x0e\x32..cln.CreateinvoiceResponse.CreateinvoiceStatus\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x12\n\nexpires_at\x18\x08 \x01(\x04\x12\x16\n\tpay_index\x18\t \x01(\x04H\x03\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x06\x88\x01\x01\x12\x1b\n\x0elocal_offer_id\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0f \x01(\tH\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\t\x88\x01\x01\x12;\n\rpaid_outpoint\x18\x11 \x01(\x0b\x32\x1f.cln.CreateinvoicePaid_outpointH\n\x88\x01\x01\"8\n\x13\x43reateinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x11\n\x0f_local_offer_idB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_paid_outpoint\":\n\x1a\x43reateinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\xb4\x02\n\x10\x44\x61tastoreRequest\x12\x10\n\x03hex\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x36\n\x04mode\x18\x03 \x01(\x0e\x32#.cln.DatastoreRequest.DatastoreModeH\x01\x88\x01\x01\x12\x17\n\ngeneration\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\t\x12\x13\n\x06string\x18\x06 \x01(\tH\x03\x88\x01\x01\"p\n\rDatastoreMode\x12\x0f\n\x0bMUST_CREATE\x10\x00\x12\x10\n\x0cMUST_REPLACE\x10\x01\x12\x15\n\x11\x43REATE_OR_REPLACE\x10\x02\x12\x0f\n\x0bMUST_APPEND\x10\x03\x12\x14\n\x10\x43REATE_OR_APPEND\x10\x04\x42\x06\n\x04_hexB\x07\n\x05_modeB\r\n\x0b_generationB\t\n\x07_string\"\x82\x01\n\x11\x44\x61tastoreResponse\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\tB\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"$\n\x15\x44\x61tastoreusageRequest\x12\x0b\n\x03key\x18\x01 \x03(\t\"S\n\x16\x44\x61tastoreusageResponse\x12\x39\n\x0e\x64\x61tastoreusage\x18\x01 \x01(\x0b\x32!.cln.DatastoreusageDatastoreusage\"@\n\x1c\x44\x61tastoreusageDatastoreusage\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x13\n\x0btotal_bytes\x18\x02 \x01(\x04\"\x9d\x01\n\x12\x43reateonionRequest\x12\"\n\x04hops\x18\x01 \x03(\x0b\x32\x14.cln.CreateonionHops\x12\x11\n\tassocdata\x18\x02 \x01(\x0c\x12\x18\n\x0bsession_key\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x17\n\nonion_size\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_session_keyB\r\n\x0b_onion_size\"<\n\x13\x43reateonionResponse\x12\r\n\x05onion\x18\x01 \x01(\x0c\x12\x16\n\x0eshared_secrets\x18\x02 \x03(\x0c\"2\n\x0f\x43reateonionHops\x12\x0e\n\x06pubkey\x18\x01 \x01(\x0c\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"J\n\x13\x44\x65ldatastoreRequest\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x0b\n\x03key\x18\x03 \x03(\tB\r\n\x0b_generation\"\x85\x01\n\x14\x44\x65ldatastoreResponse\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\tB\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"\xb6\x01\n\x11\x44\x65linvoiceRequest\x12\r\n\x05label\x18\x01 \x01(\t\x12\x37\n\x06status\x18\x02 \x01(\x0e\x32\'.cln.DelinvoiceRequest.DelinvoiceStatus\x12\x15\n\x08\x64\x65sconly\x18\x03 \x01(\x08H\x00\x88\x01\x01\"5\n\x10\x44\x65linvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\x0b\n\t_desconly\"\xe6\x05\n\x12\x44\x65linvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x06\x62olt11\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x03 \x01(\tH\x01\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x38\n\x06status\x18\x07 \x01(\x0e\x32(.cln.DelinvoiceResponse.DelinvoiceStatus\x12\x12\n\nexpires_at\x18\x08 \x01(\x04\x12\x1b\n\x0elocal_offer_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1a\n\rupdated_index\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x16\n\tpay_index\x18\x0e \x01(\x04H\x08\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\t\x88\x01\x01\x12\x14\n\x07paid_at\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\"5\n\x10\x44\x65linvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x11\n\x0f_local_offer_idB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimage\"\x9f\x01\n\x17\x44\x65vforgetchannelRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nchannel_id\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\x05\x66orce\x18\x04 \x01(\x08H\x02\x88\x01\x01\x42\x13\n\x11_short_channel_idB\r\n\x0b_channel_idB\x08\n\x06_force\"Y\n\x18\x44\x65vforgetchannelResponse\x12\x0e\n\x06\x66orced\x18\x01 \x01(\x08\x12\x17\n\x0f\x66unding_unspent\x18\x02 \x01(\x08\x12\x14\n\x0c\x66unding_txid\x18\x03 \x01(\x0c\"\x19\n\x17\x45mergencyrecoverRequest\")\n\x18\x45mergencyrecoverResponse\x12\r\n\x05stubs\x18\x01 \x03(\x0c\"#\n\x0eRecoverRequest\x12\x11\n\thsmsecret\x18\x01 \x01(\t\"\x88\x01\n\x0fRecoverResponse\x12\x37\n\x06result\x18\x01 \x01(\x0e\x32\".cln.RecoverResponse.RecoverResultH\x00\x88\x01\x01\"1\n\rRecoverResult\x12 \n\x1cRECOVERY_RESTART_IN_PROGRESS\x10\x00\x42\t\n\x07_result\"$\n\x15RecoverchannelRequest\x12\x0b\n\x03scb\x18\x01 \x03(\x0c\"\'\n\x16RecoverchannelResponse\x12\r\n\x05stubs\x18\x01 \x03(\t\"\x99\x02\n\x0eInvoiceRequest\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\x12\x11\n\tfallbacks\x18\x04 \x03(\t\x12\x15\n\x08preimage\x18\x05 \x01(\x0cH\x00\x88\x01\x01\x12\x11\n\x04\x63ltv\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06\x65xpiry\x18\x07 \x01(\x04H\x02\x88\x01\x01\x12\x1d\n\x15\x65xposeprivatechannels\x18\x08 \x03(\t\x12\x19\n\x0c\x64\x65schashonly\x18\t \x01(\x08H\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x10.cln.AmountOrAnyB\x0b\n\t_preimageB\x07\n\x05_cltvB\t\n\x07_expiryB\x0f\n\r_deschashonly\"\x95\x03\n\x0fInvoiceResponse\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x16\n\x0epayment_secret\x18\x03 \x01(\x0c\x12\x12\n\nexpires_at\x18\x04 \x01(\x04\x12\x1d\n\x10warning_capacity\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0fwarning_offline\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10warning_deadends\x18\x07 \x01(\tH\x02\x88\x01\x01\x12#\n\x16warning_private_unused\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x18\n\x0bwarning_mpp\x18\t \x01(\tH\x04\x88\x01\x01\x12\x1a\n\rcreated_index\x18\n \x01(\x04H\x05\x88\x01\x01\x42\x13\n\x11_warning_capacityB\x12\n\x10_warning_offlineB\x13\n\x11_warning_deadendsB\x19\n\x17_warning_private_unusedB\x0e\n\x0c_warning_mppB\x10\n\x0e_created_index\"\xe1\x01\n\x15InvoicerequestRequest\x12\x1b\n\x06\x61mount\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x13\n\x06issuer\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05label\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0f\x61\x62solute_expiry\x18\x05 \x01(\x04H\x02\x88\x01\x01\x12\x17\n\nsingle_use\x18\x06 \x01(\x08H\x03\x88\x01\x01\x42\t\n\x07_issuerB\x08\n\x06_labelB\x12\n\x10_absolute_expiryB\r\n\x0b_single_use\"\x8b\x01\n\x16InvoicerequestResponse\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"1\n\x1c\x44isableinvoicerequestRequest\x12\x11\n\tinvreq_id\x18\x01 \x01(\t\"\x92\x01\n\x1d\x44isableinvoicerequestResponse\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"l\n\x1aListinvoicerequestsRequest\x12\x16\n\tinvreq_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x61\x63tive_only\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x0c\n\n_invreq_idB\x0e\n\x0c_active_only\"_\n\x1bListinvoicerequestsResponse\x12@\n\x0finvoicerequests\x18\x01 \x03(\x0b\x32\'.cln.ListinvoicerequestsInvoicerequests\"\x97\x01\n\"ListinvoicerequestsInvoicerequests\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"#\n\x14ListdatastoreRequest\x12\x0b\n\x03key\x18\x02 \x03(\t\"G\n\x15ListdatastoreResponse\x12.\n\tdatastore\x18\x01 \x03(\x0b\x32\x1b.cln.ListdatastoreDatastore\"\x87\x01\n\x16ListdatastoreDatastore\x12\x0b\n\x03key\x18\x01 \x03(\t\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"\xde\x02\n\x13ListinvoicesRequest\x12\x12\n\x05label\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tinvstring\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x15\n\x08offer_id\x18\x04 \x01(\tH\x03\x88\x01\x01\x12>\n\x05index\x18\x05 \x01(\x0e\x32*.cln.ListinvoicesRequest.ListinvoicesIndexH\x04\x88\x01\x01\x12\x12\n\x05start\x18\x06 \x01(\x04H\x05\x88\x01\x01\x12\x12\n\x05limit\x18\x07 \x01(\rH\x06\x88\x01\x01\"-\n\x11ListinvoicesIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\x08\n\x06_labelB\x0c\n\n_invstringB\x0f\n\r_payment_hashB\x0b\n\t_offer_idB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListinvoicesResponse\x12+\n\x08invoices\x18\x01 \x03(\x0b\x32\x19.cln.ListinvoicesInvoices\"\xd4\x06\n\x14ListinvoicesInvoices\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x44\n\x06status\x18\x04 \x01(\x0e\x32\x34.cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0elocal_offer_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x16\n\tpay_index\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x14\n\x07paid_at\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0e \x01(\x0cH\x08\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0f \x01(\tH\t\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\x0b\x88\x01\x01\x12\x42\n\rpaid_outpoint\x18\x12 \x01(\x0b\x32&.cln.ListinvoicesInvoicesPaid_outpointH\x0c\x88\x01\x01\"?\n\x1aListinvoicesInvoicesStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x11\n\x0f_local_offer_idB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\"A\n!ListinvoicesInvoicesPaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\xb4\x03\n\x10SendonionRequest\x12\r\n\x05onion\x18\x01 \x01(\x0c\x12*\n\tfirst_hop\x18\x02 \x01(\x0b\x32\x17.cln.SendonionFirst_hop\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\x05label\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x0eshared_secrets\x18\x05 \x03(\x0c\x12\x13\n\x06partid\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\t \x01(\x0cH\x03\x88\x01\x01\x12\x14\n\x07groupid\x18\x0b \x01(\x04H\x04\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\r \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0e \x01(\tH\x07\x88\x01\x01\x42\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\x0e\n\x0c_destinationB\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x0e\n\x0c_description\"\xe7\x04\n\x11SendonionResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x36\n\x06status\x18\x03 \x01(\x0e\x32&.cln.SendonionResponse.SendonionStatus\x12%\n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\ncreated_at\x18\x06 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\x08 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\n \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0b \x01(\x0cH\x05\x88\x01\x01\x12\x14\n\x07message\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x13\n\x06partid\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0e \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0f \x01(\x04H\t\x88\x01\x01\",\n\x0fSendonionStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\n\n\x08_messageB\t\n\x07_partidB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"Q\n\x12SendonionFirst_hop\x12\n\n\x02id\x18\x01 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\r\n\x05\x64\x65lay\x18\x03 \x01(\r\"\xa0\x03\n\x13ListsendpaysRequest\x12\x13\n\x06\x62olt11\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12@\n\x06status\x18\x03 \x01(\x0e\x32+.cln.ListsendpaysRequest.ListsendpaysStatusH\x02\x88\x01\x01\x12>\n\x05index\x18\x04 \x01(\x0e\x32*.cln.ListsendpaysRequest.ListsendpaysIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\";\n\x12ListsendpaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"-\n\x11ListsendpaysIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_bolt11B\x0f\n\r_payment_hashB\t\n\x07_statusB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListsendpaysResponse\x12+\n\x08payments\x18\x01 \x03(\x0b\x32\x19.cln.ListsendpaysPayments\"\xfc\x05\n\x14ListsendpaysPayments\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0f\n\x07groupid\x18\x02 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x44\n\x06status\x18\x04 \x01(\x0e\x32\x34.cln.ListsendpaysPayments.ListsendpaysPaymentsStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\n \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0b \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x05\x88\x01\x01\x12\x17\n\nerroronion\x18\r \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0e \x01(\tH\x07\x88\x01\x01\x12\x13\n\x06partid\x18\x0f \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\n\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x12 \x01(\x04H\x0b\x88\x01\x01\"C\n\x1aListsendpaysPaymentsStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\r\n\x0b_erroronionB\x0e\n\x0c_descriptionB\t\n\x07_partidB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0f\n\r_completed_at\"\x19\n\x17ListtransactionsRequest\"S\n\x18ListtransactionsResponse\x12\x37\n\x0ctransactions\x18\x01 \x03(\x0b\x32!.cln.ListtransactionsTransactions\"\xf8\x01\n\x1cListtransactionsTransactions\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\r\n\x05rawtx\x18\x02 \x01(\x0c\x12\x13\n\x0b\x62lockheight\x18\x03 \x01(\r\x12\x0f\n\x07txindex\x18\x04 \x01(\r\x12\x10\n\x08locktime\x18\x07 \x01(\r\x12\x0f\n\x07version\x18\x08 \x01(\r\x12\x37\n\x06inputs\x18\t \x03(\x0b\x32\'.cln.ListtransactionsTransactionsInputs\x12\x39\n\x07outputs\x18\n \x03(\x0b\x32(.cln.ListtransactionsTransactionsOutputs\"S\n\"ListtransactionsTransactionsInputs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\r\n\x05index\x18\x02 \x01(\r\x12\x10\n\x08sequence\x18\x03 \x01(\r\"l\n#ListtransactionsTransactionsOutputs\x12\r\n\x05index\x18\x01 \x01(\r\x12\x14\n\x0cscriptPubKey\x18\x03 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\"M\n\x11MakesecretRequest\x12\x10\n\x03hex\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x13\n\x06string\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_hexB\t\n\x07_string\"$\n\x12MakesecretResponse\x12\x0e\n\x06secret\x18\x01 \x01(\x0c\"\x93\x04\n\nPayRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rmaxfeepercent\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\texemptfee\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x17\n\nriskfactor\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\n \x03(\t\x12 \n\x06maxfee\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0c \x01(\tH\x07\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\r \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\x0e \x01(\x0cH\t\x88\x01\x01\x12&\n\x0cpartial_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x42\x08\n\x06_labelB\x10\n\x0e_maxfeepercentB\x0c\n\n_retry_forB\x0b\n\t_maxdelayB\x0c\n\n_exemptfeeB\r\n\x0b_riskfactorB\t\n\x07_maxfeeB\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x0f\n\r_partial_msat\"\xfb\x02\n\x0bPayResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x18\n\x0b\x64\x65stination\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\r\n\x05parts\x18\x05 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\x1awarning_partial_completion\x18\x08 \x01(\tH\x01\x88\x01\x01\x12*\n\x06status\x18\t \x01(\x0e\x32\x1a.cln.PayResponse.PayStatus\"2\n\tPayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x0e\n\x0c_destinationB\x1d\n\x1b_warning_partial_completion\"*\n\x10ListnodesRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"7\n\x11ListnodesResponse\x12\"\n\x05nodes\x18\x01 \x03(\x0b\x32\x13.cln.ListnodesNodes\"\xba\x02\n\x0eListnodesNodes\x12\x0e\n\x06nodeid\x18\x01 \x01(\x0c\x12\x1b\n\x0elast_timestamp\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x12\n\x05\x61lias\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x12\n\x05\x63olor\x18\x04 \x01(\x0cH\x02\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18\x05 \x01(\x0cH\x03\x88\x01\x01\x12/\n\taddresses\x18\x06 \x03(\x0b\x32\x1c.cln.ListnodesNodesAddresses\x12\x42\n\x10option_will_fund\x18\x07 \x01(\x0b\x32#.cln.ListnodesNodesOption_will_fundH\x04\x88\x01\x01\x42\x11\n\x0f_last_timestampB\x08\n\x06_aliasB\x08\n\x06_colorB\x0b\n\t_featuresB\x13\n\x11_option_will_fund\"\xf4\x01\n\x1eListnodesNodesOption_will_fund\x12(\n\x13lease_fee_base_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x17\n\x0flease_fee_basis\x18\x02 \x01(\r\x12\x16\n\x0e\x66unding_weight\x18\x03 \x01(\r\x12.\n\x19\x63hannel_fee_max_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x30\n(channel_fee_max_proportional_thousandths\x18\x05 \x01(\r\x12\x15\n\rcompact_lease\x18\x06 \x01(\x0c\"\xe8\x01\n\x17ListnodesNodesAddresses\x12K\n\titem_type\x18\x01 \x01(\x0e\x32\x38.cln.ListnodesNodesAddresses.ListnodesNodesAddressesType\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\"P\n\x1bListnodesNodesAddressesType\x12\x07\n\x03\x44NS\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\n\n\x08_address\"g\n\x15WaitanyinvoiceRequest\x12\x1a\n\rlastpay_index\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\x10\n\x0e_lastpay_indexB\n\n\x08_timeout\"\xd4\x05\n\x16WaitanyinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12@\n\x06status\x18\x04 \x01(\x0e\x32\x30.cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\t \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\r \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0e \x01(\x04H\t\x88\x01\x01\x12<\n\rpaid_outpoint\x18\x0f \x01(\x0b\x32 .cln.WaitanyinvoicePaid_outpointH\n\x88\x01\x01\"-\n\x14WaitanyinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\";\n\x1bWaitanyinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"#\n\x12WaitinvoiceRequest\x12\r\n\x05label\x18\x01 \x01(\t\"\xc5\x05\n\x13WaitinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.WaitinvoiceResponse.WaitinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\t \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\r \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0e \x01(\x04H\t\x88\x01\x01\x12\x39\n\rpaid_outpoint\x18\x0f \x01(\x0b\x32\x1d.cln.WaitinvoicePaid_outpointH\n\x88\x01\x01\"*\n\x11WaitinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\"8\n\x18WaitinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\x8e\x01\n\x12WaitsendpayRequest\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12\x13\n\x06partid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x14\n\x07groupid\x18\x04 \x01(\x04H\x02\x88\x01\x01\x42\t\n\x07_partidB\n\n\x08_timeoutB\n\n\x08_groupid\"\x8e\x05\n\x13WaitsendpayResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x07groupid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.WaitsendpayResponse.WaitsendpayStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06partid\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0e \x01(\x01H\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0f \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\"!\n\x11WaitsendpayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x42\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\x0f\n\r_completed_atB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"\x97\x01\n\x0eNewaddrRequest\x12@\n\x0b\x61\x64\x64resstype\x18\x01 \x01(\x0e\x32&.cln.NewaddrRequest.NewaddrAddresstypeH\x00\x88\x01\x01\"3\n\x12NewaddrAddresstype\x12\n\n\x06\x42\x45\x43H32\x10\x00\x12\x07\n\x03\x41LL\x10\x02\x12\x08\n\x04P2TR\x10\x03\x42\x0e\n\x0c_addresstype\"M\n\x0fNewaddrResponse\x12\x13\n\x06\x62\x65\x63h32\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04p2tr\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\t\n\x07_bech32B\x07\n\x05_p2tr\"\xb9\x01\n\x0fWithdrawRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\t\x12!\n\x07satoshi\x18\x02 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\"\n\x07\x66\x65\x65rate\x18\x05 \x01(\x0b\x32\x0c.cln.FeerateH\x01\x88\x01\x01\x42\n\n\x08_minconfB\n\n\x08_feerate\":\n\x10WithdrawResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x0c\n\x04psbt\x18\x03 \x01(\t\"\xaf\x03\n\x0eKeysendRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\x0c\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rmaxfeepercent\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\texemptfee\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12+\n\nroutehints\x18\x08 \x01(\x0b\x32\x12.cln.RoutehintListH\x05\x88\x01\x01\x12&\n\textratlvs\x18\t \x01(\x0b\x32\x0e.cln.TlvStreamH\x06\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x0b.cln.Amount\x12 \n\x06maxfee\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x07\x88\x01\x01\x42\x08\n\x06_labelB\x10\n\x0e_maxfeepercentB\x0c\n\n_retry_forB\x0b\n\t_maxdelayB\x0c\n\n_exemptfeeB\r\n\x0b_routehintsB\x0c\n\n_extratlvsB\t\n\x07_maxfee\"\xf2\x02\n\x0fKeysendResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x18\n\x0b\x64\x65stination\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\r\n\x05parts\x18\x05 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\x1awarning_partial_completion\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x32\n\x06status\x18\t \x01(\x0e\x32\".cln.KeysendResponse.KeysendStatus\"\x1d\n\rKeysendStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x42\x0e\n\x0c_destinationB\x1d\n\x1b_warning_partial_completion\"\xa4\x03\n\x0f\x46undpsbtRequest\x12!\n\x07satoshi\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x1d\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.Feerate\x12\x13\n\x0bstartweight\x18\x03 \x01(\r\x12\x14\n\x07minconf\x18\x04 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07reserve\x18\x05 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08locktime\x18\x06 \x01(\rH\x02\x88\x01\x01\x12\x1f\n\x12min_witness_weight\x18\x07 \x01(\rH\x03\x88\x01\x01\x12\x1d\n\x10\x65xcess_as_change\x18\x08 \x01(\x08H\x04\x88\x01\x01\x12\x17\n\nnonwrapped\x18\t \x01(\x08H\x05\x88\x01\x01\x12#\n\x16opening_anchor_channel\x18\n \x01(\x08H\x06\x88\x01\x01\x42\n\n\x08_minconfB\n\n\x08_reserveB\x0b\n\t_locktimeB\x15\n\x13_min_witness_weightB\x13\n\x11_excess_as_changeB\r\n\x0b_nonwrappedB\x19\n\x17_opening_anchor_channel\"\xd9\x01\n\x10\x46undpsbtResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\x0e\x66\x65\x65rate_per_kw\x18\x02 \x01(\r\x12\x1e\n\x16\x65stimated_final_weight\x18\x03 \x01(\r\x12 \n\x0b\x65xcess_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1a\n\rchange_outnum\x18\x05 \x01(\rH\x00\x88\x01\x01\x12/\n\x0creservations\x18\x06 \x03(\x0b\x32\x19.cln.FundpsbtReservationsB\x10\n\x0e_change_outnum\"u\n\x14\x46undpsbtReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\"A\n\x0fSendpsbtRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x14\n\x07reserve\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_reserve\",\n\x10SendpsbtResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"1\n\x0fSignpsbtRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x10\n\x08signonly\x18\x02 \x03(\r\"\'\n\x10SignpsbtResponse\x12\x13\n\x0bsigned_psbt\x18\x01 \x01(\t\"\xa0\x03\n\x0fUtxopsbtRequest\x12!\n\x07satoshi\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x1d\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.Feerate\x12\x13\n\x0bstartweight\x18\x03 \x01(\r\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\x14\n\x07reserve\x18\x05 \x01(\rH\x00\x88\x01\x01\x12\x15\n\x08locktime\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x1f\n\x12min_witness_weight\x18\x07 \x01(\rH\x02\x88\x01\x01\x12\x17\n\nreservedok\x18\x08 \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\x10\x65xcess_as_change\x18\t \x01(\x08H\x04\x88\x01\x01\x12#\n\x16opening_anchor_channel\x18\n \x01(\x08H\x05\x88\x01\x01\x42\n\n\x08_reserveB\x0b\n\t_locktimeB\x15\n\x13_min_witness_weightB\r\n\x0b_reservedokB\x13\n\x11_excess_as_changeB\x19\n\x17_opening_anchor_channel\"\xd9\x01\n\x10UtxopsbtResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\x0e\x66\x65\x65rate_per_kw\x18\x02 \x01(\r\x12\x1e\n\x16\x65stimated_final_weight\x18\x03 \x01(\r\x12 \n\x0b\x65xcess_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1a\n\rchange_outnum\x18\x05 \x01(\rH\x00\x88\x01\x01\x12/\n\x0creservations\x18\x06 \x03(\x0b\x32\x19.cln.UtxopsbtReservationsB\x10\n\x0e_change_outnum\"u\n\x14UtxopsbtReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\" \n\x10TxdiscardRequest\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\"6\n\x11TxdiscardResponse\x12\x13\n\x0bunsigned_tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"\xa4\x01\n\x10TxprepareRequest\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12 \n\x07outputs\x18\x05 \x03(\x0b\x32\x0f.cln.OutputDescB\n\n\x08_feerateB\n\n\x08_minconf\"D\n\x11TxprepareResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x13\n\x0bunsigned_tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"\x1d\n\rTxsendRequest\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\"8\n\x0eTxsendResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\n\n\x02tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"1\n\x17ListpeerchannelsRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"K\n\x18ListpeerchannelsResponse\x12/\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x1d.cln.ListpeerchannelsChannels\"\xd7\x1b\n\x18ListpeerchannelsChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x16\n\x0epeer_connected\x18\x02 \x01(\x08\x12J\n\x05state\x18\x03 \x01(\x0e\x32;.cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState\x12\x19\n\x0cscratch_txid\x18\x04 \x01(\x0cH\x00\x88\x01\x01\x12:\n\x07\x66\x65\x65rate\x18\x06 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsFeerateH\x01\x88\x01\x01\x12\x12\n\x05owner\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x10short_channel_id\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x17\n\nchannel_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x19\n\x0c\x66unding_txid\x18\n \x01(\x0cH\x05\x88\x01\x01\x12\x1b\n\x0e\x66unding_outnum\x18\x0b \x01(\rH\x06\x88\x01\x01\x12\x1c\n\x0finitial_feerate\x18\x0c \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0clast_feerate\x18\r \x01(\tH\x08\x88\x01\x01\x12\x19\n\x0cnext_feerate\x18\x0e \x01(\tH\t\x88\x01\x01\x12\x1a\n\rnext_fee_step\x18\x0f \x01(\rH\n\x88\x01\x01\x12\x37\n\x08inflight\x18\x10 \x03(\x0b\x32%.cln.ListpeerchannelsChannelsInflight\x12\x15\n\x08\x63lose_to\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\x12\x14\n\x07private\x18\x12 \x01(\x08H\x0c\x88\x01\x01\x12 \n\x06opener\x18\x13 \x01(\x0e\x32\x10.cln.ChannelSide\x12%\n\x06\x63loser\x18\x14 \x01(\x0e\x32\x10.cln.ChannelSideH\r\x88\x01\x01\x12:\n\x07\x66unding\x18\x16 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsFundingH\x0e\x88\x01\x01\x12$\n\nto_us_msat\x18\x17 \x01(\x0b\x32\x0b.cln.AmountH\x0f\x88\x01\x01\x12(\n\x0emin_to_us_msat\x18\x18 \x01(\x0b\x32\x0b.cln.AmountH\x10\x88\x01\x01\x12(\n\x0emax_to_us_msat\x18\x19 \x01(\x0b\x32\x0b.cln.AmountH\x11\x88\x01\x01\x12$\n\ntotal_msat\x18\x1a \x01(\x0b\x32\x0b.cln.AmountH\x12\x88\x01\x01\x12\'\n\rfee_base_msat\x18\x1b \x01(\x0b\x32\x0b.cln.AmountH\x13\x88\x01\x01\x12(\n\x1b\x66\x65\x65_proportional_millionths\x18\x1c \x01(\rH\x14\x88\x01\x01\x12)\n\x0f\x64ust_limit_msat\x18\x1d \x01(\x0b\x32\x0b.cln.AmountH\x15\x88\x01\x01\x12\x30\n\x16max_total_htlc_in_msat\x18\x1e \x01(\x0b\x32\x0b.cln.AmountH\x16\x88\x01\x01\x12,\n\x12their_reserve_msat\x18\x1f \x01(\x0b\x32\x0b.cln.AmountH\x17\x88\x01\x01\x12*\n\x10our_reserve_msat\x18  \x01(\x0b\x32\x0b.cln.AmountH\x18\x88\x01\x01\x12(\n\x0espendable_msat\x18! \x01(\x0b\x32\x0b.cln.AmountH\x19\x88\x01\x01\x12)\n\x0freceivable_msat\x18\" \x01(\x0b\x32\x0b.cln.AmountH\x1a\x88\x01\x01\x12.\n\x14minimum_htlc_in_msat\x18# \x01(\x0b\x32\x0b.cln.AmountH\x1b\x88\x01\x01\x12/\n\x15minimum_htlc_out_msat\x18$ \x01(\x0b\x32\x0b.cln.AmountH\x1c\x88\x01\x01\x12/\n\x15maximum_htlc_out_msat\x18% \x01(\x0b\x32\x0b.cln.AmountH\x1d\x88\x01\x01\x12 \n\x13their_to_self_delay\x18& \x01(\rH\x1e\x88\x01\x01\x12\x1e\n\x11our_to_self_delay\x18\' \x01(\rH\x1f\x88\x01\x01\x12\x1f\n\x12max_accepted_htlcs\x18( \x01(\rH \x88\x01\x01\x12\x36\n\x05\x61lias\x18) \x01(\x0b\x32\".cln.ListpeerchannelsChannelsAliasH!\x88\x01\x01\x12\x0e\n\x06status\x18+ \x03(\t\x12 \n\x13in_payments_offered\x18, \x01(\x04H\"\x88\x01\x01\x12)\n\x0fin_offered_msat\x18- \x01(\x0b\x32\x0b.cln.AmountH#\x88\x01\x01\x12\"\n\x15in_payments_fulfilled\x18. \x01(\x04H$\x88\x01\x01\x12+\n\x11in_fulfilled_msat\x18/ \x01(\x0b\x32\x0b.cln.AmountH%\x88\x01\x01\x12!\n\x14out_payments_offered\x18\x30 \x01(\x04H&\x88\x01\x01\x12*\n\x10out_offered_msat\x18\x31 \x01(\x0b\x32\x0b.cln.AmountH\'\x88\x01\x01\x12#\n\x16out_payments_fulfilled\x18\x32 \x01(\x04H(\x88\x01\x01\x12,\n\x12out_fulfilled_msat\x18\x33 \x01(\x0b\x32\x0b.cln.AmountH)\x88\x01\x01\x12\x31\n\x05htlcs\x18\x34 \x03(\x0b\x32\".cln.ListpeerchannelsChannelsHtlcs\x12\x1a\n\rclose_to_addr\x18\x35 \x01(\tH*\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\x36 \x01(\x08H+\x88\x01\x01\x12:\n\x07updates\x18\x37 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsUpdatesH,\x88\x01\x01\x12#\n\x16last_stable_connection\x18\x38 \x01(\x04H-\x88\x01\x01\x12\x17\n\nlost_state\x18\x39 \x01(\x08H.\x88\x01\x01\x12\x1a\n\rreestablished\x18: \x01(\x08H/\x88\x01\x01\x12*\n\x10last_tx_fee_msat\x18; \x01(\x0b\x32\x0b.cln.AmountH0\x88\x01\x01\x12\x16\n\tdirection\x18< \x01(\rH1\x88\x01\x01\"\x80\x03\n\x1dListpeerchannelsChannelsState\x12\x0c\n\x08OPENINGD\x10\x00\x12\x1c\n\x18\x43HANNELD_AWAITING_LOCKIN\x10\x01\x12\x13\n\x0f\x43HANNELD_NORMAL\x10\x02\x12\x1a\n\x16\x43HANNELD_SHUTTING_DOWN\x10\x03\x12\x18\n\x14\x43LOSINGD_SIGEXCHANGE\x10\x04\x12\x15\n\x11\x43LOSINGD_COMPLETE\x10\x05\x12\x17\n\x13\x41WAITING_UNILATERAL\x10\x06\x12\x16\n\x12\x46UNDING_SPEND_SEEN\x10\x07\x12\x0b\n\x07ONCHAIN\x10\x08\x12\x17\n\x13\x44UALOPEND_OPEN_INIT\x10\t\x12\x1d\n\x19\x44UALOPEND_AWAITING_LOCKIN\x10\n\x12\x1c\n\x18\x43HANNELD_AWAITING_SPLICE\x10\x0b\x12\x1c\n\x18\x44UALOPEND_OPEN_COMMITTED\x10\x0c\x12\x1f\n\x1b\x44UALOPEND_OPEN_COMMIT_READY\x10\rB\x0f\n\r_scratch_txidB\n\n\x08_feerateB\x08\n\x06_ownerB\x13\n\x11_short_channel_idB\r\n\x0b_channel_idB\x0f\n\r_funding_txidB\x11\n\x0f_funding_outnumB\x12\n\x10_initial_feerateB\x0f\n\r_last_feerateB\x0f\n\r_next_feerateB\x10\n\x0e_next_fee_stepB\x0b\n\t_close_toB\n\n\x08_privateB\t\n\x07_closerB\n\n\x08_fundingB\r\n\x0b_to_us_msatB\x11\n\x0f_min_to_us_msatB\x11\n\x0f_max_to_us_msatB\r\n\x0b_total_msatB\x10\n\x0e_fee_base_msatB\x1e\n\x1c_fee_proportional_millionthsB\x12\n\x10_dust_limit_msatB\x19\n\x17_max_total_htlc_in_msatB\x15\n\x13_their_reserve_msatB\x13\n\x11_our_reserve_msatB\x11\n\x0f_spendable_msatB\x12\n\x10_receivable_msatB\x17\n\x15_minimum_htlc_in_msatB\x18\n\x16_minimum_htlc_out_msatB\x18\n\x16_maximum_htlc_out_msatB\x16\n\x14_their_to_self_delayB\x14\n\x12_our_to_self_delayB\x15\n\x13_max_accepted_htlcsB\x08\n\x06_aliasB\x16\n\x14_in_payments_offeredB\x12\n\x10_in_offered_msatB\x18\n\x16_in_payments_fulfilledB\x14\n\x12_in_fulfilled_msatB\x17\n\x15_out_payments_offeredB\x13\n\x11_out_offered_msatB\x19\n\x17_out_payments_fulfilledB\x15\n\x13_out_fulfilled_msatB\x10\n\x0e_close_to_addrB\x14\n\x12_ignore_fee_limitsB\n\n\x08_updatesB\x19\n\x17_last_stable_connectionB\r\n\x0b_lost_stateB\x10\n\x0e_reestablishedB\x13\n\x11_last_tx_fee_msatB\x0c\n\n_direction\"\xa7\x01\n\x1fListpeerchannelsChannelsUpdates\x12\x38\n\x05local\x18\x01 \x01(\x0b\x32).cln.ListpeerchannelsChannelsUpdatesLocal\x12?\n\x06remote\x18\x02 \x01(\x0b\x32*.cln.ListpeerchannelsChannelsUpdatesRemoteH\x00\x88\x01\x01\x42\t\n\x07_remote\"\xda\x01\n$ListpeerchannelsChannelsUpdatesLocal\x12&\n\x11htlc_minimum_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11htlc_maximum_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x11\x63ltv_expiry_delta\x18\x03 \x01(\r\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\"\xdb\x01\n%ListpeerchannelsChannelsUpdatesRemote\x12&\n\x11htlc_minimum_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11htlc_maximum_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x11\x63ltv_expiry_delta\x18\x03 \x01(\r\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\"?\n\x1fListpeerchannelsChannelsFeerate\x12\r\n\x05perkw\x18\x01 \x01(\r\x12\r\n\x05perkb\x18\x02 \x01(\r\"\x8b\x02\n ListpeerchannelsChannelsInflight\x12\x14\n\x0c\x66unding_txid\x18\x01 \x01(\x0c\x12\x16\n\x0e\x66unding_outnum\x18\x02 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x03 \x01(\t\x12\'\n\x12total_funding_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10our_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x0cscratch_txid\x18\x06 \x01(\x0cH\x00\x88\x01\x01\x12\x1a\n\rsplice_amount\x18\x07 \x01(\x12H\x01\x88\x01\x01\x42\x0f\n\r_scratch_txidB\x10\n\x0e_splice_amount\"\x9d\x02\n\x1fListpeerchannelsChannelsFunding\x12%\n\x0bpushed_msat\x18\x01 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12%\n\x10local_funds_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11remote_funds_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\rfee_paid_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\'\n\rfee_rcvd_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x42\x0e\n\x0c_pushed_msatB\x10\n\x0e_fee_paid_msatB\x10\n\x0e_fee_rcvd_msat\"]\n\x1dListpeerchannelsChannelsAlias\x12\x12\n\x05local\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06remote\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_localB\t\n\x07_remote\"\xf9\x02\n\x1dListpeerchannelsChannelsHtlcs\x12\\\n\tdirection\x18\x01 \x01(\x0e\x32I.cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection\x12\n\n\x02id\x18\x02 \x01(\x04\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06\x65xpiry\x18\x04 \x01(\r\x12\x14\n\x0cpayment_hash\x18\x05 \x01(\x0c\x12\x1a\n\rlocal_trimmed\x18\x06 \x01(\x08H\x00\x88\x01\x01\x12\x13\n\x06status\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x05state\x18\x08 \x01(\x0e\x32\x0e.cln.HtlcState\"9\n&ListpeerchannelsChannelsHtlcsDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\x42\x10\n\x0e_local_trimmedB\t\n\x07_status\"3\n\x19ListclosedchannelsRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"[\n\x1aListclosedchannelsResponse\x12=\n\x0e\x63losedchannels\x18\x01 \x03(\x0b\x32%.cln.ListclosedchannelsClosedchannels\"\xf2\t\n ListclosedchannelsClosedchannels\x12\x14\n\x07peer_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x12\n\nchannel_id\x18\x02 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x03 \x01(\tH\x01\x88\x01\x01\x12>\n\x05\x61lias\x18\x04 \x01(\x0b\x32*.cln.ListclosedchannelsClosedchannelsAliasH\x02\x88\x01\x01\x12 \n\x06opener\x18\x05 \x01(\x0e\x32\x10.cln.ChannelSide\x12%\n\x06\x63loser\x18\x06 \x01(\x0e\x32\x10.cln.ChannelSideH\x03\x88\x01\x01\x12\x0f\n\x07private\x18\x07 \x01(\x08\x12\x1f\n\x17total_local_commitments\x18\t \x01(\x04\x12 \n\x18total_remote_commitments\x18\n \x01(\x04\x12\x18\n\x10total_htlcs_sent\x18\x0b \x01(\x04\x12\x14\n\x0c\x66unding_txid\x18\x0c \x01(\x0c\x12\x16\n\x0e\x66unding_outnum\x18\r \x01(\r\x12\x0e\n\x06leased\x18\x0e \x01(\x08\x12/\n\x15\x66unding_fee_paid_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12/\n\x15\x66unding_fee_rcvd_msat\x18\x10 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12-\n\x13\x66unding_pushed_msat\x18\x11 \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x1f\n\ntotal_msat\x18\x12 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x66inal_to_us_msat\x18\x13 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0emin_to_us_msat\x18\x14 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0emax_to_us_msat\x18\x15 \x01(\x0b\x32\x0b.cln.Amount\x12!\n\x14last_commitment_txid\x18\x16 \x01(\x0cH\x07\x88\x01\x01\x12\x32\n\x18last_commitment_fee_msat\x18\x17 \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x66\n\x0b\x63lose_cause\x18\x18 \x01(\x0e\x32Q.cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause\x12#\n\x16last_stable_connection\x18\x19 \x01(\x04H\t\x88\x01\x01\"v\n+ListclosedchannelsClosedchannelsClose_cause\x12\x0b\n\x07UNKNOWN\x10\x00\x12\t\n\x05LOCAL\x10\x01\x12\x08\n\x04USER\x10\x02\x12\n\n\x06REMOTE\x10\x03\x12\x0c\n\x08PROTOCOL\x10\x04\x12\x0b\n\x07ONCHAIN\x10\x05\x42\n\n\x08_peer_idB\x13\n\x11_short_channel_idB\x08\n\x06_aliasB\t\n\x07_closerB\x18\n\x16_funding_fee_paid_msatB\x18\n\x16_funding_fee_rcvd_msatB\x16\n\x14_funding_pushed_msatB\x17\n\x15_last_commitment_txidB\x1b\n\x19_last_commitment_fee_msatB\x19\n\x17_last_stable_connection\"e\n%ListclosedchannelsClosedchannelsAlias\x12\x12\n\x05local\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06remote\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_localB\t\n\x07_remote\"L\n\x10\x44\x65\x63odepayRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"\xc7\x04\n\x11\x44\x65\x63odepayResponse\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x04\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\x04\x12\r\n\x05payee\x18\x04 \x01(\x0c\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x11\n\tsignature\x18\x07 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10\x64\x65scription_hash\x18\t \x01(\x0cH\x02\x88\x01\x01\x12\x1d\n\x15min_final_cltv_expiry\x18\n \x01(\r\x12\x1b\n\x0epayment_secret\x18\x0b \x01(\x0cH\x03\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18\x0c \x01(\x0cH\x04\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\r \x01(\x0cH\x05\x88\x01\x01\x12*\n\tfallbacks\x18\x0e \x03(\x0b\x32\x17.cln.DecodepayFallbacks\x12\"\n\x05\x65xtra\x18\x10 \x03(\x0b\x32\x13.cln.DecodepayExtra\x12-\n\x06routes\x18\x11 \x01(\x0b\x32\x18.cln.DecodeRoutehintListH\x06\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x13\n\x11_description_hashB\x11\n\x0f_payment_secretB\x0b\n\t_featuresB\x13\n\x11_payment_metadataB\t\n\x07_routes\"\xd0\x01\n\x12\x44\x65\x63odepayFallbacks\x12\x41\n\titem_type\x18\x01 \x01(\x0e\x32..cln.DecodepayFallbacks.DecodepayFallbacksType\x12\x11\n\x04\x61\x64\x64r\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0b\n\x03hex\x18\x03 \x01(\x0c\"N\n\x16\x44\x65\x63odepayFallbacksType\x12\t\n\x05P2PKH\x10\x00\x12\x08\n\x04P2SH\x10\x01\x12\n\n\x06P2WPKH\x10\x02\x12\t\n\x05P2WSH\x10\x03\x12\x08\n\x04P2TR\x10\x04\x42\x07\n\x05_addr\"+\n\x0e\x44\x65\x63odepayExtra\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\t\"\x1f\n\rDecodeRequest\x12\x0e\n\x06string\x18\x01 \x01(\t\"\xec%\n\x0e\x44\x65\x63odeResponse\x12\x31\n\titem_type\x18\x01 \x01(\x0e\x32\x1e.cln.DecodeResponse.DecodeType\x12\r\n\x05valid\x18\x02 \x01(\x08\x12\x15\n\x08offer_id\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0coffer_chains\x18\x04 \x03(\x0c\x12\x1b\n\x0eoffer_metadata\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x1b\n\x0eoffer_currency\x18\x06 \x01(\tH\x02\x88\x01\x01\x12+\n\x1ewarning_unknown_offer_currency\x18\x07 \x01(\tH\x03\x88\x01\x01\x12 \n\x13\x63urrency_minor_unit\x18\x08 \x01(\rH\x04\x88\x01\x01\x12\x19\n\x0coffer_amount\x18\t \x01(\x04H\x05\x88\x01\x01\x12+\n\x11offer_amount_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x1e\n\x11offer_description\x18\x0b \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0coffer_issuer\x18\x0c \x01(\tH\x08\x88\x01\x01\x12\x1b\n\x0eoffer_features\x18\r \x01(\x0cH\t\x88\x01\x01\x12\"\n\x15offer_absolute_expiry\x18\x0e \x01(\x04H\n\x88\x01\x01\x12\x1f\n\x12offer_quantity_max\x18\x0f \x01(\x04H\x0b\x88\x01\x01\x12+\n\x0boffer_paths\x18\x10 \x03(\x0b\x32\x16.cln.DecodeOffer_paths\x12\x1a\n\roffer_node_id\x18\x11 \x01(\x0cH\x0c\x88\x01\x01\x12*\n\x1dwarning_missing_offer_node_id\x18\x14 \x01(\tH\r\x88\x01\x01\x12.\n!warning_invalid_offer_description\x18\x15 \x01(\tH\x0e\x88\x01\x01\x12.\n!warning_missing_offer_description\x18\x16 \x01(\tH\x0f\x88\x01\x01\x12+\n\x1ewarning_invalid_offer_currency\x18\x17 \x01(\tH\x10\x88\x01\x01\x12)\n\x1cwarning_invalid_offer_issuer\x18\x18 \x01(\tH\x11\x88\x01\x01\x12\x1c\n\x0finvreq_metadata\x18\x19 \x01(\x0cH\x12\x88\x01\x01\x12\x1c\n\x0finvreq_payer_id\x18\x1a \x01(\x0cH\x13\x88\x01\x01\x12\x19\n\x0cinvreq_chain\x18\x1b \x01(\x0cH\x14\x88\x01\x01\x12,\n\x12invreq_amount_msat\x18\x1c \x01(\x0b\x32\x0b.cln.AmountH\x15\x88\x01\x01\x12\x1c\n\x0finvreq_features\x18\x1d \x01(\x0cH\x16\x88\x01\x01\x12\x1c\n\x0finvreq_quantity\x18\x1e \x01(\x04H\x17\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x1f \x01(\tH\x18\x88\x01\x01\x12&\n\x19invreq_recurrence_counter\x18  \x01(\rH\x19\x88\x01\x01\x12$\n\x17invreq_recurrence_start\x18! \x01(\rH\x1a\x88\x01\x01\x12,\n\x1fwarning_missing_invreq_metadata\x18# \x01(\tH\x1b\x88\x01\x01\x12,\n\x1fwarning_missing_invreq_payer_id\x18$ \x01(\tH\x1c\x88\x01\x01\x12.\n!warning_invalid_invreq_payer_note\x18% \x01(\tH\x1d\x88\x01\x01\x12\x36\n)warning_missing_invoice_request_signature\x18& \x01(\tH\x1e\x88\x01\x01\x12\x36\n)warning_invalid_invoice_request_signature\x18\' \x01(\tH\x1f\x88\x01\x01\x12\x1f\n\x12invoice_created_at\x18) \x01(\x04H \x88\x01\x01\x12$\n\x17invoice_relative_expiry\x18* \x01(\rH!\x88\x01\x01\x12!\n\x14invoice_payment_hash\x18+ \x01(\x0cH\"\x88\x01\x01\x12-\n\x13invoice_amount_msat\x18, \x01(\x0b\x32\x0b.cln.AmountH#\x88\x01\x01\x12\x37\n\x11invoice_fallbacks\x18- \x03(\x0b\x32\x1c.cln.DecodeInvoice_fallbacks\x12\x1d\n\x10invoice_features\x18. \x01(\x0cH$\x88\x01\x01\x12\x1c\n\x0finvoice_node_id\x18/ \x01(\x0cH%\x88\x01\x01\x12(\n\x1binvoice_recurrence_basetime\x18\x30 \x01(\x04H&\x88\x01\x01\x12*\n\x1dwarning_missing_invoice_paths\x18\x32 \x01(\tH\'\x88\x01\x01\x12/\n\"warning_missing_invoice_blindedpay\x18\x33 \x01(\tH(\x88\x01\x01\x12/\n\"warning_missing_invoice_created_at\x18\x34 \x01(\tH)\x88\x01\x01\x12\x31\n$warning_missing_invoice_payment_hash\x18\x35 \x01(\tH*\x88\x01\x01\x12+\n\x1ewarning_missing_invoice_amount\x18\x36 \x01(\tH+\x88\x01\x01\x12\x38\n+warning_missing_invoice_recurrence_basetime\x18\x37 \x01(\tH,\x88\x01\x01\x12,\n\x1fwarning_missing_invoice_node_id\x18\x38 \x01(\tH-\x88\x01\x01\x12.\n!warning_missing_invoice_signature\x18\x39 \x01(\tH.\x88\x01\x01\x12.\n!warning_invalid_invoice_signature\x18: \x01(\tH/\x88\x01\x01\x12\'\n\tfallbacks\x18; \x03(\x0b\x32\x14.cln.DecodeFallbacks\x12\x17\n\ncreated_at\x18< \x01(\x04H0\x88\x01\x01\x12\x13\n\x06\x65xpiry\x18= \x01(\x04H1\x88\x01\x01\x12\x12\n\x05payee\x18> \x01(\x0cH2\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18? \x01(\x0cH3\x88\x01\x01\x12\x1d\n\x10\x64\x65scription_hash\x18@ \x01(\x0cH4\x88\x01\x01\x12\"\n\x15min_final_cltv_expiry\x18\x41 \x01(\rH5\x88\x01\x01\x12\x1b\n\x0epayment_secret\x18\x42 \x01(\x0cH6\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\x43 \x01(\x0cH7\x88\x01\x01\x12\x1f\n\x05\x65xtra\x18\x45 \x03(\x0b\x32\x10.cln.DecodeExtra\x12\x16\n\tunique_id\x18\x46 \x01(\tH8\x88\x01\x01\x12\x14\n\x07version\x18G \x01(\tH9\x88\x01\x01\x12\x13\n\x06string\x18H \x01(\tH:\x88\x01\x01\x12-\n\x0crestrictions\x18I \x03(\x0b\x32\x17.cln.DecodeRestrictions\x12&\n\x19warning_rune_invalid_utf8\x18J \x01(\tH;\x88\x01\x01\x12\x10\n\x03hex\x18K \x01(\x0cH<\x88\x01\x01\x12\x16\n\tdecrypted\x18L \x01(\x0cH=\x88\x01\x01\x12\x16\n\tsignature\x18M \x01(\tH>\x88\x01\x01\x12\x15\n\x08\x63urrency\x18N \x01(\tH?\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18O \x01(\x0b\x32\x0b.cln.AmountH@\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18P \x01(\tHA\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18Q \x01(\x0cHB\x88\x01\x01\x12-\n\x06routes\x18R \x01(\x0b\x32\x18.cln.DecodeRoutehintListHC\x88\x01\x01\x12\x1c\n\x0foffer_issuer_id\x18S \x01(\x0cHD\x88\x01\x01\x12,\n\x1fwarning_missing_offer_issuer_id\x18T \x01(\tHE\x88\x01\x01\x12-\n\x0cinvreq_paths\x18U \x03(\x0b\x32\x17.cln.DecodeInvreq_paths\x12\'\n\x1awarning_empty_blinded_path\x18V \x01(\tHF\x88\x01\x01\"\x83\x01\n\nDecodeType\x12\x10\n\x0c\x42OLT12_OFFER\x10\x00\x12\x12\n\x0e\x42OLT12_INVOICE\x10\x01\x12\x1a\n\x16\x42OLT12_INVOICE_REQUEST\x10\x02\x12\x12\n\x0e\x42OLT11_INVOICE\x10\x03\x12\x08\n\x04RUNE\x10\x04\x12\x15\n\x11\x45MERGENCY_RECOVER\x10\x05\x42\x0b\n\t_offer_idB\x11\n\x0f_offer_metadataB\x11\n\x0f_offer_currencyB!\n\x1f_warning_unknown_offer_currencyB\x16\n\x14_currency_minor_unitB\x0f\n\r_offer_amountB\x14\n\x12_offer_amount_msatB\x14\n\x12_offer_descriptionB\x0f\n\r_offer_issuerB\x11\n\x0f_offer_featuresB\x18\n\x16_offer_absolute_expiryB\x15\n\x13_offer_quantity_maxB\x10\n\x0e_offer_node_idB \n\x1e_warning_missing_offer_node_idB$\n\"_warning_invalid_offer_descriptionB$\n\"_warning_missing_offer_descriptionB!\n\x1f_warning_invalid_offer_currencyB\x1f\n\x1d_warning_invalid_offer_issuerB\x12\n\x10_invreq_metadataB\x12\n\x10_invreq_payer_idB\x0f\n\r_invreq_chainB\x15\n\x13_invreq_amount_msatB\x12\n\x10_invreq_featuresB\x12\n\x10_invreq_quantityB\x14\n\x12_invreq_payer_noteB\x1c\n\x1a_invreq_recurrence_counterB\x1a\n\x18_invreq_recurrence_startB\"\n _warning_missing_invreq_metadataB\"\n _warning_missing_invreq_payer_idB$\n\"_warning_invalid_invreq_payer_noteB,\n*_warning_missing_invoice_request_signatureB,\n*_warning_invalid_invoice_request_signatureB\x15\n\x13_invoice_created_atB\x1a\n\x18_invoice_relative_expiryB\x17\n\x15_invoice_payment_hashB\x16\n\x14_invoice_amount_msatB\x13\n\x11_invoice_featuresB\x12\n\x10_invoice_node_idB\x1e\n\x1c_invoice_recurrence_basetimeB \n\x1e_warning_missing_invoice_pathsB%\n#_warning_missing_invoice_blindedpayB%\n#_warning_missing_invoice_created_atB\'\n%_warning_missing_invoice_payment_hashB!\n\x1f_warning_missing_invoice_amountB.\n,_warning_missing_invoice_recurrence_basetimeB\"\n _warning_missing_invoice_node_idB$\n\"_warning_missing_invoice_signatureB$\n\"_warning_invalid_invoice_signatureB\r\n\x0b_created_atB\t\n\x07_expiryB\x08\n\x06_payeeB\x0f\n\r_payment_hashB\x13\n\x11_description_hashB\x18\n\x16_min_final_cltv_expiryB\x11\n\x0f_payment_secretB\x13\n\x11_payment_metadataB\x0c\n\n_unique_idB\n\n\x08_versionB\t\n\x07_stringB\x1c\n\x1a_warning_rune_invalid_utf8B\x06\n\x04_hexB\x0c\n\n_decryptedB\x0c\n\n_signatureB\x0b\n\t_currencyB\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x0b\n\t_featuresB\t\n\x07_routesB\x12\n\x10_offer_issuer_idB\"\n _warning_missing_offer_issuer_idB\x1d\n\x1b_warning_empty_blinded_path\"\xed\x01\n\x11\x44\x65\x63odeOffer_paths\x12\x1a\n\rfirst_node_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x15\n\x08\x62linding\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x1b\n\x0e\x66irst_scid_dir\x18\x04 \x01(\rH\x02\x88\x01\x01\x12\x17\n\nfirst_scid\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0e\x66irst_path_key\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x42\x10\n\x0e_first_node_idB\x0b\n\t_blindingB\x11\n\x0f_first_scid_dirB\r\n\x0b_first_scidB\x11\n\x0f_first_path_key\"\x8a\x01\n\x1f\x44\x65\x63odeOffer_recurrencePaywindow\x12\x16\n\x0eseconds_before\x18\x01 \x01(\r\x12\x15\n\rseconds_after\x18\x02 \x01(\r\x12 \n\x13proportional_amount\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\x16\n\x14_proportional_amount\"\x99\x02\n\x12\x44\x65\x63odeInvreq_paths\x12\x1b\n\x0e\x66irst_scid_dir\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x15\n\x08\x62linding\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x1a\n\rfirst_node_id\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x17\n\nfirst_scid\x18\x04 \x01(\tH\x03\x88\x01\x01\x12)\n\x04path\x18\x05 \x03(\x0b\x32\x1b.cln.DecodeInvreq_pathsPath\x12\x1b\n\x0e\x66irst_path_key\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x42\x11\n\x0f_first_scid_dirB\x0b\n\t_blindingB\x10\n\x0e_first_node_idB\r\n\x0b_first_scidB\x11\n\x0f_first_path_key\"S\n\x16\x44\x65\x63odeInvreq_pathsPath\x12\x17\n\x0f\x62linded_node_id\x18\x01 \x01(\x0c\x12 \n\x18\x65ncrypted_recipient_data\x18\x02 \x01(\x0c\"T\n\x17\x44\x65\x63odeInvoice_pathsPath\x12\x17\n\x0f\x62linded_node_id\x18\x01 \x01(\x0c\x12 \n\x18\x65ncrypted_recipient_data\x18\x02 \x01(\x0c\"Y\n\x17\x44\x65\x63odeInvoice_fallbacks\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\x0b\n\x03hex\x18\x02 \x01(\x0c\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_address\"\xaa\x02\n\x0f\x44\x65\x63odeFallbacks\x12\x36\n)warning_invoice_fallbacks_version_invalid\x18\x01 \x01(\tH\x00\x88\x01\x01\x12;\n\titem_type\x18\x02 \x01(\x0e\x32(.cln.DecodeFallbacks.DecodeFallbacksType\x12\x11\n\x04\x61\x64\x64r\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0b\n\x03hex\x18\x04 \x01(\x0c\"K\n\x13\x44\x65\x63odeFallbacksType\x12\t\n\x05P2PKH\x10\x00\x12\x08\n\x04P2SH\x10\x01\x12\n\n\x06P2WPKH\x10\x02\x12\t\n\x05P2WSH\x10\x03\x12\x08\n\x04P2TR\x10\x04\x42,\n*_warning_invoice_fallbacks_version_invalidB\x07\n\x05_addr\"(\n\x0b\x44\x65\x63odeExtra\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\t\";\n\x12\x44\x65\x63odeRestrictions\x12\x14\n\x0c\x61lternatives\x18\x01 \x03(\t\x12\x0f\n\x07summary\x18\x02 \x01(\t\"\xc2\x01\n\rDelpayRequest\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12/\n\x06status\x18\x02 \x01(\x0e\x32\x1f.cln.DelpayRequest.DelpayStatus\x12\x13\n\x06partid\x18\x03 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07groupid\x18\x04 \x01(\x04H\x01\x88\x01\x01\"(\n\x0c\x44\x65lpayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x42\t\n\x07_partidB\n\n\x08_groupid\"7\n\x0e\x44\x65lpayResponse\x12%\n\x08payments\x18\x01 \x03(\x0b\x32\x13.cln.DelpayPayments\"\xcb\x05\n\x0e\x44\x65lpayPayments\x12\x1a\n\rcreated_index\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\n\n\x02id\x18\x02 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x38\n\x06status\x18\x04 \x01(\x0e\x32(.cln.DelpayPayments.DelpayPaymentsStatus\x12%\n\x10\x61mount_sent_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x13\n\x06partid\x18\x06 \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x07 \x01(\x0cH\x02\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x12\n\ncreated_at\x18\t \x01(\x04\x12\x1a\n\rupdated_index\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x07groupid\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x12\n\x05label\x18\x0e \x01(\tH\x08\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0f \x01(\tH\t\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x10 \x01(\tH\n\x88\x01\x01\x12\x17\n\nerroronion\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\"=\n\x14\x44\x65lpayPaymentsStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x10\n\x0e_created_indexB\t\n\x07_partidB\x0e\n\x0c_destinationB\x0e\n\x0c_amount_msatB\x10\n\x0e_updated_indexB\x0f\n\r_completed_atB\n\n\x08_groupidB\x13\n\x11_payment_preimageB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\r\n\x0b_erroronion\"\xb3\x01\n\x11\x44\x65lforwardRequest\x12\x12\n\nin_channel\x18\x01 \x01(\t\x12\x12\n\nin_htlc_id\x18\x02 \x01(\x04\x12\x37\n\x06status\x18\x03 \x01(\x0e\x32\'.cln.DelforwardRequest.DelforwardStatus\"=\n\x10\x44\x65lforwardStatus\x12\x0b\n\x07SETTLED\x10\x00\x12\x10\n\x0cLOCAL_FAILED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"\x14\n\x12\x44\x65lforwardResponse\"\'\n\x13\x44isableofferRequest\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\"\x88\x01\n\x14\x44isableofferResponse\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"=\n\x11\x44isconnectRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\x05\x66orce\x18\x02 \x01(\x08H\x00\x88\x01\x01\x42\x08\n\x06_force\"\x14\n\x12\x44isconnectResponse\"k\n\x0f\x46\x65\x65ratesRequest\x12\x31\n\x05style\x18\x01 \x01(\x0e\x32\".cln.FeeratesRequest.FeeratesStyle\"%\n\rFeeratesStyle\x12\t\n\x05PERKB\x10\x00\x12\t\n\x05PERKW\x10\x01\"\x9c\x02\n\x10\x46\x65\x65ratesResponse\x12%\n\x18warning_missing_feerates\x18\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x05perkb\x18\x02 \x01(\x0b\x32\x12.cln.FeeratesPerkbH\x01\x88\x01\x01\x12&\n\x05perkw\x18\x03 \x01(\x0b\x32\x12.cln.FeeratesPerkwH\x02\x88\x01\x01\x12\x46\n\x15onchain_fee_estimates\x18\x04 \x01(\x0b\x32\".cln.FeeratesOnchain_fee_estimatesH\x03\x88\x01\x01\x42\x1b\n\x19_warning_missing_feeratesB\x08\n\x06_perkbB\x08\n\x06_perkwB\x18\n\x16_onchain_fee_estimates\"\xd3\x03\n\rFeeratesPerkb\x12\x16\n\x0emin_acceptable\x18\x01 \x01(\r\x12\x16\n\x0emax_acceptable\x18\x02 \x01(\r\x12\x14\n\x07opening\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmutual_close\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1d\n\x10unilateral_close\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x1a\n\rdelayed_to_us\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x1c\n\x0fhtlc_resolution\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07penalty\x18\x08 \x01(\rH\x05\x88\x01\x01\x12.\n\testimates\x18\t \x03(\x0b\x32\x1b.cln.FeeratesPerkbEstimates\x12\x12\n\x05\x66loor\x18\n \x01(\rH\x06\x88\x01\x01\x12$\n\x17unilateral_anchor_close\x18\x0b \x01(\rH\x07\x88\x01\x01\x42\n\n\x08_openingB\x0f\n\r_mutual_closeB\x13\n\x11_unilateral_closeB\x10\n\x0e_delayed_to_usB\x12\n\x10_htlc_resolutionB\n\n\x08_penaltyB\x08\n\x06_floorB\x1a\n\x18_unilateral_anchor_close\"W\n\x16\x46\x65\x65ratesPerkbEstimates\x12\x12\n\nblockcount\x18\x01 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x02 \x01(\r\x12\x18\n\x10smoothed_feerate\x18\x03 \x01(\r\"\xd3\x03\n\rFeeratesPerkw\x12\x16\n\x0emin_acceptable\x18\x01 \x01(\r\x12\x16\n\x0emax_acceptable\x18\x02 \x01(\r\x12\x14\n\x07opening\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmutual_close\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1d\n\x10unilateral_close\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x1a\n\rdelayed_to_us\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x1c\n\x0fhtlc_resolution\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07penalty\x18\x08 \x01(\rH\x05\x88\x01\x01\x12.\n\testimates\x18\t \x03(\x0b\x32\x1b.cln.FeeratesPerkwEstimates\x12\x12\n\x05\x66loor\x18\n \x01(\rH\x06\x88\x01\x01\x12$\n\x17unilateral_anchor_close\x18\x0b \x01(\rH\x07\x88\x01\x01\x42\n\n\x08_openingB\x0f\n\r_mutual_closeB\x13\n\x11_unilateral_closeB\x10\n\x0e_delayed_to_usB\x12\n\x10_htlc_resolutionB\n\n\x08_penaltyB\x08\n\x06_floorB\x1a\n\x18_unilateral_anchor_close\"W\n\x16\x46\x65\x65ratesPerkwEstimates\x12\x12\n\nblockcount\x18\x01 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x02 \x01(\r\x12\x18\n\x10smoothed_feerate\x18\x03 \x01(\r\"\x9b\x02\n\x1d\x46\x65\x65ratesOnchain_fee_estimates\x12 \n\x18opening_channel_satoshis\x18\x01 \x01(\x04\x12\x1d\n\x15mutual_close_satoshis\x18\x02 \x01(\x04\x12!\n\x19unilateral_close_satoshis\x18\x03 \x01(\x04\x12\x1d\n\x15htlc_timeout_satoshis\x18\x04 \x01(\x04\x12\x1d\n\x15htlc_success_satoshis\x18\x05 \x01(\x04\x12\x30\n#unilateral_close_nonanchor_satoshis\x18\x06 \x01(\x04H\x00\x88\x01\x01\x42&\n$_unilateral_close_nonanchor_satoshis\"\x99\x03\n\x13\x46\x65tchinvoiceRequest\x12\r\n\x05offer\x18\x01 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x15\n\x08quantity\x18\x03 \x01(\x04H\x01\x88\x01\x01\x12\x1f\n\x12recurrence_counter\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x1d\n\x10recurrence_start\x18\x05 \x01(\x01H\x03\x88\x01\x01\x12\x1d\n\x10recurrence_label\x18\x06 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x07timeout\x18\x07 \x01(\x01H\x05\x88\x01\x01\x12\x17\n\npayer_note\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x1b\n\x0epayer_metadata\x18\t \x01(\tH\x07\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\x0b\n\t_quantityB\x15\n\x13_recurrence_counterB\x13\n\x11_recurrence_startB\x13\n\x11_recurrence_labelB\n\n\x08_timeoutB\r\n\x0b_payer_noteB\x11\n\x0f_payer_metadata\"\x9a\x01\n\x14\x46\x65tchinvoiceResponse\x12\x0f\n\x07invoice\x18\x01 \x01(\t\x12)\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x18.cln.FetchinvoiceChanges\x12\x36\n\x0bnext_period\x18\x03 \x01(\x0b\x32\x1c.cln.FetchinvoiceNext_periodH\x00\x88\x01\x01\x42\x0e\n\x0c_next_period\"\x82\x02\n\x13\x46\x65tchinvoiceChanges\x12!\n\x14\x64\x65scription_appended\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0evendor_removed\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06vendor\x18\x04 \x01(\tH\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x42\x17\n\x15_description_appendedB\x0e\n\x0c_descriptionB\x11\n\x0f_vendor_removedB\t\n\x07_vendorB\x0e\n\x0c_amount_msat\"~\n\x17\x46\x65tchinvoiceNext_period\x12\x0f\n\x07\x63ounter\x18\x01 \x01(\x04\x12\x11\n\tstarttime\x18\x02 \x01(\x04\x12\x0f\n\x07\x65ndtime\x18\x03 \x01(\x04\x12\x17\n\x0fpaywindow_start\x18\x04 \x01(\x04\x12\x15\n\rpaywindow_end\x18\x05 \x01(\x04\"\'\n\x19\x46undchannel_cancelRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\"/\n\x1a\x46undchannel_cancelResponse\x12\x11\n\tcancelled\x18\x01 \x01(\t\"7\n\x1b\x46undchannel_completeRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"O\n\x1c\x46undchannel_completeResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x1b\n\x13\x63ommitments_secured\x18\x02 \x01(\x08\"\xfb\x03\n\x12\x46undchannelRequest\x12 \n\x06\x61mount\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12#\n\tpush_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\tH\x03\x88\x01\x01\x12%\n\x0brequest_amt\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x08 \x01(\tH\x05\x88\x01\x01\x12\n\n\x02id\x18\t \x01(\x0c\x12\x14\n\x07minconf\x18\n \x01(\rH\x06\x88\x01\x01\x12\x1c\n\x05utxos\x18\x0b \x03(\x0b\x32\r.cln.Outpoint\x12\x15\n\x08mindepth\x18\x0c \x01(\rH\x07\x88\x01\x01\x12!\n\x07reserve\x18\r \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\x0e \x03(\rB\n\n\x08_feerateB\x0b\n\t_announceB\x0c\n\n_push_msatB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_leaseB\n\n\x08_minconfB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xe5\x01\n\x13\x46undchannelResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x0e\n\x06outnum\x18\x03 \x01(\r\x12\x12\n\nchannel_id\x18\x04 \x01(\x0c\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\x0cH\x00\x88\x01\x01\x12\x15\n\x08mindepth\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x37\n\x0c\x63hannel_type\x18\x07 \x01(\x0b\x32\x1c.cln.FundchannelChannel_typeH\x02\x88\x01\x01\x42\x0b\n\t_close_toB\x0b\n\t_mindepthB\x0f\n\r_channel_type\"L\n\x17\x46undchannelChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\xd7\x02\n\x18\x46undchannel_startRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x1b\n\x06\x61mount\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\"\n\x07\x66\x65\x65rate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x04 \x01(\x08H\x01\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\tH\x02\x88\x01\x01\x12#\n\tpush_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x15\n\x08mindepth\x18\x07 \x01(\rH\x04\x88\x01\x01\x12!\n\x07reserve\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\t \x03(\rB\n\n\x08_feerateB\x0b\n\t_announceB\x0b\n\t_close_toB\x0c\n\n_push_msatB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xf9\x01\n\x19\x46undchannel_startResponse\x12\x17\n\x0f\x66unding_address\x18\x01 \x01(\t\x12\x14\n\x0cscriptpubkey\x18\x02 \x01(\x0c\x12=\n\x0c\x63hannel_type\x18\x03 \x01(\x0b\x32\".cln.Fundchannel_startChannel_typeH\x00\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x04 \x01(\x0cH\x01\x88\x01\x01\x12\x15\n\rwarning_usage\x18\x05 \x01(\t\x12\x15\n\x08mindepth\x18\x06 \x01(\rH\x02\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_toB\x0b\n\t_mindepth\"R\n\x1d\x46undchannel_startChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\x9d\x01\n\rGetlogRequest\x12\x32\n\x05level\x18\x01 \x01(\x0e\x32\x1e.cln.GetlogRequest.GetlogLevelH\x00\x88\x01\x01\"N\n\x0bGetlogLevel\x12\n\n\x06\x42ROKEN\x10\x00\x12\x0b\n\x07UNUSUAL\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\t\n\x05\x44\x45\x42UG\x10\x03\x12\x06\n\x02IO\x10\x04\x12\t\n\x05TRACE\x10\x05\x42\x08\n\x06_level\"h\n\x0eGetlogResponse\x12\x12\n\ncreated_at\x18\x01 \x01(\t\x12\x12\n\nbytes_used\x18\x02 \x01(\r\x12\x11\n\tbytes_max\x18\x03 \x01(\r\x12\x1b\n\x03log\x18\x04 \x03(\x0b\x32\x0e.cln.GetlogLog\"\xe8\x02\n\tGetlogLog\x12/\n\titem_type\x18\x01 \x01(\x0e\x32\x1c.cln.GetlogLog.GetlogLogType\x12\x18\n\x0bnum_skipped\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x11\n\x04time\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03log\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x07node_id\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x12\x11\n\x04\x64\x61ta\x18\x07 \x01(\x0cH\x05\x88\x01\x01\"l\n\rGetlogLogType\x12\x0b\n\x07SKIPPED\x10\x00\x12\n\n\x06\x42ROKEN\x10\x01\x12\x0b\n\x07UNUSUAL\x10\x02\x12\x08\n\x04INFO\x10\x03\x12\t\n\x05\x44\x45\x42UG\x10\x04\x12\t\n\x05IO_IN\x10\x05\x12\n\n\x06IO_OUT\x10\x06\x12\t\n\x05TRACE\x10\x07\x42\x0e\n\x0c_num_skippedB\x07\n\x05_timeB\t\n\x07_sourceB\x06\n\x04_logB\n\n\x08_node_idB\x07\n\x05_data\"\xd9\x08\n\x13\x46underupdateRequest\x12@\n\x06policy\x18\x01 \x01(\x0e\x32+.cln.FunderupdateRequest.FunderupdatePolicyH\x00\x88\x01\x01\x12$\n\npolicy_mod\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0bleases_only\x18\x03 \x01(\x08H\x02\x88\x01\x01\x12\x30\n\x16min_their_funding_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x30\n\x16max_their_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12.\n\x14per_channel_min_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12.\n\x14per_channel_max_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12+\n\x11reserve_tank_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x07\x88\x01\x01\x12\x19\n\x0c\x66uzz_percent\x18\t \x01(\rH\x08\x88\x01\x01\x12\x1d\n\x10\x66und_probability\x18\n \x01(\rH\t\x88\x01\x01\x12-\n\x13lease_fee_base_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x12\x1c\n\x0flease_fee_basis\x18\x0c \x01(\rH\x0b\x88\x01\x01\x12\x1b\n\x0e\x66unding_weight\x18\r \x01(\rH\x0c\x88\x01\x01\x12\x33\n\x19\x63hannel_fee_max_base_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\r\x88\x01\x01\x12\x35\n(channel_fee_max_proportional_thousandths\x18\x0f \x01(\rH\x0e\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x10 \x01(\x0cH\x0f\x88\x01\x01\"9\n\x12\x46underupdatePolicy\x12\t\n\x05MATCH\x10\x00\x12\r\n\tAVAILABLE\x10\x01\x12\t\n\x05\x46IXED\x10\x02\x42\t\n\x07_policyB\r\n\x0b_policy_modB\x0e\n\x0c_leases_onlyB\x19\n\x17_min_their_funding_msatB\x19\n\x17_max_their_funding_msatB\x17\n\x15_per_channel_min_msatB\x17\n\x15_per_channel_max_msatB\x14\n\x12_reserve_tank_msatB\x0f\n\r_fuzz_percentB\x13\n\x11_fund_probabilityB\x16\n\x14_lease_fee_base_msatB\x12\n\x10_lease_fee_basisB\x11\n\x0f_funding_weightB\x1c\n\x1a_channel_fee_max_base_msatB+\n)_channel_fee_max_proportional_thousandthsB\x10\n\x0e_compact_lease\"\xdf\x06\n\x14\x46underupdateResponse\x12\x0f\n\x07summary\x18\x01 \x01(\t\x12<\n\x06policy\x18\x02 \x01(\x0e\x32,.cln.FunderupdateResponse.FunderupdatePolicy\x12\x12\n\npolicy_mod\x18\x03 \x01(\r\x12\x13\n\x0bleases_only\x18\x04 \x01(\x08\x12+\n\x16min_their_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x16max_their_funding_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12)\n\x14per_channel_min_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12)\n\x14per_channel_max_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11reserve_tank_msat\x18\t \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66uzz_percent\x18\n \x01(\r\x12\x18\n\x10\x66und_probability\x18\x0b \x01(\r\x12-\n\x13lease_fee_base_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x1c\n\x0flease_fee_basis\x18\r \x01(\rH\x01\x88\x01\x01\x12\x1b\n\x0e\x66unding_weight\x18\x0e \x01(\rH\x02\x88\x01\x01\x12\x33\n\x19\x63hannel_fee_max_base_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x35\n(channel_fee_max_proportional_thousandths\x18\x10 \x01(\rH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x11 \x01(\x0cH\x05\x88\x01\x01\"9\n\x12\x46underupdatePolicy\x12\t\n\x05MATCH\x10\x00\x12\r\n\tAVAILABLE\x10\x01\x12\t\n\x05\x46IXED\x10\x02\x42\x16\n\x14_lease_fee_base_msatB\x12\n\x10_lease_fee_basisB\x11\n\x0f_funding_weightB\x1c\n\x1a_channel_fee_max_base_msatB+\n)_channel_fee_max_proportional_thousandthsB\x10\n\x0e_compact_lease\"\xec\x01\n\x0fGetrouteRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\nriskfactor\x18\x03 \x01(\x04\x12\x11\n\x04\x63ltv\x18\x04 \x01(\rH\x00\x88\x01\x01\x12\x13\n\x06\x66romid\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x18\n\x0b\x66uzzpercent\x18\x06 \x01(\rH\x02\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\x07 \x03(\t\x12\x14\n\x07maxhops\x18\x08 \x01(\rH\x03\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\t \x01(\x0b\x32\x0b.cln.AmountB\x07\n\x05_cltvB\t\n\x07_fromidB\x0e\n\x0c_fuzzpercentB\n\n\x08_maxhops\"5\n\x10GetrouteResponse\x12!\n\x05route\x18\x01 \x03(\x0b\x32\x12.cln.GetrouteRoute\"\xc5\x01\n\rGetrouteRoute\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0f\n\x07\x63hannel\x18\x02 \x01(\t\x12\x11\n\tdirection\x18\x03 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\r\n\x05\x64\x65lay\x18\x05 \x01(\r\x12\x34\n\x05style\x18\x06 \x01(\x0e\x32%.cln.GetrouteRoute.GetrouteRouteStyle\"\x1d\n\x12GetrouteRouteStyle\x12\x07\n\x03TLV\x10\x00\"\xb7\x03\n\x13ListforwardsRequest\x12@\n\x06status\x18\x01 \x01(\x0e\x32+.cln.ListforwardsRequest.ListforwardsStatusH\x00\x88\x01\x01\x12\x17\n\nin_channel\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0bout_channel\x18\x03 \x01(\tH\x02\x88\x01\x01\x12>\n\x05index\x18\x04 \x01(\x0e\x32*.cln.ListforwardsRequest.ListforwardsIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\"L\n\x12ListforwardsStatus\x12\x0b\n\x07OFFERED\x10\x00\x12\x0b\n\x07SETTLED\x10\x01\x12\x10\n\x0cLOCAL_FAILED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"-\n\x11ListforwardsIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_statusB\r\n\x0b_in_channelB\x0e\n\x0c_out_channelB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListforwardsResponse\x12+\n\x08\x66orwards\x18\x01 \x03(\x0b\x32\x19.cln.ListforwardsForwards\"\xb4\x06\n\x14ListforwardsForwards\x12\x12\n\nin_channel\x18\x01 \x01(\t\x12\x1c\n\x07in_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x44\n\x06status\x18\x03 \x01(\x0e\x32\x34.cln.ListforwardsForwards.ListforwardsForwardsStatus\x12\x15\n\rreceived_time\x18\x04 \x01(\x01\x12\x18\n\x0bout_channel\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\"\n\x08\x66\x65\x65_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\"\n\x08out_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12G\n\x05style\x18\t \x01(\x0e\x32\x33.cln.ListforwardsForwards.ListforwardsForwardsStyleH\x03\x88\x01\x01\x12\x17\n\nin_htlc_id\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x18\n\x0bout_htlc_id\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1a\n\rupdated_index\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1a\n\rresolved_time\x18\x0e \x01(\x01H\x08\x88\x01\x01\x12\x15\n\x08\x66\x61ilcode\x18\x0f \x01(\rH\t\x88\x01\x01\x12\x17\n\nfailreason\x18\x10 \x01(\tH\n\x88\x01\x01\"T\n\x1aListforwardsForwardsStatus\x12\x0b\n\x07OFFERED\x10\x00\x12\x0b\n\x07SETTLED\x10\x01\x12\x10\n\x0cLOCAL_FAILED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"0\n\x19ListforwardsForwardsStyle\x12\n\n\x06LEGACY\x10\x00\x12\x07\n\x03TLV\x10\x01\x42\x0e\n\x0c_out_channelB\x0b\n\t_fee_msatB\x0b\n\t_out_msatB\x08\n\x06_styleB\r\n\x0b_in_htlc_idB\x0e\n\x0c_out_htlc_idB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_resolved_timeB\x0b\n\t_failcodeB\r\n\x0b_failreason\"a\n\x11ListoffersRequest\x12\x15\n\x08offer_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x18\n\x0b\x61\x63tive_only\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x0b\n\t_offer_idB\x0e\n\x0c_active_only\";\n\x12ListoffersResponse\x12%\n\x06offers\x18\x01 \x03(\x0b\x32\x15.cln.ListoffersOffers\"\x84\x01\n\x10ListoffersOffers\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"\x84\x03\n\x0fListpaysRequest\x12\x13\n\x06\x62olt11\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x38\n\x06status\x18\x03 \x01(\x0e\x32#.cln.ListpaysRequest.ListpaysStatusH\x02\x88\x01\x01\x12\x36\n\x05index\x18\x04 \x01(\x0e\x32\".cln.ListpaysRequest.ListpaysIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\"7\n\x0eListpaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\")\n\rListpaysIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_bolt11B\x0f\n\r_payment_hashB\t\n\x07_statusB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"3\n\x10ListpaysResponse\x12\x1f\n\x04pays\x18\x01 \x03(\x0b\x32\x11.cln.ListpaysPays\"\xdb\x05\n\x0cListpaysPays\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12\x34\n\x06status\x18\x02 \x01(\x0e\x32$.cln.ListpaysPays.ListpaysPaysStatus\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x12\n\ncreated_at\x18\x04 \x01(\x04\x12\x12\n\x05label\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x07 \x01(\tH\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12*\n\x10\x61mount_sent_msat\x18\t \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x17\n\nerroronion\x18\n \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0c \x01(\x04H\x08\x88\x01\x01\x12\x15\n\x08preimage\x18\r \x01(\x0cH\t\x88\x01\x01\x12\x1c\n\x0fnumber_of_parts\x18\x0e \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0f \x01(\x04H\x0b\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x10 \x01(\x04H\x0c\x88\x01\x01\";\n\x12ListpaysPaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x13\n\x11_amount_sent_msatB\r\n\x0b_erroronionB\x0e\n\x0c_descriptionB\x0f\n\r_completed_atB\x0b\n\t_preimageB\x12\n\x10_number_of_partsB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"*\n\x10ListhtlcsRequest\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x05\n\x03_id\"7\n\x11ListhtlcsResponse\x12\"\n\x05htlcs\x18\x01 \x03(\x0b\x32\x13.cln.ListhtlcsHtlcs\"\x89\x02\n\x0eListhtlcsHtlcs\x12\x18\n\x10short_channel_id\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\x04\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12>\n\tdirection\x18\x05 \x01(\x0e\x32+.cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x1d\n\x05state\x18\x07 \x01(\x0e\x32\x0e.cln.HtlcState\"*\n\x17ListhtlcsHtlcsDirection\x12\x07\n\x03OUT\x10\x00\x12\x06\n\x02IN\x10\x01\"\xb2\x02\n\x17MultifundchannelRequest\x12\x37\n\x0c\x64\x65stinations\x18\x01 \x03(\x0b\x32!.cln.MultifundchannelDestinations\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\x12H\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\x18\n\x0bminchannels\x18\x05 \x01(\x12H\x02\x88\x01\x01\x12-\n\x12\x63ommitment_feerate\x18\x06 \x01(\x0b\x32\x0c.cln.FeerateH\x03\x88\x01\x01\x42\n\n\x08_feerateB\n\n\x08_minconfB\x0e\n\x0c_minchannelsB\x15\n\x13_commitment_feerate\"\x98\x01\n\x18MultifundchannelResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x35\n\x0b\x63hannel_ids\x18\x03 \x03(\x0b\x32 .cln.MultifundchannelChannel_ids\x12+\n\x06\x66\x61iled\x18\x04 \x03(\x0b\x32\x1b.cln.MultifundchannelFailed\"\xff\x02\n\x1cMultifundchannelDestinations\x12\n\n\x02id\x18\x01 \x01(\t\x12 \n\x06\x61mount\x18\x02 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x15\n\x08\x61nnounce\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12#\n\tpush_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\tH\x02\x88\x01\x01\x12%\n\x0brequest_amt\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x15\n\x08mindepth\x18\x08 \x01(\rH\x05\x88\x01\x01\x12!\n\x07reserve\x18\t \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x42\x0b\n\t_announceB\x0c\n\n_push_msatB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_leaseB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xcb\x01\n\x1bMultifundchannelChannel_ids\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\x12\x12\n\nchannel_id\x18\x03 \x01(\x0c\x12G\n\x0c\x63hannel_type\x18\x04 \x01(\x0b\x32,.cln.MultifundchannelChannel_idsChannel_typeH\x00\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_to\"\\\n\'MultifundchannelChannel_idsChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\x93\x02\n\x16MultifundchannelFailed\x12\n\n\x02id\x18\x01 \x01(\x0c\x12H\n\x06method\x18\x02 \x01(\x0e\x32\x38.cln.MultifundchannelFailed.MultifundchannelFailedMethod\x12/\n\x05\x65rror\x18\x03 \x01(\x0b\x32 .cln.MultifundchannelFailedError\"r\n\x1cMultifundchannelFailedMethod\x12\x0b\n\x07\x43ONNECT\x10\x00\x12\x14\n\x10OPENCHANNEL_INIT\x10\x01\x12\x15\n\x11\x46UNDCHANNEL_START\x10\x02\x12\x18\n\x14\x46UNDCHANNEL_COMPLETE\x10\x03\"<\n\x1bMultifundchannelFailedError\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x12\x12\x0f\n\x07message\x18\x02 \x01(\t\"\xa8\x01\n\x14MultiwithdrawRequest\x12 \n\x07outputs\x18\x01 \x03(\x0b\x32\x0f.cln.OutputDesc\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.OutpointB\n\n\x08_feerateB\n\n\x08_minconf\"1\n\x15MultiwithdrawResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"\xa0\x04\n\x0cOfferRequest\x12\x0e\n\x06\x61mount\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06issuer\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x12\n\x05label\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x0cquantity_max\x18\x05 \x01(\x04H\x03\x88\x01\x01\x12\x1c\n\x0f\x61\x62solute_expiry\x18\x06 \x01(\x04H\x04\x88\x01\x01\x12\x17\n\nrecurrence\x18\x07 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0frecurrence_base\x18\x08 \x01(\tH\x06\x88\x01\x01\x12!\n\x14recurrence_paywindow\x18\t \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x10recurrence_limit\x18\n \x01(\rH\x08\x88\x01\x01\x12\x17\n\nsingle_use\x18\x0b \x01(\x08H\t\x88\x01\x01\x12(\n\x1brecurrence_start_any_period\x18\x0c \x01(\x08H\n\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_issuerB\x08\n\x06_labelB\x0f\n\r_quantity_maxB\x12\n\x10_absolute_expiryB\r\n\x0b_recurrenceB\x12\n\x10_recurrence_baseB\x17\n\x15_recurrence_paywindowB\x13\n\x11_recurrence_limitB\r\n\x0b_single_useB\x1e\n\x1c_recurrence_start_any_period\"\x92\x01\n\rOfferResponse\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x0f\n\x07\x63reated\x18\x06 \x01(\x08\x12\x12\n\x05label\x18\x07 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\".\n\x18Openchannel_abortRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\"Y\n\x19Openchannel_abortResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x18\n\x10\x63hannel_canceled\x18\x02 \x01(\x08\x12\x0e\n\x06reason\x18\x03 \x01(\t\"\x9f\x01\n\x17Openchannel_bumpRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x13\n\x0binitialpsbt\x18\x02 \x01(\t\x12*\n\x0f\x66unding_feerate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x1b\n\x06\x61mount\x18\x04 \x01(\x0b\x32\x0b.cln.AmountB\x12\n\x10_funding_feerate\"\x86\x02\n\x18Openchannel_bumpResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12<\n\x0c\x63hannel_type\x18\x02 \x01(\x0b\x32!.cln.Openchannel_bumpChannel_typeH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x03 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_serial\x18\x05 \x01(\x04\x12&\n\x19requires_confirmed_inputs\x18\x06 \x01(\x08H\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x1c\n\x1a_requires_confirmed_inputs\"Q\n\x1cOpenchannel_bumpChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\xa0\x03\n\x17Openchannel_initRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x13\n\x0binitialpsbt\x18\x02 \x01(\t\x12-\n\x12\x63ommitment_feerate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12*\n\x0f\x66unding_feerate\x18\x04 \x01(\x0b\x32\x0c.cln.FeerateH\x01\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x05 \x01(\x08H\x02\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\tH\x03\x88\x01\x01\x12%\n\x0brequest_amt\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x08 \x01(\x0cH\x05\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\t \x03(\r\x12\x1b\n\x06\x61mount\x18\n \x01(\x0b\x32\x0b.cln.AmountB\x15\n\x13_commitment_feerateB\x12\n\x10_funding_feerateB\x0b\n\t_announceB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_lease\"\x86\x02\n\x18Openchannel_initResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\x12<\n\x0c\x63hannel_type\x18\x03 \x01(\x0b\x32!.cln.Openchannel_initChannel_typeH\x00\x88\x01\x01\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_serial\x18\x05 \x01(\x04\x12&\n\x19requires_confirmed_inputs\x18\x06 \x01(\x08H\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x1c\n\x1a_requires_confirmed_inputs\"Q\n\x1cOpenchannel_initChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"D\n\x19Openchannel_signedRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x13\n\x0bsigned_psbt\x18\x02 \x01(\t\"J\n\x1aOpenchannel_signedResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\n\n\x02tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"=\n\x19Openchannel_updateRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"\xae\x02\n\x1aOpenchannel_updateResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12>\n\x0c\x63hannel_type\x18\x02 \x01(\x0b\x32#.cln.Openchannel_updateChannel_typeH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x03 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_outnum\x18\x05 \x01(\r\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12&\n\x19requires_confirmed_inputs\x18\x07 \x01(\x08H\x02\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_toB\x1c\n\x1a_requires_confirmed_inputs\"S\n\x1eOpenchannel_updateChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"Y\n\x0bPingRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x10\n\x03len\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x16\n\tpongbytes\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x06\n\x04_lenB\x0c\n\n_pongbytes\"\x1e\n\x0cPingResponse\x12\x0e\n\x06totlen\x18\x01 \x01(\r\"\x91\x01\n\rPluginRequest\x12)\n\nsubcommand\x18\x01 \x01(\x0e\x32\x15.cln.PluginSubcommand\x12\x13\n\x06plugin\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tdirectory\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0f\n\x07options\x18\x04 \x03(\tB\t\n\x07_pluginB\x0c\n\n_directory\"}\n\x0ePluginResponse\x12&\n\x07\x63ommand\x18\x01 \x01(\x0e\x32\x15.cln.PluginSubcommand\x12#\n\x07plugins\x18\x02 \x03(\x0b\x32\x12.cln.PluginPlugins\x12\x13\n\x06result\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_result\">\n\rPluginPlugins\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x0f\n\x07\x64ynamic\x18\x03 \x01(\x08\"<\n\x14RenepaystatusRequest\x12\x16\n\tinvstring\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_invstring\"G\n\x15RenepaystatusResponse\x12.\n\tpaystatus\x18\x01 \x03(\x0b\x32\x1b.cln.RenepaystatusPaystatus\"\xe2\x03\n\x16RenepaystatusPaystatus\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x1d\n\x10payment_preimage\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\x0f\n\x07groupid\x18\x05 \x01(\r\x12\x12\n\x05parts\x18\x06 \x01(\rH\x01\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12*\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12H\n\x06status\x18\t \x01(\x0e\x32\x38.cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus\x12\x18\n\x0b\x64\x65stination\x18\n \x01(\x0cH\x03\x88\x01\x01\x12\r\n\x05notes\x18\x0b \x03(\t\"E\n\x1cRenepaystatusPaystatusStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x13\n\x11_payment_preimageB\x08\n\x06_partsB\x13\n\x11_amount_sent_msatB\x0e\n\x0c_destination\"\xda\x02\n\x0eRenepayRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12 \n\x06maxfee\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x04 \x01(\rH\x02\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x03\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x04\x88\x01\x01\x12\x12\n\x05label\x18\x07 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x64\x65v_use_shadow\x18\x08 \x01(\x08H\x06\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\t \x03(\tB\x0e\n\x0c_amount_msatB\t\n\x07_maxfeeB\x0b\n\t_maxdelayB\x0c\n\n_retry_forB\x0e\n\x0c_descriptionB\x08\n\x06_labelB\x11\n\x0f_dev_use_shadow\"\xa5\x03\n\x0fRenepayResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\r\n\x05parts\x18\x04 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12\x32\n\x06status\x18\x07 \x01(\x0e\x32\".cln.RenepayResponse.RenepayStatus\x12\x18\n\x0b\x64\x65stination\x18\x08 \x01(\x0cH\x00\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\t \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\n \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07groupid\x18\x0b \x01(\x04H\x03\x88\x01\x01\"6\n\rRenepayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x0e\n\x0c_destinationB\t\n\x07_bolt11B\t\n\x07_bolt12B\n\n\x08_groupid\"l\n\x14ReserveinputsRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\texclusive\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x07reserve\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x0c\n\n_exclusiveB\n\n\x08_reserve\"M\n\x15ReserveinputsResponse\x12\x34\n\x0creservations\x18\x01 \x03(\x0b\x32\x1e.cln.ReserveinputsReservations\"z\n\x19ReserveinputsReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\"4\n\x14SendcustommsgRequest\x12\x0f\n\x07node_id\x18\x01 \x01(\x0c\x12\x0b\n\x03msg\x18\x02 \x01(\x0c\"\'\n\x15SendcustommsgResponse\x12\x0e\n\x06status\x18\x01 \x01(\t\"\xb0\x01\n\x12SendinvoiceRequest\x12\x0e\n\x06invreq\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08quantity\x18\x05 \x01(\x04H\x02\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\n\n\x08_timeoutB\x0b\n\t_quantity\"\xcf\x04\n\x13SendinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.SendinvoiceResponse.SendinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x08 \x01(\x04H\x02\x88\x01\x01\x12\x1a\n\rupdated_index\x18\t \x01(\x04H\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\n \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\"6\n\x11SendinvoiceStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x42\x0e\n\x0c_amount_msatB\t\n\x07_bolt12B\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimage\"\xaa\x02\n\x11SetchannelRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12!\n\x07\x66\x65\x65\x62\x61se\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x13\n\x06\x66\x65\x65ppm\x18\x03 \x01(\rH\x01\x88\x01\x01\x12!\n\x07htlcmin\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12!\n\x07htlcmax\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x19\n\x0c\x65nforcedelay\x18\x06 \x01(\rH\x04\x88\x01\x01\x12\x1c\n\x0fignorefeelimits\x18\x07 \x01(\x08H\x05\x88\x01\x01\x42\n\n\x08_feebaseB\t\n\x07_feeppmB\n\n\x08_htlcminB\n\n\x08_htlcmaxB\x0f\n\r_enforcedelayB\x12\n\x10_ignorefeelimits\"?\n\x12SetchannelResponse\x12)\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x17.cln.SetchannelChannels\"\xca\x03\n\x12SetchannelChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x12\n\nchannel_id\x18\x02 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\x12*\n\x15minimum_htlc_out_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x17warning_htlcmin_too_low\x18\x07 \x01(\tH\x01\x88\x01\x01\x12*\n\x15maximum_htlc_out_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x18warning_htlcmax_too_high\x18\t \x01(\tH\x02\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\n \x01(\x08H\x03\x88\x01\x01\x42\x13\n\x11_short_channel_idB\x1a\n\x18_warning_htlcmin_too_lowB\x1b\n\x19_warning_htlcmax_too_highB\x14\n\x12_ignore_fee_limits\"<\n\x10SetconfigRequest\x12\x0e\n\x06\x63onfig\x18\x01 \x01(\t\x12\x10\n\x03val\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x06\n\x04_val\"9\n\x11SetconfigResponse\x12$\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x14.cln.SetconfigConfig\"\xa5\x02\n\x0fSetconfigConfig\x12\x0e\n\x06\x63onfig\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x07\x64ynamic\x18\x04 \x01(\x08\x12\x10\n\x03set\x18\x05 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tvalue_str\x18\x06 \x01(\tH\x02\x88\x01\x01\x12$\n\nvalue_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x16\n\tvalue_int\x18\x08 \x01(\x12H\x04\x88\x01\x01\x12\x17\n\nvalue_bool\x18\t \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_pluginB\x06\n\x04_setB\x0c\n\n_value_strB\r\n\x0b_value_msatB\x0c\n\n_value_intB\r\n\x0b_value_bool\"6\n\x15SetpsbtversionRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\r\"&\n\x16SetpsbtversionResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\"\'\n\x12SigninvoiceRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\"%\n\x13SigninvoiceResponse\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\"%\n\x12SignmessageRequest\x12\x0f\n\x07message\x18\x01 \x01(\t\"F\n\x13SignmessageResponse\x12\x11\n\tsignature\x18\x01 \x01(\x0c\x12\r\n\x05recid\x18\x02 \x01(\x0c\x12\r\n\x05zbase\x18\x03 \x01(\t\"\xc9\x01\n\x12Splice_initRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x17\n\x0frelative_amount\x18\x02 \x01(\x12\x12\x18\n\x0binitialpsbt\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0e\x66\x65\x65rate_per_kw\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\rforce_feerate\x18\x05 \x01(\x08H\x02\x88\x01\x01\x42\x0e\n\x0c_initialpsbtB\x11\n\x0f_feerate_per_kwB\x10\n\x0e_force_feerate\"#\n\x13Splice_initResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\"`\n\x14Splice_signedRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\x12\x17\n\nsign_first\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\r\n\x0b_sign_first\"_\n\x15Splice_signedResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x13\n\x06outnum\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x04 \x01(\tB\t\n\x07_outnum\"8\n\x14Splice_updateRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"z\n\x15Splice_updateResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x02 \x01(\x08\x12\x1f\n\x12signatures_secured\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\x15\n\x13_signatures_secured\"H\n\x16UnreserveinputsRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x14\n\x07reserve\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_reserve\"Q\n\x17UnreserveinputsResponse\x12\x36\n\x0creservations\x18\x01 \x03(\x0b\x32 .cln.UnreserveinputsReservations\"\x97\x01\n\x1bUnreserveinputsReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x1e\n\x11reserved_to_block\x18\x05 \x01(\rH\x00\x88\x01\x01\x42\x14\n\x12_reserved_to_block\"n\n\x14UpgradewalletRequest\x12\"\n\x07\x66\x65\x65rate\x18\x01 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x17\n\nreservedok\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\n\n\x08_feerateB\r\n\x0b_reservedok\"\x95\x01\n\x15UpgradewalletResponse\x12\x1a\n\rupgraded_outs\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x11\n\x04psbt\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0f\n\x02tx\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x11\n\x04txid\x18\x04 \x01(\x0cH\x03\x88\x01\x01\x42\x10\n\x0e_upgraded_outsB\x07\n\x05_psbtB\x05\n\x03_txB\x07\n\x05_txid\"O\n\x16WaitblockheightRequest\x12\x13\n\x0b\x62lockheight\x18\x01 \x01(\r\x12\x14\n\x07timeout\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_timeout\".\n\x17WaitblockheightResponse\x12\x13\n\x0b\x62lockheight\x18\x01 \x01(\r\"\xf9\x01\n\x0bWaitRequest\x12\x31\n\tsubsystem\x18\x01 \x01(\x0e\x32\x1e.cln.WaitRequest.WaitSubsystem\x12\x31\n\tindexname\x18\x02 \x01(\x0e\x32\x1e.cln.WaitRequest.WaitIndexname\x12\x11\n\tnextvalue\x18\x03 \x01(\x04\"9\n\rWaitSubsystem\x12\x0c\n\x08INVOICES\x10\x00\x12\x0c\n\x08\x46ORWARDS\x10\x01\x12\x0c\n\x08SENDPAYS\x10\x02\"6\n\rWaitIndexname\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x12\x0b\n\x07\x44\x45LETED\x10\x02\"\x97\x02\n\x0cWaitResponse\x12\x32\n\tsubsystem\x18\x01 \x01(\x0e\x32\x1f.cln.WaitResponse.WaitSubsystem\x12\x14\n\x07\x63reated\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07updated\x18\x03 \x01(\x04H\x01\x88\x01\x01\x12\x14\n\x07\x64\x65leted\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12&\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32\x10.cln.WaitDetailsH\x03\x88\x01\x01\"9\n\rWaitSubsystem\x12\x0c\n\x08INVOICES\x10\x00\x12\x0c\n\x08\x46ORWARDS\x10\x01\x12\x0c\n\x08SENDPAYS\x10\x02\x42\n\n\x08_createdB\n\n\x08_updatedB\n\n\x08_deletedB\n\n\x08_details\"\xfc\x04\n\x0bWaitDetails\x12\x37\n\x06status\x18\x01 \x01(\x0e\x32\".cln.WaitDetails.WaitDetailsStatusH\x00\x88\x01\x01\x12\x12\n\x05label\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x13\n\x06partid\x18\x06 \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x07groupid\x18\x07 \x01(\x04H\x06\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x08 \x01(\x0cH\x07\x88\x01\x01\x12\x17\n\nin_channel\x18\t \x01(\tH\x08\x88\x01\x01\x12\x17\n\nin_htlc_id\x18\n \x01(\x04H\t\x88\x01\x01\x12!\n\x07in_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x12\x18\n\x0bout_channel\x18\x0c \x01(\tH\x0b\x88\x01\x01\"\x89\x01\n\x11WaitDetailsStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x12\x0b\n\x07PENDING\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\x0c\n\x08\x43OMPLETE\x10\x05\x12\x0b\n\x07OFFERED\x10\x06\x12\x0b\n\x07SETTLED\x10\x07\x12\x10\n\x0cLOCAL_FAILED\x10\x08\x42\t\n\x07_statusB\x08\n\x06_labelB\x0e\n\x0c_descriptionB\t\n\x07_bolt11B\t\n\x07_bolt12B\t\n\x07_partidB\n\n\x08_groupidB\x0f\n\r_payment_hashB\r\n\x0b_in_channelB\r\n\x0b_in_htlc_idB\n\n\x08_in_msatB\x0e\n\x0c_out_channel\"4\n\x12ListconfigsRequest\x12\x13\n\x06\x63onfig\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_config\"\xa3\x1c\n\x13ListconfigsResponse\x12-\n\x07\x63onfigs\x18\x01 \x01(\x0b\x32\x17.cln.ListconfigsConfigsH\x00\x88\x01\x01\x12(\n\x07plugins\x18\x03 \x03(\x0b\x32\x17.cln.ListconfigsPlugins\x12;\n\x11important_plugins\x18\x04 \x03(\x0b\x32 .cln.ListconfigsImportantplugins\x12\x11\n\x04\x63onf\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rlightning_dir\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07network\x18\x07 \x01(\tH\x03\x88\x01\x01\x12\"\n\x15\x61llow_deprecated_apis\x18\x08 \x01(\x08H\x04\x88\x01\x01\x12\x15\n\x08rpc_file\x18\t \x01(\tH\x05\x88\x01\x01\x12\x16\n\x0e\x64isable_plugin\x18\n \x03(\t\x12\x1b\n\x0e\x62ookkeeper_dir\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rbookkeeper_db\x18\x0c \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x10\x61lways_use_proxy\x18\r \x01(\x08H\x08\x88\x01\x01\x12\x13\n\x06\x64\x61\x65mon\x18\x0e \x01(\x08H\t\x88\x01\x01\x12\x13\n\x06wallet\x18\x0f \x01(\tH\n\x88\x01\x01\x12\x1b\n\x0elarge_channels\x18\x10 \x01(\x08H\x0b\x88\x01\x01\x12#\n\x16\x65xperimental_dual_fund\x18\x11 \x01(\x08H\x0c\x88\x01\x01\x12\"\n\x15\x65xperimental_splicing\x18\x12 \x01(\x08H\r\x88\x01\x01\x12(\n\x1b\x65xperimental_onion_messages\x18\x13 \x01(\x08H\x0e\x88\x01\x01\x12 \n\x13\x65xperimental_offers\x18\x14 \x01(\x08H\x0f\x88\x01\x01\x12\x30\n#experimental_shutdown_wrong_funding\x18\x15 \x01(\x08H\x10\x88\x01\x01\x12&\n\x19\x65xperimental_peer_storage\x18\x16 \x01(\x08H\x11\x88\x01\x01\x12!\n\x14\x65xperimental_quiesce\x18\x17 \x01(\x08H\x12\x88\x01\x01\x12*\n\x1d\x65xperimental_upgrade_protocol\x18\x18 \x01(\x08H\x13\x88\x01\x01\x12&\n\x19invoices_onchain_fallback\x18\x19 \x01(\x08H\x14\x88\x01\x01\x12\x1d\n\x10\x64\x61tabase_upgrade\x18\x1a \x01(\x08H\x15\x88\x01\x01\x12\x10\n\x03rgb\x18\x1b \x01(\x0cH\x16\x88\x01\x01\x12\x12\n\x05\x61lias\x18\x1c \x01(\tH\x17\x88\x01\x01\x12\x15\n\x08pid_file\x18\x1d \x01(\tH\x18\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\x1e \x01(\x08H\x19\x88\x01\x01\x12\x1d\n\x10watchtime_blocks\x18\x1f \x01(\rH\x1a\x88\x01\x01\x12 \n\x13max_locktime_blocks\x18  \x01(\rH\x1b\x88\x01\x01\x12\x1d\n\x10\x66unding_confirms\x18! \x01(\rH\x1c\x88\x01\x01\x12\x17\n\ncltv_delta\x18\" \x01(\rH\x1d\x88\x01\x01\x12\x17\n\ncltv_final\x18# \x01(\rH\x1e\x88\x01\x01\x12\x18\n\x0b\x63ommit_time\x18$ \x01(\rH\x1f\x88\x01\x01\x12\x15\n\x08\x66\x65\x65_base\x18% \x01(\rH \x88\x01\x01\x12\x13\n\x06rescan\x18& \x01(\x12H!\x88\x01\x01\x12\x1c\n\x0f\x66\x65\x65_per_satoshi\x18\' \x01(\rH\"\x88\x01\x01\x12!\n\x14max_concurrent_htlcs\x18( \x01(\rH#\x88\x01\x01\x12+\n\x11htlc_minimum_msat\x18) \x01(\x0b\x32\x0b.cln.AmountH$\x88\x01\x01\x12+\n\x11htlc_maximum_msat\x18* \x01(\x0b\x32\x0b.cln.AmountH%\x88\x01\x01\x12\x35\n\x1bmax_dust_htlc_exposure_msat\x18+ \x01(\x0b\x32\x0b.cln.AmountH&\x88\x01\x01\x12\x1d\n\x10min_capacity_sat\x18, \x01(\x04H\'\x88\x01\x01\x12\x11\n\x04\x61\x64\x64r\x18- \x01(\tH(\x88\x01\x01\x12\x1a\n\rannounce_addr\x18. \x01(\tH)\x88\x01\x01\x12\x16\n\tbind_addr\x18/ \x01(\tH*\x88\x01\x01\x12\x14\n\x07offline\x18\x30 \x01(\x08H+\x88\x01\x01\x12\x17\n\nautolisten\x18\x31 \x01(\x08H,\x88\x01\x01\x12\x12\n\x05proxy\x18\x32 \x01(\tH-\x88\x01\x01\x12\x18\n\x0b\x64isable_dns\x18\x33 \x01(\x08H.\x88\x01\x01\x12%\n\x18\x61nnounce_addr_discovered\x18\x34 \x01(\tH/\x88\x01\x01\x12*\n\x1d\x61nnounce_addr_discovered_port\x18\x35 \x01(\x12H0\x88\x01\x01\x12\x1a\n\rencrypted_hsm\x18\x36 \x01(\x08H1\x88\x01\x01\x12\x1a\n\rrpc_file_mode\x18\x37 \x01(\tH2\x88\x01\x01\x12\x16\n\tlog_level\x18\x38 \x01(\tH3\x88\x01\x01\x12\x17\n\nlog_prefix\x18\x39 \x01(\tH4\x88\x01\x01\x12\x15\n\x08log_file\x18: \x01(\tH5\x88\x01\x01\x12\x1b\n\x0elog_timestamps\x18; \x01(\x08H6\x88\x01\x01\x12\x1b\n\x0e\x66orce_feerates\x18< \x01(\tH7\x88\x01\x01\x12\x16\n\tsubdaemon\x18= \x01(\tH8\x88\x01\x01\x12#\n\x16\x66\x65tchinvoice_noconnect\x18> \x01(\x08H9\x88\x01\x01\x12\"\n\x15\x61\x63\x63\x65pt_htlc_tlv_types\x18? \x01(\tH:\x88\x01\x01\x12!\n\x14tor_service_password\x18@ \x01(\tH;\x88\x01\x01\x12!\n\x14\x64\x65v_allowdustreserve\x18\x41 \x01(\x08H<\x88\x01\x01\x12\x1e\n\x11\x61nnounce_addr_dns\x18\x42 \x01(\x08H=\x88\x01\x01\x12%\n\x18require_confirmed_inputs\x18\x43 \x01(\x08H>\x88\x01\x01\x12\x16\n\tdeveloper\x18\x44 \x01(\x08H?\x88\x01\x01\x12\x17\n\ncommit_fee\x18\x45 \x01(\x04H@\x88\x01\x01\x12,\n\x12min_emergency_msat\x18\x46 \x01(\x0b\x32\x0b.cln.AmountHA\x88\x01\x01\x12\"\n\x15\x63ommit_feerate_offset\x18G \x01(\rHB\x88\x01\x01\x12%\n\x18\x61utoconnect_seeker_peers\x18H \x01(\rHC\x88\x01\x01\x42\n\n\x08_configsB\x07\n\x05_confB\x10\n\x0e_lightning_dirB\n\n\x08_networkB\x18\n\x16_allow_deprecated_apisB\x0b\n\t_rpc_fileB\x11\n\x0f_bookkeeper_dirB\x10\n\x0e_bookkeeper_dbB\x13\n\x11_always_use_proxyB\t\n\x07_daemonB\t\n\x07_walletB\x11\n\x0f_large_channelsB\x19\n\x17_experimental_dual_fundB\x18\n\x16_experimental_splicingB\x1e\n\x1c_experimental_onion_messagesB\x16\n\x14_experimental_offersB&\n$_experimental_shutdown_wrong_fundingB\x1c\n\x1a_experimental_peer_storageB\x17\n\x15_experimental_quiesceB \n\x1e_experimental_upgrade_protocolB\x1c\n\x1a_invoices_onchain_fallbackB\x13\n\x11_database_upgradeB\x06\n\x04_rgbB\x08\n\x06_aliasB\x0b\n\t_pid_fileB\x14\n\x12_ignore_fee_limitsB\x13\n\x11_watchtime_blocksB\x16\n\x14_max_locktime_blocksB\x13\n\x11_funding_confirmsB\r\n\x0b_cltv_deltaB\r\n\x0b_cltv_finalB\x0e\n\x0c_commit_timeB\x0b\n\t_fee_baseB\t\n\x07_rescanB\x12\n\x10_fee_per_satoshiB\x17\n\x15_max_concurrent_htlcsB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x1e\n\x1c_max_dust_htlc_exposure_msatB\x13\n\x11_min_capacity_satB\x07\n\x05_addrB\x10\n\x0e_announce_addrB\x0c\n\n_bind_addrB\n\n\x08_offlineB\r\n\x0b_autolistenB\x08\n\x06_proxyB\x0e\n\x0c_disable_dnsB\x1b\n\x19_announce_addr_discoveredB \n\x1e_announce_addr_discovered_portB\x10\n\x0e_encrypted_hsmB\x10\n\x0e_rpc_file_modeB\x0c\n\n_log_levelB\r\n\x0b_log_prefixB\x0b\n\t_log_fileB\x11\n\x0f_log_timestampsB\x11\n\x0f_force_feeratesB\x0c\n\n_subdaemonB\x19\n\x17_fetchinvoice_noconnectB\x18\n\x16_accept_htlc_tlv_typesB\x17\n\x15_tor_service_passwordB\x17\n\x15_dev_allowdustreserveB\x14\n\x12_announce_addr_dnsB\x1b\n\x19_require_confirmed_inputsB\x0c\n\n_developerB\r\n\x0b_commit_feeB\x15\n\x13_min_emergency_msatB\x18\n\x16_commit_feerate_offsetB\x1b\n\x19_autoconnect_seeker_peers\"\xd2/\n\x12ListconfigsConfigs\x12.\n\x04\x63onf\x18\x01 \x01(\x0b\x32\x1b.cln.ListconfigsConfigsConfH\x00\x88\x01\x01\x12\x38\n\tdeveloper\x18\x02 \x01(\x0b\x32 .cln.ListconfigsConfigsDeveloperH\x01\x88\x01\x01\x12?\n\rclear_plugins\x18\x03 \x01(\x0b\x32#.cln.ListconfigsConfigsClearpluginsH\x02\x88\x01\x01\x12;\n\x0b\x64isable_mpp\x18\x04 \x01(\x0b\x32!.cln.ListconfigsConfigsDisablemppH\x03\x88\x01\x01\x12\x34\n\x07mainnet\x18\x05 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsMainnetH\x04\x88\x01\x01\x12\x34\n\x07regtest\x18\x06 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsRegtestH\x05\x88\x01\x01\x12\x32\n\x06signet\x18\x07 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsSignetH\x06\x88\x01\x01\x12\x34\n\x07testnet\x18\x08 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsTestnetH\x07\x88\x01\x01\x12\x45\n\x10important_plugin\x18\t \x01(\x0b\x32&.cln.ListconfigsConfigsImportantpluginH\x08\x88\x01\x01\x12\x32\n\x06plugin\x18\n \x01(\x0b\x32\x1d.cln.ListconfigsConfigsPluginH\t\x88\x01\x01\x12\x39\n\nplugin_dir\x18\x0b \x01(\x0b\x32 .cln.ListconfigsConfigsPlugindirH\n\x88\x01\x01\x12?\n\rlightning_dir\x18\x0c \x01(\x0b\x32#.cln.ListconfigsConfigsLightningdirH\x0b\x88\x01\x01\x12\x34\n\x07network\x18\r \x01(\x0b\x32\x1e.cln.ListconfigsConfigsNetworkH\x0c\x88\x01\x01\x12N\n\x15\x61llow_deprecated_apis\x18\x0e \x01(\x0b\x32*.cln.ListconfigsConfigsAllowdeprecatedapisH\r\x88\x01\x01\x12\x35\n\x08rpc_file\x18\x0f \x01(\x0b\x32\x1e.cln.ListconfigsConfigsRpcfileH\x0e\x88\x01\x01\x12\x41\n\x0e\x64isable_plugin\x18\x10 \x01(\x0b\x32$.cln.ListconfigsConfigsDisablepluginH\x0f\x88\x01\x01\x12\x44\n\x10\x61lways_use_proxy\x18\x11 \x01(\x0b\x32%.cln.ListconfigsConfigsAlwaysuseproxyH\x10\x88\x01\x01\x12\x32\n\x06\x64\x61\x65mon\x18\x12 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsDaemonH\x11\x88\x01\x01\x12\x32\n\x06wallet\x18\x13 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsWalletH\x12\x88\x01\x01\x12\x41\n\x0elarge_channels\x18\x14 \x01(\x0b\x32$.cln.ListconfigsConfigsLargechannelsH\x13\x88\x01\x01\x12P\n\x16\x65xperimental_dual_fund\x18\x15 \x01(\x0b\x32+.cln.ListconfigsConfigsExperimentaldualfundH\x14\x88\x01\x01\x12O\n\x15\x65xperimental_splicing\x18\x16 \x01(\x0b\x32+.cln.ListconfigsConfigsExperimentalsplicingH\x15\x88\x01\x01\x12Z\n\x1b\x65xperimental_onion_messages\x18\x17 \x01(\x0b\x32\x30.cln.ListconfigsConfigsExperimentalonionmessagesH\x16\x88\x01\x01\x12K\n\x13\x65xperimental_offers\x18\x18 \x01(\x0b\x32).cln.ListconfigsConfigsExperimentaloffersH\x17\x88\x01\x01\x12i\n#experimental_shutdown_wrong_funding\x18\x19 \x01(\x0b\x32\x37.cln.ListconfigsConfigsExperimentalshutdownwrongfundingH\x18\x88\x01\x01\x12V\n\x19\x65xperimental_peer_storage\x18\x1a \x01(\x0b\x32..cln.ListconfigsConfigsExperimentalpeerstorageH\x19\x88\x01\x01\x12M\n\x14\x65xperimental_anchors\x18\x1b \x01(\x0b\x32*.cln.ListconfigsConfigsExperimentalanchorsH\x1a\x88\x01\x01\x12\x45\n\x10\x64\x61tabase_upgrade\x18\x1c \x01(\x0b\x32&.cln.ListconfigsConfigsDatabaseupgradeH\x1b\x88\x01\x01\x12,\n\x03rgb\x18\x1d \x01(\x0b\x32\x1a.cln.ListconfigsConfigsRgbH\x1c\x88\x01\x01\x12\x30\n\x05\x61lias\x18\x1e \x01(\x0b\x32\x1c.cln.ListconfigsConfigsAliasH\x1d\x88\x01\x01\x12\x35\n\x08pid_file\x18\x1f \x01(\x0b\x32\x1e.cln.ListconfigsConfigsPidfileH\x1e\x88\x01\x01\x12\x46\n\x11ignore_fee_limits\x18  \x01(\x0b\x32&.cln.ListconfigsConfigsIgnorefeelimitsH\x1f\x88\x01\x01\x12\x45\n\x10watchtime_blocks\x18! \x01(\x0b\x32&.cln.ListconfigsConfigsWatchtimeblocksH \x88\x01\x01\x12J\n\x13max_locktime_blocks\x18\" \x01(\x0b\x32(.cln.ListconfigsConfigsMaxlocktimeblocksH!\x88\x01\x01\x12\x45\n\x10\x66unding_confirms\x18# \x01(\x0b\x32&.cln.ListconfigsConfigsFundingconfirmsH\"\x88\x01\x01\x12\x39\n\ncltv_delta\x18$ \x01(\x0b\x32 .cln.ListconfigsConfigsCltvdeltaH#\x88\x01\x01\x12\x39\n\ncltv_final\x18% \x01(\x0b\x32 .cln.ListconfigsConfigsCltvfinalH$\x88\x01\x01\x12;\n\x0b\x63ommit_time\x18& \x01(\x0b\x32!.cln.ListconfigsConfigsCommittimeH%\x88\x01\x01\x12\x35\n\x08\x66\x65\x65_base\x18\' \x01(\x0b\x32\x1e.cln.ListconfigsConfigsFeebaseH&\x88\x01\x01\x12\x32\n\x06rescan\x18( \x01(\x0b\x32\x1d.cln.ListconfigsConfigsRescanH\'\x88\x01\x01\x12\x42\n\x0f\x66\x65\x65_per_satoshi\x18) \x01(\x0b\x32$.cln.ListconfigsConfigsFeepersatoshiH(\x88\x01\x01\x12L\n\x14max_concurrent_htlcs\x18* \x01(\x0b\x32).cln.ListconfigsConfigsMaxconcurrenthtlcsH)\x88\x01\x01\x12\x46\n\x11htlc_minimum_msat\x18+ \x01(\x0b\x32&.cln.ListconfigsConfigsHtlcminimummsatH*\x88\x01\x01\x12\x46\n\x11htlc_maximum_msat\x18, \x01(\x0b\x32&.cln.ListconfigsConfigsHtlcmaximummsatH+\x88\x01\x01\x12X\n\x1bmax_dust_htlc_exposure_msat\x18- \x01(\x0b\x32..cln.ListconfigsConfigsMaxdusthtlcexposuremsatH,\x88\x01\x01\x12\x44\n\x10min_capacity_sat\x18. \x01(\x0b\x32%.cln.ListconfigsConfigsMincapacitysatH-\x88\x01\x01\x12.\n\x04\x61\x64\x64r\x18/ \x01(\x0b\x32\x1b.cln.ListconfigsConfigsAddrH.\x88\x01\x01\x12?\n\rannounce_addr\x18\x30 \x01(\x0b\x32#.cln.ListconfigsConfigsAnnounceaddrH/\x88\x01\x01\x12\x37\n\tbind_addr\x18\x31 \x01(\x0b\x32\x1f.cln.ListconfigsConfigsBindaddrH0\x88\x01\x01\x12\x34\n\x07offline\x18\x32 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsOfflineH1\x88\x01\x01\x12:\n\nautolisten\x18\x33 \x01(\x0b\x32!.cln.ListconfigsConfigsAutolistenH2\x88\x01\x01\x12\x30\n\x05proxy\x18\x34 \x01(\x0b\x32\x1c.cln.ListconfigsConfigsProxyH3\x88\x01\x01\x12;\n\x0b\x64isable_dns\x18\x35 \x01(\x0b\x32!.cln.ListconfigsConfigsDisablednsH4\x88\x01\x01\x12T\n\x18\x61nnounce_addr_discovered\x18\x36 \x01(\x0b\x32-.cln.ListconfigsConfigsAnnounceaddrdiscoveredH5\x88\x01\x01\x12]\n\x1d\x61nnounce_addr_discovered_port\x18\x37 \x01(\x0b\x32\x31.cln.ListconfigsConfigsAnnounceaddrdiscoveredportH6\x88\x01\x01\x12?\n\rencrypted_hsm\x18\x38 \x01(\x0b\x32#.cln.ListconfigsConfigsEncryptedhsmH7\x88\x01\x01\x12>\n\rrpc_file_mode\x18\x39 \x01(\x0b\x32\".cln.ListconfigsConfigsRpcfilemodeH8\x88\x01\x01\x12\x37\n\tlog_level\x18: \x01(\x0b\x32\x1f.cln.ListconfigsConfigsLoglevelH9\x88\x01\x01\x12\x39\n\nlog_prefix\x18; \x01(\x0b\x32 .cln.ListconfigsConfigsLogprefixH:\x88\x01\x01\x12\x35\n\x08log_file\x18< \x01(\x0b\x32\x1e.cln.ListconfigsConfigsLogfileH;\x88\x01\x01\x12\x41\n\x0elog_timestamps\x18= \x01(\x0b\x32$.cln.ListconfigsConfigsLogtimestampsH<\x88\x01\x01\x12\x41\n\x0e\x66orce_feerates\x18> \x01(\x0b\x32$.cln.ListconfigsConfigsForcefeeratesH=\x88\x01\x01\x12\x38\n\tsubdaemon\x18? \x01(\x0b\x32 .cln.ListconfigsConfigsSubdaemonH>\x88\x01\x01\x12Q\n\x16\x66\x65tchinvoice_noconnect\x18@ \x01(\x0b\x32,.cln.ListconfigsConfigsFetchinvoicenoconnectH?\x88\x01\x01\x12M\n\x15\x61\x63\x63\x65pt_htlc_tlv_types\x18\x41 \x01(\x0b\x32).cln.ListconfigsConfigsAccepthtlctlvtypesH@\x88\x01\x01\x12L\n\x14tor_service_password\x18\x42 \x01(\x0b\x32).cln.ListconfigsConfigsTorservicepasswordHA\x88\x01\x01\x12\x46\n\x11\x61nnounce_addr_dns\x18\x43 \x01(\x0b\x32&.cln.ListconfigsConfigsAnnounceaddrdnsHB\x88\x01\x01\x12T\n\x18require_confirmed_inputs\x18\x44 \x01(\x0b\x32-.cln.ListconfigsConfigsRequireconfirmedinputsHC\x88\x01\x01\x12\x39\n\ncommit_fee\x18\x45 \x01(\x0b\x32 .cln.ListconfigsConfigsCommitfeeHD\x88\x01\x01\x12N\n\x15\x63ommit_feerate_offset\x18\x46 \x01(\x0b\x32*.cln.ListconfigsConfigsCommitfeerateoffsetHE\x88\x01\x01\x12T\n\x18\x61utoconnect_seeker_peers\x18G \x01(\x0b\x32-.cln.ListconfigsConfigsAutoconnectseekerpeersHF\x88\x01\x01\x42\x07\n\x05_confB\x0c\n\n_developerB\x10\n\x0e_clear_pluginsB\x0e\n\x0c_disable_mppB\n\n\x08_mainnetB\n\n\x08_regtestB\t\n\x07_signetB\n\n\x08_testnetB\x13\n\x11_important_pluginB\t\n\x07_pluginB\r\n\x0b_plugin_dirB\x10\n\x0e_lightning_dirB\n\n\x08_networkB\x18\n\x16_allow_deprecated_apisB\x0b\n\t_rpc_fileB\x11\n\x0f_disable_pluginB\x13\n\x11_always_use_proxyB\t\n\x07_daemonB\t\n\x07_walletB\x11\n\x0f_large_channelsB\x19\n\x17_experimental_dual_fundB\x18\n\x16_experimental_splicingB\x1e\n\x1c_experimental_onion_messagesB\x16\n\x14_experimental_offersB&\n$_experimental_shutdown_wrong_fundingB\x1c\n\x1a_experimental_peer_storageB\x17\n\x15_experimental_anchorsB\x13\n\x11_database_upgradeB\x06\n\x04_rgbB\x08\n\x06_aliasB\x0b\n\t_pid_fileB\x14\n\x12_ignore_fee_limitsB\x13\n\x11_watchtime_blocksB\x16\n\x14_max_locktime_blocksB\x13\n\x11_funding_confirmsB\r\n\x0b_cltv_deltaB\r\n\x0b_cltv_finalB\x0e\n\x0c_commit_timeB\x0b\n\t_fee_baseB\t\n\x07_rescanB\x12\n\x10_fee_per_satoshiB\x17\n\x15_max_concurrent_htlcsB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x1e\n\x1c_max_dust_htlc_exposure_msatB\x13\n\x11_min_capacity_satB\x07\n\x05_addrB\x10\n\x0e_announce_addrB\x0c\n\n_bind_addrB\n\n\x08_offlineB\r\n\x0b_autolistenB\x08\n\x06_proxyB\x0e\n\x0c_disable_dnsB\x1b\n\x19_announce_addr_discoveredB \n\x1e_announce_addr_discovered_portB\x10\n\x0e_encrypted_hsmB\x10\n\x0e_rpc_file_modeB\x0c\n\n_log_levelB\r\n\x0b_log_prefixB\x0b\n\t_log_fileB\x11\n\x0f_log_timestampsB\x11\n\x0f_force_feeratesB\x0c\n\n_subdaemonB\x19\n\x17_fetchinvoice_noconnectB\x18\n\x16_accept_htlc_tlv_typesB\x17\n\x15_tor_service_passwordB\x14\n\x12_announce_addr_dnsB\x1b\n\x19_require_confirmed_inputsB\r\n\x0b_commit_feeB\x18\n\x16_commit_feerate_offsetB\x1b\n\x19_autoconnect_seeker_peers\"\xa2\x01\n\x16ListconfigsConfigsConf\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12H\n\x06source\x18\x02 \x01(\x0e\x32\x38.cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource\"+\n\x1cListconfigsConfigsConfSource\x12\x0b\n\x07\x43MDLINE\x10\x00\":\n\x1bListconfigsConfigsDeveloper\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x1eListconfigsConfigsClearplugins\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"[\n\x1cListconfigsConfigsDisablempp\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_plugin\"8\n\x19ListconfigsConfigsMainnet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"8\n\x19ListconfigsConfigsRegtest\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"7\n\x18ListconfigsConfigsSignet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"8\n\x19ListconfigsConfigsTestnet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n!ListconfigsConfigsImportantplugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"?\n\x18ListconfigsConfigsPlugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"B\n\x1bListconfigsConfigsPlugindir\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"C\n\x1eListconfigsConfigsLightningdir\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsNetwork\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"K\n%ListconfigsConfigsAllowdeprecatedapis\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsRpcfile\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n\x1fListconfigsConfigsDisableplugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"F\n ListconfigsConfigsAlwaysuseproxy\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"7\n\x18ListconfigsConfigsDaemon\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x18ListconfigsConfigsWallet\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x1fListconfigsConfigsLargechannels\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"E\n&ListconfigsConfigsExperimentaldualfund\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"E\n&ListconfigsConfigsExperimentalsplicing\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"J\n+ListconfigsConfigsExperimentalonionmessages\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"C\n$ListconfigsConfigsExperimentaloffers\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"Q\n2ListconfigsConfigsExperimentalshutdownwrongfunding\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n)ListconfigsConfigsExperimentalpeerstorage\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n%ListconfigsConfigsExperimentalanchors\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsDatabaseupgrade\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\":\n\x15ListconfigsConfigsRgb\x12\x11\n\tvalue_str\x18\x01 \x01(\x0c\x12\x0e\n\x06source\x18\x02 \x01(\t\"<\n\x17ListconfigsConfigsAlias\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsPidfile\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsIgnorefeelimits\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n!ListconfigsConfigsWatchtimeblocks\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n#ListconfigsConfigsMaxlocktimeblocks\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n!ListconfigsConfigsFundingconfirms\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCltvdelta\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCltvfinal\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"A\n\x1cListconfigsConfigsCommittime\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsFeebase\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x18ListconfigsConfigsRescan\x12\x11\n\tvalue_int\x18\x01 \x01(\x12\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n\x1fListconfigsConfigsFeepersatoshi\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"I\n$ListconfigsConfigsMaxconcurrenthtlcs\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"T\n!ListconfigsConfigsHtlcminimummsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"T\n!ListconfigsConfigsHtlcmaximummsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"\\\n)ListconfigsConfigsMaxdusthtlcexposuremsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"g\n ListconfigsConfigsMincapacitysat\x12\x11\n\tvalue_int\x18\x01 \x01(\x04\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x14\n\x07\x64ynamic\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\n\n\x08_dynamic\"=\n\x16ListconfigsConfigsAddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"E\n\x1eListconfigsConfigsAnnounceaddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"A\n\x1aListconfigsConfigsBindaddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"8\n\x19ListconfigsConfigsOffline\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1cListconfigsConfigsAutolisten\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"<\n\x17ListconfigsConfigsProxy\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\";\n\x1cListconfigsConfigsDisabledns\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"\x82\x02\n(ListconfigsConfigsAnnounceaddrdiscovered\x12r\n\tvalue_str\x18\x01 \x01(\x0e\x32_.cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str\x12\x0e\n\x06source\x18\x02 \x01(\t\"R\n1ListconfigsConfigsAnnounceaddrdiscoveredValue_str\x12\x08\n\x04TRUE\x10\x00\x12\t\n\x05\x46\x41LSE\x10\x01\x12\x08\n\x04\x41UTO\x10\x02\"Q\n,ListconfigsConfigsAnnounceaddrdiscoveredport\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x1eListconfigsConfigsEncryptedhsm\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1dListconfigsConfigsRpcfilemode\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"?\n\x1aListconfigsConfigsLoglevel\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsLogprefix\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x19ListconfigsConfigsLogfile\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"E\n\x1fListconfigsConfigsLogtimestamps\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n\x1fListconfigsConfigsForcefeerates\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1bListconfigsConfigsSubdaemon\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"f\n\'ListconfigsConfigsFetchinvoicenoconnect\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_plugin\"I\n$ListconfigsConfigsAccepthtlctlvtypes\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"I\n$ListconfigsConfigsTorservicepassword\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsAnnounceaddrdns\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"N\n(ListconfigsConfigsRequireconfirmedinputs\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCommitfee\x12\x11\n\tvalue_int\x18\x01 \x01(\x04\x12\x0e\n\x06source\x18\x02 \x01(\t\"J\n%ListconfigsConfigsCommitfeerateoffset\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"M\n(ListconfigsConfigsAutoconnectseekerpeers\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"r\n\x12ListconfigsPlugins\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x34\n\x07options\x18\x03 \x01(\x0b\x32\x1e.cln.ListconfigsPluginsOptionsH\x00\x88\x01\x01\x42\n\n\x08_options\"\x1b\n\x19ListconfigsPluginsOptions\"\x84\x01\n\x1bListconfigsImportantplugins\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12=\n\x07options\x18\x03 \x01(\x0b\x32\'.cln.ListconfigsImportantpluginsOptionsH\x00\x88\x01\x01\x42\n\n\x08_options\"$\n\"ListconfigsImportantpluginsOptions\"\r\n\x0bStopRequest\"q\n\x0cStopResponse\x12\x31\n\x06result\x18\x01 \x01(\x0e\x32\x1c.cln.StopResponse.StopResultH\x00\x88\x01\x01\"#\n\nStopResult\x12\x15\n\x11SHUTDOWN_COMPLETE\x10\x00\x42\t\n\x07_result\"/\n\x0bHelpRequest\x12\x14\n\x07\x63ommand\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_command\"\x95\x01\n\x0cHelpResponse\x12\x1b\n\x04help\x18\x01 \x03(\x0b\x32\r.cln.HelpHelp\x12:\n\x0b\x66ormat_hint\x18\x02 \x01(\x0e\x32 .cln.HelpResponse.HelpFormathintH\x00\x88\x01\x01\"\x1c\n\x0eHelpFormathint\x12\n\n\x06SIMPLE\x10\x00\x42\x0e\n\x0c_format_hint\"\x1b\n\x08HelpHelp\x12\x0f\n\x07\x63ommand\x18\x01 \x01(\t\"g\n\x18PreapprovekeysendRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\x0c\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\"\x1b\n\x19PreapprovekeysendResponse\"*\n\x18PreapproveinvoiceRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\"\x1b\n\x19PreapproveinvoiceResponse\"\x15\n\x13StaticbackupRequest\"#\n\x14StaticbackupResponse\x12\x0b\n\x03scb\x18\x01 \x03(\x0c\"d\n\x16\x42kprchannelsapyRequest\x12\x17\n\nstart_time\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\r\n\x0b_start_timeB\x0b\n\t_end_time\"Q\n\x17\x42kprchannelsapyResponse\x12\x36\n\x0c\x63hannels_apy\x18\x01 \x03(\x0b\x32 .cln.BkprchannelsapyChannels_apy\"\xfa\x06\n\x1b\x42kprchannelsapyChannels_apy\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12$\n\x0frouted_out_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0erouted_in_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12(\n\x13lease_fee_paid_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12*\n\x15lease_fee_earned_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x0fpushed_out_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0epushed_in_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x16our_start_balance_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12/\n\x1a\x63hannel_start_balance_msat\x18\t \x01(\x0b\x32\x0b.cln.Amount\x12\"\n\rfees_out_msat\x18\n \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x0c\x66\x65\x65s_in_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x17\n\x0futilization_out\x18\x0c \x01(\t\x12$\n\x17utilization_out_initial\x18\r \x01(\tH\x01\x88\x01\x01\x12\x16\n\x0eutilization_in\x18\x0e \x01(\t\x12#\n\x16utilization_in_initial\x18\x0f \x01(\tH\x02\x88\x01\x01\x12\x0f\n\x07\x61py_out\x18\x10 \x01(\t\x12\x1c\n\x0f\x61py_out_initial\x18\x11 \x01(\tH\x03\x88\x01\x01\x12\x0e\n\x06\x61py_in\x18\x12 \x01(\t\x12\x1b\n\x0e\x61py_in_initial\x18\x13 \x01(\tH\x04\x88\x01\x01\x12\x11\n\tapy_total\x18\x14 \x01(\t\x12\x1e\n\x11\x61py_total_initial\x18\x15 \x01(\tH\x05\x88\x01\x01\x12\x16\n\tapy_lease\x18\x16 \x01(\tH\x06\x88\x01\x01\x42\x0f\n\r_fees_in_msatB\x1a\n\x18_utilization_out_initialB\x19\n\x17_utilization_in_initialB\x12\n\x10_apy_out_initialB\x11\n\x0f_apy_in_initialB\x14\n\x12_apy_total_initialB\x0c\n\n_apy_lease\"\xd2\x01\n\x18\x42kprdumpincomecsvRequest\x12\x12\n\ncsv_format\x18\x01 \x01(\t\x12\x15\n\x08\x63sv_file\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10\x63onsolidate_fees\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12\x17\n\nstart_time\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x05 \x01(\x04H\x03\x88\x01\x01\x42\x0b\n\t_csv_fileB\x13\n\x11_consolidate_feesB\r\n\x0b_start_timeB\x0b\n\t_end_time\"\xd6\x01\n\x19\x42kprdumpincomecsvResponse\x12\x10\n\x08\x63sv_file\x18\x01 \x01(\t\x12N\n\ncsv_format\x18\x02 \x01(\x0e\x32:.cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format\"W\n\x1b\x42kprdumpincomecsvCsv_format\x12\x0f\n\x0b\x43OINTRACKER\x10\x00\x12\n\n\x06KOINLY\x10\x01\x12\x0b\n\x07HARMONY\x10\x02\x12\x0e\n\nQUICKBOOKS\x10\x03\"%\n\x12\x42kprinspectRequest\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\"7\n\x13\x42kprinspectResponse\x12 \n\x03txs\x18\x01 \x03(\x0b\x32\x13.cln.BkprinspectTxs\"\x9a\x01\n\x0e\x42kprinspectTxs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x18\n\x0b\x62lockheight\x18\x02 \x01(\rH\x00\x88\x01\x01\x12#\n\x0e\x66\x65\x65s_paid_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x07outputs\x18\x04 \x03(\x0b\x32\x1a.cln.BkprinspectTxsOutputsB\x0e\n\x0c_blockheight\"\xbc\x03\n\x15\x42kprinspectTxsOutputs\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x0e\n\x06outnum\x18\x02 \x01(\r\x12&\n\x11output_value_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x04 \x01(\t\x12%\n\x0b\x63redit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12$\n\ndebit_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12 \n\x13originating_account\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x17\n\noutput_tag\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tspend_tag\x18\t \x01(\tH\x04\x88\x01\x01\x12\x1a\n\rspending_txid\x18\n \x01(\x0cH\x05\x88\x01\x01\x12\x17\n\npayment_id\x18\x0b \x01(\x0cH\x06\x88\x01\x01\x42\x0e\n\x0c_credit_msatB\r\n\x0b_debit_msatB\x16\n\x14_originating_accountB\r\n\x0b_output_tagB\x0c\n\n_spend_tagB\x10\n\x0e_spending_txidB\r\n\x0b_payment_id\"h\n\x1c\x42kprlistaccounteventsRequest\x12\x14\n\x07\x61\x63\x63ount\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\npayment_id\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_accountB\r\n\x0b_payment_id\"Q\n\x1d\x42kprlistaccounteventsResponse\x12\x30\n\x06\x65vents\x18\x01 \x03(\x0b\x32 .cln.BkprlistaccounteventsEvents\"\xa1\x05\n\x1b\x42kprlistaccounteventsEvents\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12S\n\titem_type\x18\x02 \x01(\x0e\x32@.cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType\x12\x0b\n\x03tag\x18\x03 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x06 \x01(\t\x12\x11\n\ttimestamp\x18\x07 \x01(\r\x12\x15\n\x08outpoint\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x62lockheight\x18\t \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06origin\x18\n \x01(\tH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\x0b \x01(\x0cH\x03\x88\x01\x01\x12\x11\n\x04txid\x18\x0c \x01(\x0cH\x04\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\r \x01(\tH\x05\x88\x01\x01\x12#\n\tfees_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x19\n\x0cis_rebalance\x18\x0f \x01(\x08H\x07\x88\x01\x01\x12\x14\n\x07part_id\x18\x10 \x01(\rH\x08\x88\x01\x01\"J\n\x1f\x42kprlistaccounteventsEventsType\x12\x0f\n\x0bONCHAIN_FEE\x10\x00\x12\t\n\x05\x43HAIN\x10\x01\x12\x0b\n\x07\x43HANNEL\x10\x02\x42\x0b\n\t_outpointB\x0e\n\x0c_blockheightB\t\n\x07_originB\r\n\x0b_payment_idB\x07\n\x05_txidB\x0e\n\x0c_descriptionB\x0c\n\n_fees_msatB\x0f\n\r_is_rebalanceB\n\n\x08_part_id\"\x19\n\x17\x42kprlistbalancesRequest\"K\n\x18\x42kprlistbalancesResponse\x12/\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1d.cln.BkprlistbalancesAccounts\"\xc6\x02\n\x18\x42kprlistbalancesAccounts\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x37\n\x08\x62\x61lances\x18\x02 \x03(\x0b\x32%.cln.BkprlistbalancesAccountsBalances\x12\x14\n\x07peer_id\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x16\n\twe_opened\x18\x04 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0e\x61\x63\x63ount_closed\x18\x05 \x01(\x08H\x02\x88\x01\x01\x12\x1d\n\x10\x61\x63\x63ount_resolved\x18\x06 \x01(\x08H\x03\x88\x01\x01\x12\x1e\n\x11resolved_at_block\x18\x07 \x01(\rH\x04\x88\x01\x01\x42\n\n\x08_peer_idB\x0c\n\n_we_openedB\x11\n\x0f_account_closedB\x13\n\x11_account_resolvedB\x14\n\x12_resolved_at_block\"X\n BkprlistbalancesAccountsBalances\x12!\n\x0c\x62\x61lance_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x11\n\tcoin_type\x18\x02 \x01(\t\"\x97\x01\n\x15\x42kprlistincomeRequest\x12\x1d\n\x10\x63onsolidate_fees\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x17\n\nstart_time\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x03 \x01(\rH\x02\x88\x01\x01\x42\x13\n\x11_consolidate_feesB\r\n\x0b_start_timeB\x0b\n\t_end_time\"Q\n\x16\x42kprlistincomeResponse\x12\x37\n\rincome_events\x18\x01 \x03(\x0b\x32 .cln.BkprlistincomeIncome_events\"\xb5\x02\n\x1b\x42kprlistincomeIncome_events\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x0b\n\x03tag\x18\x02 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12\x11\n\ttimestamp\x18\x06 \x01(\r\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08outpoint\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04txid\x18\t \x01(\x0cH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\n \x01(\x0cH\x03\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_outpointB\x07\n\x05_txidB\r\n\x0b_payment_id\"N\n\x14\x42lacklistruneRequest\x12\x12\n\x05start\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"G\n\x15\x42lacklistruneResponse\x12.\n\tblacklist\x18\x01 \x03(\x0b\x32\x1b.cln.BlacklistruneBlacklist\"4\n\x16\x42lacklistruneBlacklist\x12\r\n\x05start\x18\x01 \x01(\x04\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x04\"p\n\x10\x43heckruneRequest\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x13\n\x06nodeid\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06method\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06params\x18\x04 \x03(\tB\t\n\x07_nodeidB\t\n\x07_method\"\"\n\x11\x43heckruneResponse\x12\r\n\x05valid\x18\x01 \x01(\x08\"E\n\x11\x43reateruneRequest\x12\x11\n\x04rune\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0crestrictions\x18\x02 \x03(\tB\x07\n\x05_rune\"{\n\x12\x43reateruneResponse\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x11\n\tunique_id\x18\x02 \x01(\t\x12&\n\x19warning_unrestricted_rune\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x1c\n\x1a_warning_unrestricted_rune\".\n\x10ShowrunesRequest\x12\x11\n\x04rune\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_rune\"7\n\x11ShowrunesResponse\x12\"\n\x05runes\x18\x01 \x03(\x0b\x32\x13.cln.ShowrunesRunes\"\x9d\x02\n\x0eShowrunesRunes\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x11\n\tunique_id\x18\x02 \x01(\t\x12\x35\n\x0crestrictions\x18\x03 \x03(\x0b\x32\x1f.cln.ShowrunesRunesRestrictions\x12\x1f\n\x17restrictions_as_english\x18\x04 \x01(\t\x12\x13\n\x06stored\x18\x05 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x0b\x62lacklisted\x18\x06 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tlast_used\x18\x07 \x01(\x01H\x02\x88\x01\x01\x12\x15\n\x08our_rune\x18\x08 \x01(\x08H\x03\x88\x01\x01\x42\t\n\x07_storedB\x0e\n\x0c_blacklistedB\x0c\n\n_last_usedB\x0b\n\t_our_rune\"p\n\x1aShowrunesRunesRestrictions\x12\x41\n\x0c\x61lternatives\x18\x01 \x03(\x0b\x32+.cln.ShowrunesRunesRestrictionsAlternatives\x12\x0f\n\x07\x65nglish\x18\x02 \x01(\t\"n\n&ShowrunesRunesRestrictionsAlternatives\x12\x11\n\tfieldname\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x11\n\tcondition\x18\x03 \x01(\t\x12\x0f\n\x07\x65nglish\x18\x04 \x01(\t\"\x19\n\x17StreamBlockAddedRequest\"6\n\x16\x42lockAddedNotification\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\x0e\n\x06height\x18\x02 \x01(\r\" \n\x1eStreamChannelOpenFailedRequest\"3\n\x1d\x43hannelOpenFailedNotification\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\"\x1c\n\x1aStreamChannelOpenedRequest\"w\n\x19\x43hannelOpenedNotification\x12\n\n\x02id\x18\x01 \x01(\x0c\x12!\n\x0c\x66unding_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66unding_txid\x18\x03 \x01(\x0c\x12\x15\n\rchannel_ready\x18\x04 \x01(\x08\"\x16\n\x14StreamConnectRequest\"\xbe\x01\n\x17PeerConnectNotification\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x44\n\tdirection\x18\x02 \x01(\x0e\x32\x31.cln.PeerConnectNotification.PeerConnectDirection\x12(\n\x07\x61\x64\x64ress\x18\x03 \x01(\x0b\x32\x17.cln.PeerConnectAddress\"\'\n\x14PeerConnectDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\"\x8b\x02\n\x12PeerConnectAddress\x12\x41\n\titem_type\x18\x01 \x01(\x0e\x32..cln.PeerConnectAddress.PeerConnectAddressType\x12\x13\n\x06socket\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04port\x18\x04 \x01(\rH\x02\x88\x01\x01\"T\n\x16PeerConnectAddressType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\t\n\x07_socketB\n\n\x08_addressB\x07\n\x05_port\"\x18\n\x16StreamCustomMsgRequest\"9\n\x15\x43ustomMsgNotification\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\x32\xcb?\n\x04Node\x12\x36\n\x07Getinfo\x12\x13.cln.GetinfoRequest\x1a\x14.cln.GetinfoResponse\"\x00\x12<\n\tListPeers\x12\x15.cln.ListpeersRequest\x1a\x16.cln.ListpeersResponse\"\x00\x12<\n\tListFunds\x12\x15.cln.ListfundsRequest\x1a\x16.cln.ListfundsResponse\"\x00\x12\x36\n\x07SendPay\x12\x13.cln.SendpayRequest\x1a\x14.cln.SendpayResponse\"\x00\x12\x45\n\x0cListChannels\x12\x18.cln.ListchannelsRequest\x1a\x19.cln.ListchannelsResponse\"\x00\x12<\n\tAddGossip\x12\x15.cln.AddgossipRequest\x1a\x16.cln.AddgossipResponse\"\x00\x12H\n\rAddPsbtOutput\x12\x19.cln.AddpsbtoutputRequest\x1a\x1a.cln.AddpsbtoutputResponse\"\x00\x12H\n\rAutoCleanOnce\x12\x19.cln.AutocleanonceRequest\x1a\x1a.cln.AutocleanonceResponse\"\x00\x12N\n\x0f\x41utoCleanStatus\x12\x1b.cln.AutocleanstatusRequest\x1a\x1c.cln.AutocleanstatusResponse\"\x00\x12\x45\n\x0c\x43heckMessage\x12\x18.cln.CheckmessageRequest\x1a\x19.cln.CheckmessageResponse\"\x00\x12\x30\n\x05\x43lose\x12\x11.cln.CloseRequest\x1a\x12.cln.CloseResponse\"\x00\x12:\n\x0b\x43onnectPeer\x12\x13.cln.ConnectRequest\x1a\x14.cln.ConnectResponse\"\x00\x12H\n\rCreateInvoice\x12\x19.cln.CreateinvoiceRequest\x1a\x1a.cln.CreateinvoiceResponse\"\x00\x12<\n\tDatastore\x12\x15.cln.DatastoreRequest\x1a\x16.cln.DatastoreResponse\"\x00\x12K\n\x0e\x44\x61tastoreUsage\x12\x1a.cln.DatastoreusageRequest\x1a\x1b.cln.DatastoreusageResponse\"\x00\x12\x42\n\x0b\x43reateOnion\x12\x17.cln.CreateonionRequest\x1a\x18.cln.CreateonionResponse\"\x00\x12\x45\n\x0c\x44\x65lDatastore\x12\x18.cln.DeldatastoreRequest\x1a\x19.cln.DeldatastoreResponse\"\x00\x12?\n\nDelInvoice\x12\x16.cln.DelinvoiceRequest\x1a\x17.cln.DelinvoiceResponse\"\x00\x12Q\n\x10\x44\x65vForgetChannel\x12\x1c.cln.DevforgetchannelRequest\x1a\x1d.cln.DevforgetchannelResponse\"\x00\x12Q\n\x10\x45mergencyRecover\x12\x1c.cln.EmergencyrecoverRequest\x1a\x1d.cln.EmergencyrecoverResponse\"\x00\x12\x36\n\x07Recover\x12\x13.cln.RecoverRequest\x1a\x14.cln.RecoverResponse\"\x00\x12K\n\x0eRecoverChannel\x12\x1a.cln.RecoverchannelRequest\x1a\x1b.cln.RecoverchannelResponse\"\x00\x12\x36\n\x07Invoice\x12\x13.cln.InvoiceRequest\x1a\x14.cln.InvoiceResponse\"\x00\x12Q\n\x14\x43reateInvoiceRequest\x12\x1a.cln.InvoicerequestRequest\x1a\x1b.cln.InvoicerequestResponse\"\x00\x12`\n\x15\x44isableInvoiceRequest\x12!.cln.DisableinvoicerequestRequest\x1a\".cln.DisableinvoicerequestResponse\"\x00\x12Z\n\x13ListInvoiceRequests\x12\x1f.cln.ListinvoicerequestsRequest\x1a .cln.ListinvoicerequestsResponse\"\x00\x12H\n\rListDatastore\x12\x19.cln.ListdatastoreRequest\x1a\x1a.cln.ListdatastoreResponse\"\x00\x12\x45\n\x0cListInvoices\x12\x18.cln.ListinvoicesRequest\x1a\x19.cln.ListinvoicesResponse\"\x00\x12<\n\tSendOnion\x12\x15.cln.SendonionRequest\x1a\x16.cln.SendonionResponse\"\x00\x12\x45\n\x0cListSendPays\x12\x18.cln.ListsendpaysRequest\x1a\x19.cln.ListsendpaysResponse\"\x00\x12Q\n\x10ListTransactions\x12\x1c.cln.ListtransactionsRequest\x1a\x1d.cln.ListtransactionsResponse\"\x00\x12?\n\nMakeSecret\x12\x16.cln.MakesecretRequest\x1a\x17.cln.MakesecretResponse\"\x00\x12*\n\x03Pay\x12\x0f.cln.PayRequest\x1a\x10.cln.PayResponse\"\x00\x12<\n\tListNodes\x12\x15.cln.ListnodesRequest\x1a\x16.cln.ListnodesResponse\"\x00\x12K\n\x0eWaitAnyInvoice\x12\x1a.cln.WaitanyinvoiceRequest\x1a\x1b.cln.WaitanyinvoiceResponse\"\x00\x12\x42\n\x0bWaitInvoice\x12\x17.cln.WaitinvoiceRequest\x1a\x18.cln.WaitinvoiceResponse\"\x00\x12\x42\n\x0bWaitSendPay\x12\x17.cln.WaitsendpayRequest\x1a\x18.cln.WaitsendpayResponse\"\x00\x12\x36\n\x07NewAddr\x12\x13.cln.NewaddrRequest\x1a\x14.cln.NewaddrResponse\"\x00\x12\x39\n\x08Withdraw\x12\x14.cln.WithdrawRequest\x1a\x15.cln.WithdrawResponse\"\x00\x12\x36\n\x07KeySend\x12\x13.cln.KeysendRequest\x1a\x14.cln.KeysendResponse\"\x00\x12\x39\n\x08\x46undPsbt\x12\x14.cln.FundpsbtRequest\x1a\x15.cln.FundpsbtResponse\"\x00\x12\x39\n\x08SendPsbt\x12\x14.cln.SendpsbtRequest\x1a\x15.cln.SendpsbtResponse\"\x00\x12\x39\n\x08SignPsbt\x12\x14.cln.SignpsbtRequest\x1a\x15.cln.SignpsbtResponse\"\x00\x12\x39\n\x08UtxoPsbt\x12\x14.cln.UtxopsbtRequest\x1a\x15.cln.UtxopsbtResponse\"\x00\x12<\n\tTxDiscard\x12\x15.cln.TxdiscardRequest\x1a\x16.cln.TxdiscardResponse\"\x00\x12<\n\tTxPrepare\x12\x15.cln.TxprepareRequest\x1a\x16.cln.TxprepareResponse\"\x00\x12\x33\n\x06TxSend\x12\x12.cln.TxsendRequest\x1a\x13.cln.TxsendResponse\"\x00\x12Q\n\x10ListPeerChannels\x12\x1c.cln.ListpeerchannelsRequest\x1a\x1d.cln.ListpeerchannelsResponse\"\x00\x12W\n\x12ListClosedChannels\x12\x1e.cln.ListclosedchannelsRequest\x1a\x1f.cln.ListclosedchannelsResponse\"\x00\x12<\n\tDecodePay\x12\x15.cln.DecodepayRequest\x1a\x16.cln.DecodepayResponse\"\x00\x12\x33\n\x06\x44\x65\x63ode\x12\x12.cln.DecodeRequest\x1a\x13.cln.DecodeResponse\"\x00\x12\x33\n\x06\x44\x65lPay\x12\x12.cln.DelpayRequest\x1a\x13.cln.DelpayResponse\"\x00\x12?\n\nDelForward\x12\x16.cln.DelforwardRequest\x1a\x17.cln.DelforwardResponse\"\x00\x12\x45\n\x0c\x44isableOffer\x12\x18.cln.DisableofferRequest\x1a\x19.cln.DisableofferResponse\"\x00\x12?\n\nDisconnect\x12\x16.cln.DisconnectRequest\x1a\x17.cln.DisconnectResponse\"\x00\x12\x39\n\x08\x46\x65\x65rates\x12\x14.cln.FeeratesRequest\x1a\x15.cln.FeeratesResponse\"\x00\x12\x45\n\x0c\x46\x65tchInvoice\x12\x18.cln.FetchinvoiceRequest\x1a\x19.cln.FetchinvoiceResponse\"\x00\x12W\n\x12\x46undChannel_Cancel\x12\x1e.cln.Fundchannel_cancelRequest\x1a\x1f.cln.Fundchannel_cancelResponse\"\x00\x12]\n\x14\x46undChannel_Complete\x12 .cln.Fundchannel_completeRequest\x1a!.cln.Fundchannel_completeResponse\"\x00\x12\x42\n\x0b\x46undChannel\x12\x17.cln.FundchannelRequest\x1a\x18.cln.FundchannelResponse\"\x00\x12T\n\x11\x46undChannel_Start\x12\x1d.cln.Fundchannel_startRequest\x1a\x1e.cln.Fundchannel_startResponse\"\x00\x12\x33\n\x06GetLog\x12\x12.cln.GetlogRequest\x1a\x13.cln.GetlogResponse\"\x00\x12\x45\n\x0c\x46underUpdate\x12\x18.cln.FunderupdateRequest\x1a\x19.cln.FunderupdateResponse\"\x00\x12\x39\n\x08GetRoute\x12\x14.cln.GetrouteRequest\x1a\x15.cln.GetrouteResponse\"\x00\x12\x45\n\x0cListForwards\x12\x18.cln.ListforwardsRequest\x1a\x19.cln.ListforwardsResponse\"\x00\x12?\n\nListOffers\x12\x16.cln.ListoffersRequest\x1a\x17.cln.ListoffersResponse\"\x00\x12\x39\n\x08ListPays\x12\x14.cln.ListpaysRequest\x1a\x15.cln.ListpaysResponse\"\x00\x12<\n\tListHtlcs\x12\x15.cln.ListhtlcsRequest\x1a\x16.cln.ListhtlcsResponse\"\x00\x12Q\n\x10MultiFundChannel\x12\x1c.cln.MultifundchannelRequest\x1a\x1d.cln.MultifundchannelResponse\"\x00\x12H\n\rMultiWithdraw\x12\x19.cln.MultiwithdrawRequest\x1a\x1a.cln.MultiwithdrawResponse\"\x00\x12\x30\n\x05Offer\x12\x11.cln.OfferRequest\x1a\x12.cln.OfferResponse\"\x00\x12T\n\x11OpenChannel_Abort\x12\x1d.cln.Openchannel_abortRequest\x1a\x1e.cln.Openchannel_abortResponse\"\x00\x12Q\n\x10OpenChannel_Bump\x12\x1c.cln.Openchannel_bumpRequest\x1a\x1d.cln.Openchannel_bumpResponse\"\x00\x12Q\n\x10OpenChannel_Init\x12\x1c.cln.Openchannel_initRequest\x1a\x1d.cln.Openchannel_initResponse\"\x00\x12W\n\x12OpenChannel_Signed\x12\x1e.cln.Openchannel_signedRequest\x1a\x1f.cln.Openchannel_signedResponse\"\x00\x12W\n\x12OpenChannel_Update\x12\x1e.cln.Openchannel_updateRequest\x1a\x1f.cln.Openchannel_updateResponse\"\x00\x12-\n\x04Ping\x12\x10.cln.PingRequest\x1a\x11.cln.PingResponse\"\x00\x12\x33\n\x06Plugin\x12\x12.cln.PluginRequest\x1a\x13.cln.PluginResponse\"\x00\x12H\n\rRenePayStatus\x12\x19.cln.RenepaystatusRequest\x1a\x1a.cln.RenepaystatusResponse\"\x00\x12\x36\n\x07RenePay\x12\x13.cln.RenepayRequest\x1a\x14.cln.RenepayResponse\"\x00\x12H\n\rReserveInputs\x12\x19.cln.ReserveinputsRequest\x1a\x1a.cln.ReserveinputsResponse\"\x00\x12H\n\rSendCustomMsg\x12\x19.cln.SendcustommsgRequest\x1a\x1a.cln.SendcustommsgResponse\"\x00\x12\x42\n\x0bSendInvoice\x12\x17.cln.SendinvoiceRequest\x1a\x18.cln.SendinvoiceResponse\"\x00\x12?\n\nSetChannel\x12\x16.cln.SetchannelRequest\x1a\x17.cln.SetchannelResponse\"\x00\x12<\n\tSetConfig\x12\x15.cln.SetconfigRequest\x1a\x16.cln.SetconfigResponse\"\x00\x12K\n\x0eSetPsbtVersion\x12\x1a.cln.SetpsbtversionRequest\x1a\x1b.cln.SetpsbtversionResponse\"\x00\x12\x42\n\x0bSignInvoice\x12\x17.cln.SigninvoiceRequest\x1a\x18.cln.SigninvoiceResponse\"\x00\x12\x42\n\x0bSignMessage\x12\x17.cln.SignmessageRequest\x1a\x18.cln.SignmessageResponse\"\x00\x12\x42\n\x0bSplice_Init\x12\x17.cln.Splice_initRequest\x1a\x18.cln.Splice_initResponse\"\x00\x12H\n\rSplice_Signed\x12\x19.cln.Splice_signedRequest\x1a\x1a.cln.Splice_signedResponse\"\x00\x12H\n\rSplice_Update\x12\x19.cln.Splice_updateRequest\x1a\x1a.cln.Splice_updateResponse\"\x00\x12N\n\x0fUnreserveInputs\x12\x1b.cln.UnreserveinputsRequest\x1a\x1c.cln.UnreserveinputsResponse\"\x00\x12H\n\rUpgradeWallet\x12\x19.cln.UpgradewalletRequest\x1a\x1a.cln.UpgradewalletResponse\"\x00\x12N\n\x0fWaitBlockHeight\x12\x1b.cln.WaitblockheightRequest\x1a\x1c.cln.WaitblockheightResponse\"\x00\x12-\n\x04Wait\x12\x10.cln.WaitRequest\x1a\x11.cln.WaitResponse\"\x00\x12\x42\n\x0bListConfigs\x12\x17.cln.ListconfigsRequest\x1a\x18.cln.ListconfigsResponse\"\x00\x12-\n\x04Stop\x12\x10.cln.StopRequest\x1a\x11.cln.StopResponse\"\x00\x12-\n\x04Help\x12\x10.cln.HelpRequest\x1a\x11.cln.HelpResponse\"\x00\x12T\n\x11PreApproveKeysend\x12\x1d.cln.PreapprovekeysendRequest\x1a\x1e.cln.PreapprovekeysendResponse\"\x00\x12T\n\x11PreApproveInvoice\x12\x1d.cln.PreapproveinvoiceRequest\x1a\x1e.cln.PreapproveinvoiceResponse\"\x00\x12\x45\n\x0cStaticBackup\x12\x18.cln.StaticbackupRequest\x1a\x19.cln.StaticbackupResponse\"\x00\x12N\n\x0f\x42kprChannelsApy\x12\x1b.cln.BkprchannelsapyRequest\x1a\x1c.cln.BkprchannelsapyResponse\"\x00\x12T\n\x11\x42kprDumpIncomeCsv\x12\x1d.cln.BkprdumpincomecsvRequest\x1a\x1e.cln.BkprdumpincomecsvResponse\"\x00\x12\x42\n\x0b\x42kprInspect\x12\x17.cln.BkprinspectRequest\x1a\x18.cln.BkprinspectResponse\"\x00\x12`\n\x15\x42kprListAccountEvents\x12!.cln.BkprlistaccounteventsRequest\x1a\".cln.BkprlistaccounteventsResponse\"\x00\x12Q\n\x10\x42kprListBalances\x12\x1c.cln.BkprlistbalancesRequest\x1a\x1d.cln.BkprlistbalancesResponse\"\x00\x12K\n\x0e\x42kprListIncome\x12\x1a.cln.BkprlistincomeRequest\x1a\x1b.cln.BkprlistincomeResponse\"\x00\x12H\n\rBlacklistRune\x12\x19.cln.BlacklistruneRequest\x1a\x1a.cln.BlacklistruneResponse\"\x00\x12<\n\tCheckRune\x12\x15.cln.CheckruneRequest\x1a\x16.cln.CheckruneResponse\"\x00\x12?\n\nCreateRune\x12\x16.cln.CreateruneRequest\x1a\x17.cln.CreateruneResponse\"\x00\x12<\n\tShowRunes\x12\x15.cln.ShowrunesRequest\x1a\x16.cln.ShowrunesResponse\"\x00\x12T\n\x13SubscribeBlockAdded\x12\x1c.cln.StreamBlockAddedRequest\x1a\x1b.cln.BlockAddedNotification\"\x00\x30\x01\x12i\n\x1aSubscribeChannelOpenFailed\x12#.cln.StreamChannelOpenFailedRequest\x1a\".cln.ChannelOpenFailedNotification\"\x00\x30\x01\x12]\n\x16SubscribeChannelOpened\x12\x1f.cln.StreamChannelOpenedRequest\x1a\x1e.cln.ChannelOpenedNotification\"\x00\x30\x01\x12O\n\x10SubscribeConnect\x12\x19.cln.StreamConnectRequest\x1a\x1c.cln.PeerConnectNotification\"\x00\x30\x01\x12Q\n\x12SubscribeCustomMsg\x12\x1b.cln.StreamCustomMsgRequest\x1a\x1a.cln.CustomMsgNotification\"\x00\x30\x01\x62\x06proto3')
+DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\nnode.proto\x12\x03\x63ln\x1a\x10primitives.proto\"\x10\n\x0eGetinfoRequest\"\xc1\x04\n\x0fGetinfoResponse\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\x05\x61lias\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05\x63olor\x18\x03 \x01(\x0c\x12\x11\n\tnum_peers\x18\x04 \x01(\r\x12\x1c\n\x14num_pending_channels\x18\x05 \x01(\r\x12\x1b\n\x13num_active_channels\x18\x06 \x01(\r\x12\x1d\n\x15num_inactive_channels\x18\x07 \x01(\r\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x15\n\rlightning_dir\x18\t \x01(\t\x12\x33\n\x0cour_features\x18\n \x01(\x0b\x32\x18.cln.GetinfoOur_featuresH\x01\x88\x01\x01\x12\x13\n\x0b\x62lockheight\x18\x0b \x01(\r\x12\x0f\n\x07network\x18\x0c \x01(\t\x12(\n\x13\x66\x65\x65s_collected_msat\x18\r \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x07\x61\x64\x64ress\x18\x0e \x03(\x0b\x32\x13.cln.GetinfoAddress\x12$\n\x07\x62inding\x18\x0f \x03(\x0b\x32\x13.cln.GetinfoBinding\x12\"\n\x15warning_bitcoind_sync\x18\x10 \x01(\tH\x02\x88\x01\x01\x12$\n\x17warning_lightningd_sync\x18\x11 \x01(\tH\x03\x88\x01\x01\x42\x08\n\x06_aliasB\x0f\n\r_our_featuresB\x18\n\x16_warning_bitcoind_syncB\x1a\n\x18_warning_lightningd_sync\"S\n\x13GetinfoOur_features\x12\x0c\n\x04init\x18\x01 \x01(\x0c\x12\x0c\n\x04node\x18\x02 \x01(\x0c\x12\x0f\n\x07\x63hannel\x18\x03 \x01(\x0c\x12\x0f\n\x07invoice\x18\x04 \x01(\x0c\"\xc4\x01\n\x0eGetinfoAddress\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.GetinfoAddress.GetinfoAddressType\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\"G\n\x12GetinfoAddressType\x12\x07\n\x03\x44NS\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\n\n\x08_address\"\xac\x02\n\x0eGetinfoBinding\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.GetinfoBinding.GetinfoBindingType\x12\x14\n\x07\x61\x64\x64ress\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04port\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06socket\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07subtype\x18\x05 \x01(\tH\x03\x88\x01\x01\"_\n\x12GetinfoBindingType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x12\r\n\tWEBSOCKET\x10\x05\x42\n\n\x08_addressB\x07\n\x05_portB\t\n\x07_socketB\n\n\x08_subtype\"\xb5\x01\n\x10ListpeersRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x38\n\x05level\x18\x02 \x01(\x0e\x32$.cln.ListpeersRequest.ListpeersLevelH\x01\x88\x01\x01\"E\n\x0eListpeersLevel\x12\x06\n\x02IO\x10\x00\x12\t\n\x05\x44\x45\x42UG\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\x0b\n\x07UNUSUAL\x10\x03\x12\t\n\x05TRACE\x10\x04\x42\x05\n\x03_idB\x08\n\x06_level\"7\n\x11ListpeersResponse\x12\"\n\x05peers\x18\x01 \x03(\x0b\x32\x13.cln.ListpeersPeers\"\xdf\x01\n\x0eListpeersPeers\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x11\n\tconnected\x18\x02 \x01(\x08\x12#\n\x03log\x18\x03 \x03(\x0b\x32\x16.cln.ListpeersPeersLog\x12\x0f\n\x07netaddr\x18\x05 \x03(\t\x12\x15\n\x08\x66\x65\x61tures\x18\x06 \x01(\x0cH\x00\x88\x01\x01\x12\x18\n\x0bremote_addr\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cnum_channels\x18\x08 \x01(\rH\x02\x88\x01\x01\x42\x0b\n\t_featuresB\x0e\n\x0c_remote_addrB\x0f\n\r_num_channels\"\x88\x03\n\x11ListpeersPeersLog\x12?\n\titem_type\x18\x01 \x01(\x0e\x32,.cln.ListpeersPeersLog.ListpeersPeersLogType\x12\x18\n\x0bnum_skipped\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x11\n\x04time\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03log\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x07node_id\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x12\x11\n\x04\x64\x61ta\x18\x07 \x01(\x0cH\x05\x88\x01\x01\"t\n\x15ListpeersPeersLogType\x12\x0b\n\x07SKIPPED\x10\x00\x12\n\n\x06\x42ROKEN\x10\x01\x12\x0b\n\x07UNUSUAL\x10\x02\x12\x08\n\x04INFO\x10\x03\x12\t\n\x05\x44\x45\x42UG\x10\x04\x12\t\n\x05IO_IN\x10\x05\x12\n\n\x06IO_OUT\x10\x06\x12\t\n\x05TRACE\x10\x07\x42\x0e\n\x0c_num_skippedB\x07\n\x05_timeB\t\n\x07_sourceB\x06\n\x04_logB\n\n\x08_node_idB\x07\n\x05_data\"0\n\x10ListfundsRequest\x12\x12\n\x05spent\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\x08\n\x06_spent\"e\n\x11ListfundsResponse\x12&\n\x07outputs\x18\x01 \x03(\x0b\x32\x15.cln.ListfundsOutputs\x12(\n\x08\x63hannels\x18\x02 \x03(\x0b\x32\x16.cln.ListfundsChannels\"\xb9\x03\n\x10ListfundsOutputs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06output\x18\x02 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0cscriptpubkey\x18\x04 \x01(\x0c\x12\x14\n\x07\x61\x64\x64ress\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0credeemscript\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12<\n\x06status\x18\x07 \x01(\x0e\x32,.cln.ListfundsOutputs.ListfundsOutputsStatus\x12\x18\n\x0b\x62lockheight\x18\x08 \x01(\rH\x02\x88\x01\x01\x12\x10\n\x08reserved\x18\t \x01(\x08\x12\x1e\n\x11reserved_to_block\x18\n \x01(\rH\x03\x88\x01\x01\"Q\n\x16ListfundsOutputsStatus\x12\x0f\n\x0bUNCONFIRMED\x10\x00\x12\r\n\tCONFIRMED\x10\x01\x12\t\n\x05SPENT\x10\x02\x12\x0c\n\x08IMMATURE\x10\x03\x42\n\n\x08_addressB\x0f\n\r_redeemscriptB\x0e\n\x0c_blockheightB\x14\n\x12_reserved_to_block\"\xab\x02\n\x11ListfundsChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12$\n\x0four_amount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66unding_txid\x18\x04 \x01(\x0c\x12\x16\n\x0e\x66unding_output\x18\x05 \x01(\r\x12\x11\n\tconnected\x18\x06 \x01(\x08\x12 \n\x05state\x18\x07 \x01(\x0e\x32\x11.cln.ChannelState\x12\x1d\n\x10short_channel_id\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nchannel_id\x18\t \x01(\x0cH\x01\x88\x01\x01\x42\x13\n\x11_short_channel_idB\r\n\x0b_channel_id\"\xbb\x03\n\x0eSendpayRequest\x12 \n\x05route\x18\x01 \x03(\x0b\x32\x11.cln.SendpayRoute\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0epayment_secret\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x13\n\x06partid\x18\x07 \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x07groupid\x18\t \x01(\x04H\x04\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\x0b \x01(\x0cH\x06\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\r \x01(\tH\x08\x88\x01\x01\x42\x08\n\x06_labelB\t\n\x07_bolt11B\x11\n\x0f_payment_secretB\t\n\x07_partidB\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x13\n\x11_payment_metadataB\x0e\n\x0c_description\"\xad\x05\n\x0fSendpayResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x07groupid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x32\n\x06status\x18\x04 \x01(\x0e\x32\".cln.SendpayResponse.SendpayStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06partid\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x14\n\x07message\x18\x0e \x01(\tH\x08\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0f \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\x0b\x88\x01\x01\"*\n\rSendpayStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x42\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\n\n\x08_messageB\x0f\n\r_completed_atB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"\\\n\x0cSendpayRoute\x12\n\n\x02id\x18\x02 \x01(\x0c\x12\r\n\x05\x64\x65lay\x18\x03 \x01(\r\x12\x0f\n\x07\x63hannel\x18\x04 \x01(\t\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\"\x93\x01\n\x13ListchannelsRequest\x12\x1d\n\x10short_channel_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06source\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x42\x13\n\x11_short_channel_idB\t\n\x07_sourceB\x0e\n\x0c_destination\"C\n\x14ListchannelsResponse\x12+\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x19.cln.ListchannelsChannels\"\xb3\x03\n\x14ListchannelsChannels\x12\x0e\n\x06source\x18\x01 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\x0c\x12\x18\n\x10short_channel_id\x18\x03 \x01(\t\x12\x0e\n\x06public\x18\x04 \x01(\x08\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x15\n\rmessage_flags\x18\x06 \x01(\r\x12\x15\n\rchannel_flags\x18\x07 \x01(\r\x12\x0e\n\x06\x61\x63tive\x18\x08 \x01(\x08\x12\x13\n\x0blast_update\x18\t \x01(\r\x12\x1d\n\x15\x62\x61se_fee_millisatoshi\x18\n \x01(\r\x12\x19\n\x11\x66\x65\x65_per_millionth\x18\x0b \x01(\r\x12\r\n\x05\x64\x65lay\x18\x0c \x01(\r\x12&\n\x11htlc_minimum_msat\x18\r \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x11htlc_maximum_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x10\n\x08\x66\x65\x61tures\x18\x0f \x01(\x0c\x12\x11\n\tdirection\x18\x10 \x01(\rB\x14\n\x12_htlc_maximum_msat\"#\n\x10\x41\x64\x64gossipRequest\x12\x0f\n\x07message\x18\x01 \x01(\x0c\"\x13\n\x11\x41\x64\x64gossipResponse\"\xac\x01\n\x14\x41\x64\x64psbtoutputRequest\x12\x1c\n\x07satoshi\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x15\n\x08locktime\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x18\n\x0binitialpsbt\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\x0b\n\t_locktimeB\x0e\n\x0c_initialpsbtB\x0e\n\x0c_destination\"U\n\x15\x41\x64\x64psbtoutputResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x1e\n\x16\x65stimated_added_weight\x18\x02 \x01(\r\x12\x0e\n\x06outnum\x18\x03 \x01(\r\"O\n\x14\x41utocleanonceRequest\x12*\n\tsubsystem\x18\x01 \x01(\x0e\x32\x17.cln.AutocleanSubsystem\x12\x0b\n\x03\x61ge\x18\x02 \x01(\x04\"G\n\x15\x41utocleanonceResponse\x12.\n\tautoclean\x18\x01 \x01(\x0b\x32\x1b.cln.AutocleanonceAutoclean\"\xb1\x04\n\x16\x41utocleanonceAutoclean\x12L\n\x11succeededforwards\x18\x01 \x01(\x0b\x32,.cln.AutocleanonceAutocleanSucceededforwardsH\x00\x88\x01\x01\x12\x46\n\x0e\x66\x61iledforwards\x18\x02 \x01(\x0b\x32).cln.AutocleanonceAutocleanFailedforwardsH\x01\x88\x01\x01\x12\x44\n\rsucceededpays\x18\x03 \x01(\x0b\x32(.cln.AutocleanonceAutocleanSucceededpaysH\x02\x88\x01\x01\x12>\n\nfailedpays\x18\x04 \x01(\x0b\x32%.cln.AutocleanonceAutocleanFailedpaysH\x03\x88\x01\x01\x12\x42\n\x0cpaidinvoices\x18\x05 \x01(\x0b\x32\'.cln.AutocleanonceAutocleanPaidinvoicesH\x04\x88\x01\x01\x12H\n\x0f\x65xpiredinvoices\x18\x06 \x01(\x0b\x32*.cln.AutocleanonceAutocleanExpiredinvoicesH\x05\x88\x01\x01\x42\x14\n\x12_succeededforwardsB\x11\n\x0f_failedforwardsB\x10\n\x0e_succeededpaysB\r\n\x0b_failedpaysB\x0f\n\r_paidinvoicesB\x12\n\x10_expiredinvoices\"M\n\'AutocleanonceAutocleanSucceededforwards\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"J\n$AutocleanonceAutocleanFailedforwards\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"I\n#AutocleanonceAutocleanSucceededpays\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"F\n AutocleanonceAutocleanFailedpays\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"H\n\"AutocleanonceAutocleanPaidinvoices\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"K\n%AutocleanonceAutocleanExpiredinvoices\x12\x0f\n\x07\x63leaned\x18\x01 \x01(\x04\x12\x11\n\tuncleaned\x18\x02 \x01(\x04\"W\n\x16\x41utocleanstatusRequest\x12/\n\tsubsystem\x18\x01 \x01(\x0e\x32\x17.cln.AutocleanSubsystemH\x00\x88\x01\x01\x42\x0c\n\n_subsystem\"K\n\x17\x41utocleanstatusResponse\x12\x30\n\tautoclean\x18\x01 \x01(\x0b\x32\x1d.cln.AutocleanstatusAutoclean\"\xbf\x04\n\x18\x41utocleanstatusAutoclean\x12N\n\x11succeededforwards\x18\x01 \x01(\x0b\x32..cln.AutocleanstatusAutocleanSucceededforwardsH\x00\x88\x01\x01\x12H\n\x0e\x66\x61iledforwards\x18\x02 \x01(\x0b\x32+.cln.AutocleanstatusAutocleanFailedforwardsH\x01\x88\x01\x01\x12\x46\n\rsucceededpays\x18\x03 \x01(\x0b\x32*.cln.AutocleanstatusAutocleanSucceededpaysH\x02\x88\x01\x01\x12@\n\nfailedpays\x18\x04 \x01(\x0b\x32\'.cln.AutocleanstatusAutocleanFailedpaysH\x03\x88\x01\x01\x12\x44\n\x0cpaidinvoices\x18\x05 \x01(\x0b\x32).cln.AutocleanstatusAutocleanPaidinvoicesH\x04\x88\x01\x01\x12J\n\x0f\x65xpiredinvoices\x18\x06 \x01(\x0b\x32,.cln.AutocleanstatusAutocleanExpiredinvoicesH\x05\x88\x01\x01\x42\x14\n\x12_succeededforwardsB\x11\n\x0f_failedforwardsB\x10\n\x0e_succeededpaysB\r\n\x0b_failedpaysB\x0f\n\r_paidinvoicesB\x12\n\x10_expiredinvoices\"g\n)AutocleanstatusAutocleanSucceededforwards\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"d\n&AutocleanstatusAutocleanFailedforwards\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"c\n%AutocleanstatusAutocleanSucceededpays\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"`\n\"AutocleanstatusAutocleanFailedpays\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"b\n$AutocleanstatusAutocleanPaidinvoices\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"e\n\'AutocleanstatusAutocleanExpiredinvoices\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0f\n\x07\x63leaned\x18\x02 \x01(\x04\x12\x10\n\x03\x61ge\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x06\n\x04_age\"U\n\x13\x43heckmessageRequest\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\r\n\x05zbase\x18\x02 \x01(\t\x12\x13\n\x06pubkey\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x42\t\n\x07_pubkey\"8\n\x14\x43heckmessageResponse\x12\x10\n\x08verified\x18\x01 \x01(\x08\x12\x0e\n\x06pubkey\x18\x02 \x01(\x0c\"\xcb\x02\n\x0c\x43loseRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1e\n\x11unilateraltimeout\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\tH\x01\x88\x01\x01\x12!\n\x14\x66\x65\x65_negotiation_step\x18\x04 \x01(\tH\x02\x88\x01\x01\x12)\n\rwrong_funding\x18\x05 \x01(\x0b\x32\r.cln.OutpointH\x03\x88\x01\x01\x12\x1f\n\x12\x66orce_lease_closed\x18\x06 \x01(\x08H\x04\x88\x01\x01\x12\x1e\n\x08\x66\x65\x65range\x18\x07 \x03(\x0b\x32\x0c.cln.FeerateB\x14\n\x12_unilateraltimeoutB\x0e\n\x0c_destinationB\x17\n\x15_fee_negotiation_stepB\x10\n\x0e_wrong_fundingB\x15\n\x13_force_lease_closed\"\xc7\x01\n\rCloseResponse\x12/\n\titem_type\x18\x01 \x01(\x0e\x32\x1c.cln.CloseResponse.CloseType\x12\x0f\n\x02tx\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x11\n\x04txid\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x0b\n\x03txs\x18\x04 \x03(\x0c\x12\r\n\x05txids\x18\x05 \x03(\x0c\"5\n\tCloseType\x12\n\n\x06MUTUAL\x10\x00\x12\x0e\n\nUNILATERAL\x10\x01\x12\x0c\n\x08UNOPENED\x10\x02\x42\x05\n\x03_txB\x07\n\x05_txid\"T\n\x0e\x43onnectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04host\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04port\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x07\n\x05_hostB\x07\n\x05_port\"\xb4\x01\n\x0f\x43onnectResponse\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x10\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0c\x12\x38\n\tdirection\x18\x03 \x01(\x0e\x32%.cln.ConnectResponse.ConnectDirection\x12$\n\x07\x61\x64\x64ress\x18\x04 \x01(\x0b\x32\x13.cln.ConnectAddress\"#\n\x10\x43onnectDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\"\xfb\x01\n\x0e\x43onnectAddress\x12\x39\n\titem_type\x18\x01 \x01(\x0e\x32&.cln.ConnectAddress.ConnectAddressType\x12\x13\n\x06socket\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04port\x18\x04 \x01(\rH\x02\x88\x01\x01\"P\n\x12\x43onnectAddressType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\t\n\x07_socketB\n\n\x08_addressB\x07\n\x05_port\"J\n\x14\x43reateinvoiceRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x10\n\x08preimage\x18\x03 \x01(\x0c\"\xfe\x05\n\x15\x43reateinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x06\x62olt11\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x04 \x01(\x0c\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12>\n\x06status\x18\x06 \x01(\x0e\x32..cln.CreateinvoiceResponse.CreateinvoiceStatus\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x12\n\nexpires_at\x18\x08 \x01(\x04\x12\x16\n\tpay_index\x18\t \x01(\x04H\x03\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x06\x88\x01\x01\x12\x1b\n\x0elocal_offer_id\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0f \x01(\tH\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\t\x88\x01\x01\x12;\n\rpaid_outpoint\x18\x11 \x01(\x0b\x32\x1f.cln.CreateinvoicePaid_outpointH\n\x88\x01\x01\"8\n\x13\x43reateinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x11\n\x0f_local_offer_idB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_paid_outpoint\":\n\x1a\x43reateinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\xb4\x02\n\x10\x44\x61tastoreRequest\x12\x10\n\x03hex\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x36\n\x04mode\x18\x03 \x01(\x0e\x32#.cln.DatastoreRequest.DatastoreModeH\x01\x88\x01\x01\x12\x17\n\ngeneration\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\t\x12\x13\n\x06string\x18\x06 \x01(\tH\x03\x88\x01\x01\"p\n\rDatastoreMode\x12\x0f\n\x0bMUST_CREATE\x10\x00\x12\x10\n\x0cMUST_REPLACE\x10\x01\x12\x15\n\x11\x43REATE_OR_REPLACE\x10\x02\x12\x0f\n\x0bMUST_APPEND\x10\x03\x12\x14\n\x10\x43REATE_OR_APPEND\x10\x04\x42\x06\n\x04_hexB\x07\n\x05_modeB\r\n\x0b_generationB\t\n\x07_string\"\x82\x01\n\x11\x44\x61tastoreResponse\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\tB\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"$\n\x15\x44\x61tastoreusageRequest\x12\x0b\n\x03key\x18\x01 \x03(\t\"S\n\x16\x44\x61tastoreusageResponse\x12\x39\n\x0e\x64\x61tastoreusage\x18\x01 \x01(\x0b\x32!.cln.DatastoreusageDatastoreusage\"@\n\x1c\x44\x61tastoreusageDatastoreusage\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x13\n\x0btotal_bytes\x18\x02 \x01(\x04\"\x9d\x01\n\x12\x43reateonionRequest\x12\"\n\x04hops\x18\x01 \x03(\x0b\x32\x14.cln.CreateonionHops\x12\x11\n\tassocdata\x18\x02 \x01(\x0c\x12\x18\n\x0bsession_key\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x17\n\nonion_size\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_session_keyB\r\n\x0b_onion_size\"<\n\x13\x43reateonionResponse\x12\r\n\x05onion\x18\x01 \x01(\x0c\x12\x16\n\x0eshared_secrets\x18\x02 \x03(\x0c\"2\n\x0f\x43reateonionHops\x12\x0e\n\x06pubkey\x18\x01 \x01(\x0c\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"J\n\x13\x44\x65ldatastoreRequest\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x0b\n\x03key\x18\x03 \x03(\tB\r\n\x0b_generation\"\x85\x01\n\x14\x44\x65ldatastoreResponse\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x0b\n\x03key\x18\x05 \x03(\tB\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"\xb6\x01\n\x11\x44\x65linvoiceRequest\x12\r\n\x05label\x18\x01 \x01(\t\x12\x37\n\x06status\x18\x02 \x01(\x0e\x32\'.cln.DelinvoiceRequest.DelinvoiceStatus\x12\x15\n\x08\x64\x65sconly\x18\x03 \x01(\x08H\x00\x88\x01\x01\"5\n\x10\x44\x65linvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\x0b\n\t_desconly\"\xe6\x05\n\x12\x44\x65linvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x06\x62olt11\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x03 \x01(\tH\x01\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x38\n\x06status\x18\x07 \x01(\x0e\x32(.cln.DelinvoiceResponse.DelinvoiceStatus\x12\x12\n\nexpires_at\x18\x08 \x01(\x04\x12\x1b\n\x0elocal_offer_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1a\n\rupdated_index\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x16\n\tpay_index\x18\x0e \x01(\x04H\x08\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\t\x88\x01\x01\x12\x14\n\x07paid_at\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\"5\n\x10\x44\x65linvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x12\n\n\x06UNPAID\x10\x02\x42\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x11\n\x0f_local_offer_idB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimage\"\x9f\x01\n\x17\x44\x65vforgetchannelRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nchannel_id\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\x05\x66orce\x18\x04 \x01(\x08H\x02\x88\x01\x01\x42\x13\n\x11_short_channel_idB\r\n\x0b_channel_idB\x08\n\x06_force\"Y\n\x18\x44\x65vforgetchannelResponse\x12\x0e\n\x06\x66orced\x18\x01 \x01(\x08\x12\x17\n\x0f\x66unding_unspent\x18\x02 \x01(\x08\x12\x14\n\x0c\x66unding_txid\x18\x03 \x01(\x0c\"\x19\n\x17\x45mergencyrecoverRequest\")\n\x18\x45mergencyrecoverResponse\x12\r\n\x05stubs\x18\x01 \x03(\x0c\" \n\x1eGetemergencyrecoverdataRequest\"3\n\x1fGetemergencyrecoverdataResponse\x12\x10\n\x08\x66iledata\x18\x01 \x01(\x0c\"Q\n\x13\x45xposesecretRequest\x12\x12\n\npassphrase\x18\x01 \x01(\t\x12\x17\n\nidentifier\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_identifier\";\n\x14\x45xposesecretResponse\x12\x12\n\nidentifier\x18\x01 \x01(\t\x12\x0f\n\x07\x63odex32\x18\x02 \x01(\t\"#\n\x0eRecoverRequest\x12\x11\n\thsmsecret\x18\x01 \x01(\t\"\x88\x01\n\x0fRecoverResponse\x12\x37\n\x06result\x18\x01 \x01(\x0e\x32\".cln.RecoverResponse.RecoverResultH\x00\x88\x01\x01\"1\n\rRecoverResult\x12 \n\x1cRECOVERY_RESTART_IN_PROGRESS\x10\x00\x42\t\n\x07_result\"$\n\x15RecoverchannelRequest\x12\x0b\n\x03scb\x18\x01 \x03(\x0c\"\'\n\x16RecoverchannelResponse\x12\r\n\x05stubs\x18\x01 \x03(\t\"\x99\x02\n\x0eInvoiceRequest\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\x12\x11\n\tfallbacks\x18\x04 \x03(\t\x12\x15\n\x08preimage\x18\x05 \x01(\x0cH\x00\x88\x01\x01\x12\x11\n\x04\x63ltv\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06\x65xpiry\x18\x07 \x01(\x04H\x02\x88\x01\x01\x12\x1d\n\x15\x65xposeprivatechannels\x18\x08 \x03(\t\x12\x19\n\x0c\x64\x65schashonly\x18\t \x01(\x08H\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x10.cln.AmountOrAnyB\x0b\n\t_preimageB\x07\n\x05_cltvB\t\n\x07_expiryB\x0f\n\r_deschashonly\"\x95\x03\n\x0fInvoiceResponse\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x16\n\x0epayment_secret\x18\x03 \x01(\x0c\x12\x12\n\nexpires_at\x18\x04 \x01(\x04\x12\x1d\n\x10warning_capacity\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0fwarning_offline\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10warning_deadends\x18\x07 \x01(\tH\x02\x88\x01\x01\x12#\n\x16warning_private_unused\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x18\n\x0bwarning_mpp\x18\t \x01(\tH\x04\x88\x01\x01\x12\x1a\n\rcreated_index\x18\n \x01(\x04H\x05\x88\x01\x01\x42\x13\n\x11_warning_capacityB\x12\n\x10_warning_offlineB\x13\n\x11_warning_deadendsB\x19\n\x17_warning_private_unusedB\x0e\n\x0c_warning_mppB\x10\n\x0e_created_index\"\xe1\x01\n\x15InvoicerequestRequest\x12\x1b\n\x06\x61mount\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x13\n\x06issuer\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05label\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0f\x61\x62solute_expiry\x18\x05 \x01(\x04H\x02\x88\x01\x01\x12\x17\n\nsingle_use\x18\x06 \x01(\x08H\x03\x88\x01\x01\x42\t\n\x07_issuerB\x08\n\x06_labelB\x12\n\x10_absolute_expiryB\r\n\x0b_single_use\"\x8b\x01\n\x16InvoicerequestResponse\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"1\n\x1c\x44isableinvoicerequestRequest\x12\x11\n\tinvreq_id\x18\x01 \x01(\t\"\x92\x01\n\x1d\x44isableinvoicerequestResponse\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"l\n\x1aListinvoicerequestsRequest\x12\x16\n\tinvreq_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x61\x63tive_only\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x0c\n\n_invreq_idB\x0e\n\x0c_active_only\"_\n\x1bListinvoicerequestsResponse\x12@\n\x0finvoicerequests\x18\x01 \x03(\x0b\x32\'.cln.ListinvoicerequestsInvoicerequests\"\x97\x01\n\"ListinvoicerequestsInvoicerequests\x12\x11\n\tinvreq_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"#\n\x14ListdatastoreRequest\x12\x0b\n\x03key\x18\x02 \x03(\t\"G\n\x15ListdatastoreResponse\x12.\n\tdatastore\x18\x01 \x03(\x0b\x32\x1b.cln.ListdatastoreDatastore\"\x87\x01\n\x16ListdatastoreDatastore\x12\x0b\n\x03key\x18\x01 \x03(\t\x12\x17\n\ngeneration\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03hex\x18\x03 \x01(\x0cH\x01\x88\x01\x01\x12\x13\n\x06string\x18\x04 \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_generationB\x06\n\x04_hexB\t\n\x07_string\"\xde\x02\n\x13ListinvoicesRequest\x12\x12\n\x05label\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tinvstring\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x15\n\x08offer_id\x18\x04 \x01(\tH\x03\x88\x01\x01\x12>\n\x05index\x18\x05 \x01(\x0e\x32*.cln.ListinvoicesRequest.ListinvoicesIndexH\x04\x88\x01\x01\x12\x12\n\x05start\x18\x06 \x01(\x04H\x05\x88\x01\x01\x12\x12\n\x05limit\x18\x07 \x01(\rH\x06\x88\x01\x01\"-\n\x11ListinvoicesIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\x08\n\x06_labelB\x0c\n\n_invstringB\x0f\n\r_payment_hashB\x0b\n\t_offer_idB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListinvoicesResponse\x12+\n\x08invoices\x18\x01 \x03(\x0b\x32\x19.cln.ListinvoicesInvoices\"\xd4\x06\n\x14ListinvoicesInvoices\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x44\n\x06status\x18\x04 \x01(\x0e\x32\x34.cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0elocal_offer_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x16\n\tpay_index\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x14\n\x07paid_at\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0e \x01(\x0cH\x08\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x0f \x01(\tH\t\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\x0b\x88\x01\x01\x12\x42\n\rpaid_outpoint\x18\x12 \x01(\x0b\x32&.cln.ListinvoicesInvoicesPaid_outpointH\x0c\x88\x01\x01\"?\n\x1aListinvoicesInvoicesStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x11\n\x0f_local_offer_idB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x14\n\x12_invreq_payer_noteB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\"A\n!ListinvoicesInvoicesPaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\xb4\x03\n\x10SendonionRequest\x12\r\n\x05onion\x18\x01 \x01(\x0c\x12*\n\tfirst_hop\x18\x02 \x01(\x0b\x32\x17.cln.SendonionFirst_hop\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\x05label\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x0eshared_secrets\x18\x05 \x03(\x0c\x12\x13\n\x06partid\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\t \x01(\x0cH\x03\x88\x01\x01\x12\x14\n\x07groupid\x18\x0b \x01(\x04H\x04\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\r \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0e \x01(\tH\x07\x88\x01\x01\x42\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\x0e\n\x0c_destinationB\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x0e\n\x0c_description\"\xe7\x04\n\x11SendonionResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x36\n\x06status\x18\x03 \x01(\x0e\x32&.cln.SendonionResponse.SendonionStatus\x12%\n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\ncreated_at\x18\x06 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\x08 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\n \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0b \x01(\x0cH\x05\x88\x01\x01\x12\x14\n\x07message\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x13\n\x06partid\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0e \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0f \x01(\x04H\t\x88\x01\x01\",\n\x0fSendonionStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\n\n\x08_messageB\t\n\x07_partidB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"Q\n\x12SendonionFirst_hop\x12\n\n\x02id\x18\x01 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\r\n\x05\x64\x65lay\x18\x03 \x01(\r\"\xa0\x03\n\x13ListsendpaysRequest\x12\x13\n\x06\x62olt11\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12@\n\x06status\x18\x03 \x01(\x0e\x32+.cln.ListsendpaysRequest.ListsendpaysStatusH\x02\x88\x01\x01\x12>\n\x05index\x18\x04 \x01(\x0e\x32*.cln.ListsendpaysRequest.ListsendpaysIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\";\n\x12ListsendpaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"-\n\x11ListsendpaysIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_bolt11B\x0f\n\r_payment_hashB\t\n\x07_statusB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListsendpaysResponse\x12+\n\x08payments\x18\x01 \x03(\x0b\x32\x19.cln.ListsendpaysPayments\"\xfc\x05\n\x14ListsendpaysPayments\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0f\n\x07groupid\x18\x02 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x44\n\x06status\x18\x04 \x01(\x0e\x32\x34.cln.ListsendpaysPayments.ListsendpaysPaymentsStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\n \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0b \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x05\x88\x01\x01\x12\x17\n\nerroronion\x18\r \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0e \x01(\tH\x07\x88\x01\x01\x12\x13\n\x06partid\x18\x0f \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x10 \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x11 \x01(\x04H\n\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x12 \x01(\x04H\x0b\x88\x01\x01\"C\n\x1aListsendpaysPaymentsStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\r\n\x0b_erroronionB\x0e\n\x0c_descriptionB\t\n\x07_partidB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0f\n\r_completed_at\"\x19\n\x17ListtransactionsRequest\"S\n\x18ListtransactionsResponse\x12\x37\n\x0ctransactions\x18\x01 \x03(\x0b\x32!.cln.ListtransactionsTransactions\"\xf8\x01\n\x1cListtransactionsTransactions\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\r\n\x05rawtx\x18\x02 \x01(\x0c\x12\x13\n\x0b\x62lockheight\x18\x03 \x01(\r\x12\x0f\n\x07txindex\x18\x04 \x01(\r\x12\x10\n\x08locktime\x18\x07 \x01(\r\x12\x0f\n\x07version\x18\x08 \x01(\r\x12\x37\n\x06inputs\x18\t \x03(\x0b\x32\'.cln.ListtransactionsTransactionsInputs\x12\x39\n\x07outputs\x18\n \x03(\x0b\x32(.cln.ListtransactionsTransactionsOutputs\"S\n\"ListtransactionsTransactionsInputs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\r\n\x05index\x18\x02 \x01(\r\x12\x10\n\x08sequence\x18\x03 \x01(\r\"l\n#ListtransactionsTransactionsOutputs\x12\r\n\x05index\x18\x01 \x01(\r\x12\x14\n\x0cscriptPubKey\x18\x03 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\"M\n\x11MakesecretRequest\x12\x10\n\x03hex\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x13\n\x06string\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_hexB\t\n\x07_string\"$\n\x12MakesecretResponse\x12\x0e\n\x06secret\x18\x01 \x01(\x0c\"\x93\x04\n\nPayRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rmaxfeepercent\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\texemptfee\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x17\n\nriskfactor\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\n \x03(\t\x12 \n\x06maxfee\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0c \x01(\tH\x07\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\r \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\x0e \x01(\x0cH\t\x88\x01\x01\x12&\n\x0cpartial_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x42\x08\n\x06_labelB\x10\n\x0e_maxfeepercentB\x0c\n\n_retry_forB\x0b\n\t_maxdelayB\x0c\n\n_exemptfeeB\r\n\x0b_riskfactorB\t\n\x07_maxfeeB\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\x10\n\x0e_localinvreqidB\x0f\n\r_partial_msat\"\xfb\x02\n\x0bPayResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x18\n\x0b\x64\x65stination\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\r\n\x05parts\x18\x05 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\x1awarning_partial_completion\x18\x08 \x01(\tH\x01\x88\x01\x01\x12*\n\x06status\x18\t \x01(\x0e\x32\x1a.cln.PayResponse.PayStatus\"2\n\tPayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x0e\n\x0c_destinationB\x1d\n\x1b_warning_partial_completion\"*\n\x10ListnodesRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"7\n\x11ListnodesResponse\x12\"\n\x05nodes\x18\x01 \x03(\x0b\x32\x13.cln.ListnodesNodes\"\xba\x02\n\x0eListnodesNodes\x12\x0e\n\x06nodeid\x18\x01 \x01(\x0c\x12\x1b\n\x0elast_timestamp\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x12\n\x05\x61lias\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x12\n\x05\x63olor\x18\x04 \x01(\x0cH\x02\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18\x05 \x01(\x0cH\x03\x88\x01\x01\x12/\n\taddresses\x18\x06 \x03(\x0b\x32\x1c.cln.ListnodesNodesAddresses\x12\x42\n\x10option_will_fund\x18\x07 \x01(\x0b\x32#.cln.ListnodesNodesOption_will_fundH\x04\x88\x01\x01\x42\x11\n\x0f_last_timestampB\x08\n\x06_aliasB\x08\n\x06_colorB\x0b\n\t_featuresB\x13\n\x11_option_will_fund\"\xf4\x01\n\x1eListnodesNodesOption_will_fund\x12(\n\x13lease_fee_base_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x17\n\x0flease_fee_basis\x18\x02 \x01(\r\x12\x16\n\x0e\x66unding_weight\x18\x03 \x01(\r\x12.\n\x19\x63hannel_fee_max_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x30\n(channel_fee_max_proportional_thousandths\x18\x05 \x01(\r\x12\x15\n\rcompact_lease\x18\x06 \x01(\x0c\"\xe8\x01\n\x17ListnodesNodesAddresses\x12K\n\titem_type\x18\x01 \x01(\x0e\x32\x38.cln.ListnodesNodesAddresses.ListnodesNodesAddressesType\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\"P\n\x1bListnodesNodesAddressesType\x12\x07\n\x03\x44NS\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\n\n\x08_address\"g\n\x15WaitanyinvoiceRequest\x12\x1a\n\rlastpay_index\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\x10\n\x0e_lastpay_indexB\n\n\x08_timeout\"\xd4\x05\n\x16WaitanyinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12@\n\x06status\x18\x04 \x01(\x0e\x32\x30.cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\t \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\r \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0e \x01(\x04H\t\x88\x01\x01\x12<\n\rpaid_outpoint\x18\x0f \x01(\x0b\x32 .cln.WaitanyinvoicePaid_outpointH\n\x88\x01\x01\"-\n\x14WaitanyinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\";\n\x1bWaitanyinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"#\n\x12WaitinvoiceRequest\x12\r\n\x05label\x18\x01 \x01(\t\"\xc5\x05\n\x13WaitinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.WaitinvoiceResponse.WaitinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\t \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0b \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\x0c \x01(\x0cH\x07\x88\x01\x01\x12\x1a\n\rcreated_index\x18\r \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x0e \x01(\x04H\t\x88\x01\x01\x12\x39\n\rpaid_outpoint\x18\x0f \x01(\x0b\x32\x1d.cln.WaitinvoicePaid_outpointH\n\x88\x01\x01\"*\n\x11WaitinvoiceStatus\x12\x08\n\x04PAID\x10\x00\x12\x0b\n\x07\x45XPIRED\x10\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_amount_msatB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimageB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_paid_outpoint\"8\n\x18WaitinvoicePaid_outpoint\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\"\x8e\x01\n\x12WaitsendpayRequest\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12\x13\n\x06partid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x14\n\x07groupid\x18\x04 \x01(\x04H\x02\x88\x01\x01\x42\t\n\x07_partidB\n\n\x08_timeoutB\n\n\x08_groupid\"\x8e\x05\n\x13WaitsendpayResponse\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x14\n\x07groupid\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.WaitsendpayResponse.WaitsendpayStatus\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x06 \x01(\x0cH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\x12%\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12\x12\n\x05label\x18\t \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06partid\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0b \x01(\tH\x05\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x0c \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0e \x01(\x01H\x08\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0f \x01(\x04H\t\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x10 \x01(\x04H\n\x88\x01\x01\"!\n\x11WaitsendpayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x42\n\n\x08_groupidB\x0e\n\x0c_amount_msatB\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_partidB\t\n\x07_bolt11B\t\n\x07_bolt12B\x13\n\x11_payment_preimageB\x0f\n\r_completed_atB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"\x97\x01\n\x0eNewaddrRequest\x12@\n\x0b\x61\x64\x64resstype\x18\x01 \x01(\x0e\x32&.cln.NewaddrRequest.NewaddrAddresstypeH\x00\x88\x01\x01\"3\n\x12NewaddrAddresstype\x12\n\n\x06\x42\x45\x43H32\x10\x00\x12\x07\n\x03\x41LL\x10\x02\x12\x08\n\x04P2TR\x10\x03\x42\x0e\n\x0c_addresstype\"M\n\x0fNewaddrResponse\x12\x13\n\x06\x62\x65\x63h32\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04p2tr\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\t\n\x07_bech32B\x07\n\x05_p2tr\"\xb9\x01\n\x0fWithdrawRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\t\x12!\n\x07satoshi\x18\x02 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\"\n\x07\x66\x65\x65rate\x18\x05 \x01(\x0b\x32\x0c.cln.FeerateH\x01\x88\x01\x01\x42\n\n\x08_minconfB\n\n\x08_feerate\":\n\x10WithdrawResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x0c\n\x04psbt\x18\x03 \x01(\t\"\xaf\x03\n\x0eKeysendRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\x0c\x12\x12\n\x05label\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rmaxfeepercent\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\texemptfee\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12+\n\nroutehints\x18\x08 \x01(\x0b\x32\x12.cln.RoutehintListH\x05\x88\x01\x01\x12&\n\textratlvs\x18\t \x01(\x0b\x32\x0e.cln.TlvStreamH\x06\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\n \x01(\x0b\x32\x0b.cln.Amount\x12 \n\x06maxfee\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x07\x88\x01\x01\x42\x08\n\x06_labelB\x10\n\x0e_maxfeepercentB\x0c\n\n_retry_forB\x0b\n\t_maxdelayB\x0c\n\n_exemptfeeB\r\n\x0b_routehintsB\x0c\n\n_extratlvsB\t\n\x07_maxfee\"\xf2\x02\n\x0fKeysendResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x18\n\x0b\x64\x65stination\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\r\n\x05parts\x18\x05 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\x1awarning_partial_completion\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x32\n\x06status\x18\t \x01(\x0e\x32\".cln.KeysendResponse.KeysendStatus\"\x1d\n\rKeysendStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x42\x0e\n\x0c_destinationB\x1d\n\x1b_warning_partial_completion\"\xa4\x03\n\x0f\x46undpsbtRequest\x12!\n\x07satoshi\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x1d\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.Feerate\x12\x13\n\x0bstartweight\x18\x03 \x01(\r\x12\x14\n\x07minconf\x18\x04 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07reserve\x18\x05 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08locktime\x18\x06 \x01(\rH\x02\x88\x01\x01\x12\x1f\n\x12min_witness_weight\x18\x07 \x01(\rH\x03\x88\x01\x01\x12\x1d\n\x10\x65xcess_as_change\x18\x08 \x01(\x08H\x04\x88\x01\x01\x12\x17\n\nnonwrapped\x18\t \x01(\x08H\x05\x88\x01\x01\x12#\n\x16opening_anchor_channel\x18\n \x01(\x08H\x06\x88\x01\x01\x42\n\n\x08_minconfB\n\n\x08_reserveB\x0b\n\t_locktimeB\x15\n\x13_min_witness_weightB\x13\n\x11_excess_as_changeB\r\n\x0b_nonwrappedB\x19\n\x17_opening_anchor_channel\"\xd9\x01\n\x10\x46undpsbtResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\x0e\x66\x65\x65rate_per_kw\x18\x02 \x01(\r\x12\x1e\n\x16\x65stimated_final_weight\x18\x03 \x01(\r\x12 \n\x0b\x65xcess_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1a\n\rchange_outnum\x18\x05 \x01(\rH\x00\x88\x01\x01\x12/\n\x0creservations\x18\x06 \x03(\x0b\x32\x19.cln.FundpsbtReservationsB\x10\n\x0e_change_outnum\"u\n\x14\x46undpsbtReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\"A\n\x0fSendpsbtRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x14\n\x07reserve\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_reserve\",\n\x10SendpsbtResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"1\n\x0fSignpsbtRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x10\n\x08signonly\x18\x02 \x03(\r\"\'\n\x10SignpsbtResponse\x12\x13\n\x0bsigned_psbt\x18\x01 \x01(\t\"\xa0\x03\n\x0fUtxopsbtRequest\x12!\n\x07satoshi\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x1d\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.Feerate\x12\x13\n\x0bstartweight\x18\x03 \x01(\r\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\x14\n\x07reserve\x18\x05 \x01(\rH\x00\x88\x01\x01\x12\x15\n\x08locktime\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x1f\n\x12min_witness_weight\x18\x07 \x01(\rH\x02\x88\x01\x01\x12\x17\n\nreservedok\x18\x08 \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\x10\x65xcess_as_change\x18\t \x01(\x08H\x04\x88\x01\x01\x12#\n\x16opening_anchor_channel\x18\n \x01(\x08H\x05\x88\x01\x01\x42\n\n\x08_reserveB\x0b\n\t_locktimeB\x15\n\x13_min_witness_weightB\r\n\x0b_reservedokB\x13\n\x11_excess_as_changeB\x19\n\x17_opening_anchor_channel\"\xd9\x01\n\x10UtxopsbtResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\x0e\x66\x65\x65rate_per_kw\x18\x02 \x01(\r\x12\x1e\n\x16\x65stimated_final_weight\x18\x03 \x01(\r\x12 \n\x0b\x65xcess_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1a\n\rchange_outnum\x18\x05 \x01(\rH\x00\x88\x01\x01\x12/\n\x0creservations\x18\x06 \x03(\x0b\x32\x19.cln.UtxopsbtReservationsB\x10\n\x0e_change_outnum\"u\n\x14UtxopsbtReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\" \n\x10TxdiscardRequest\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\"6\n\x11TxdiscardResponse\x12\x13\n\x0bunsigned_tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"\xa4\x01\n\x10TxprepareRequest\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12 \n\x07outputs\x18\x05 \x03(\x0b\x32\x0f.cln.OutputDescB\n\n\x08_feerateB\n\n\x08_minconf\"D\n\x11TxprepareResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x13\n\x0bunsigned_tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"\x1d\n\rTxsendRequest\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\"8\n\x0eTxsendResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\n\n\x02tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"1\n\x17ListpeerchannelsRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"K\n\x18ListpeerchannelsResponse\x12/\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x1d.cln.ListpeerchannelsChannels\"\xd7\x1b\n\x18ListpeerchannelsChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x16\n\x0epeer_connected\x18\x02 \x01(\x08\x12J\n\x05state\x18\x03 \x01(\x0e\x32;.cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState\x12\x19\n\x0cscratch_txid\x18\x04 \x01(\x0cH\x00\x88\x01\x01\x12:\n\x07\x66\x65\x65rate\x18\x06 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsFeerateH\x01\x88\x01\x01\x12\x12\n\x05owner\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x10short_channel_id\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x17\n\nchannel_id\x18\t \x01(\x0cH\x04\x88\x01\x01\x12\x19\n\x0c\x66unding_txid\x18\n \x01(\x0cH\x05\x88\x01\x01\x12\x1b\n\x0e\x66unding_outnum\x18\x0b \x01(\rH\x06\x88\x01\x01\x12\x1c\n\x0finitial_feerate\x18\x0c \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0clast_feerate\x18\r \x01(\tH\x08\x88\x01\x01\x12\x19\n\x0cnext_feerate\x18\x0e \x01(\tH\t\x88\x01\x01\x12\x1a\n\rnext_fee_step\x18\x0f \x01(\rH\n\x88\x01\x01\x12\x37\n\x08inflight\x18\x10 \x03(\x0b\x32%.cln.ListpeerchannelsChannelsInflight\x12\x15\n\x08\x63lose_to\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\x12\x14\n\x07private\x18\x12 \x01(\x08H\x0c\x88\x01\x01\x12 \n\x06opener\x18\x13 \x01(\x0e\x32\x10.cln.ChannelSide\x12%\n\x06\x63loser\x18\x14 \x01(\x0e\x32\x10.cln.ChannelSideH\r\x88\x01\x01\x12:\n\x07\x66unding\x18\x16 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsFundingH\x0e\x88\x01\x01\x12$\n\nto_us_msat\x18\x17 \x01(\x0b\x32\x0b.cln.AmountH\x0f\x88\x01\x01\x12(\n\x0emin_to_us_msat\x18\x18 \x01(\x0b\x32\x0b.cln.AmountH\x10\x88\x01\x01\x12(\n\x0emax_to_us_msat\x18\x19 \x01(\x0b\x32\x0b.cln.AmountH\x11\x88\x01\x01\x12$\n\ntotal_msat\x18\x1a \x01(\x0b\x32\x0b.cln.AmountH\x12\x88\x01\x01\x12\'\n\rfee_base_msat\x18\x1b \x01(\x0b\x32\x0b.cln.AmountH\x13\x88\x01\x01\x12(\n\x1b\x66\x65\x65_proportional_millionths\x18\x1c \x01(\rH\x14\x88\x01\x01\x12)\n\x0f\x64ust_limit_msat\x18\x1d \x01(\x0b\x32\x0b.cln.AmountH\x15\x88\x01\x01\x12\x30\n\x16max_total_htlc_in_msat\x18\x1e \x01(\x0b\x32\x0b.cln.AmountH\x16\x88\x01\x01\x12,\n\x12their_reserve_msat\x18\x1f \x01(\x0b\x32\x0b.cln.AmountH\x17\x88\x01\x01\x12*\n\x10our_reserve_msat\x18  \x01(\x0b\x32\x0b.cln.AmountH\x18\x88\x01\x01\x12(\n\x0espendable_msat\x18! \x01(\x0b\x32\x0b.cln.AmountH\x19\x88\x01\x01\x12)\n\x0freceivable_msat\x18\" \x01(\x0b\x32\x0b.cln.AmountH\x1a\x88\x01\x01\x12.\n\x14minimum_htlc_in_msat\x18# \x01(\x0b\x32\x0b.cln.AmountH\x1b\x88\x01\x01\x12/\n\x15minimum_htlc_out_msat\x18$ \x01(\x0b\x32\x0b.cln.AmountH\x1c\x88\x01\x01\x12/\n\x15maximum_htlc_out_msat\x18% \x01(\x0b\x32\x0b.cln.AmountH\x1d\x88\x01\x01\x12 \n\x13their_to_self_delay\x18& \x01(\rH\x1e\x88\x01\x01\x12\x1e\n\x11our_to_self_delay\x18\' \x01(\rH\x1f\x88\x01\x01\x12\x1f\n\x12max_accepted_htlcs\x18( \x01(\rH \x88\x01\x01\x12\x36\n\x05\x61lias\x18) \x01(\x0b\x32\".cln.ListpeerchannelsChannelsAliasH!\x88\x01\x01\x12\x0e\n\x06status\x18+ \x03(\t\x12 \n\x13in_payments_offered\x18, \x01(\x04H\"\x88\x01\x01\x12)\n\x0fin_offered_msat\x18- \x01(\x0b\x32\x0b.cln.AmountH#\x88\x01\x01\x12\"\n\x15in_payments_fulfilled\x18. \x01(\x04H$\x88\x01\x01\x12+\n\x11in_fulfilled_msat\x18/ \x01(\x0b\x32\x0b.cln.AmountH%\x88\x01\x01\x12!\n\x14out_payments_offered\x18\x30 \x01(\x04H&\x88\x01\x01\x12*\n\x10out_offered_msat\x18\x31 \x01(\x0b\x32\x0b.cln.AmountH\'\x88\x01\x01\x12#\n\x16out_payments_fulfilled\x18\x32 \x01(\x04H(\x88\x01\x01\x12,\n\x12out_fulfilled_msat\x18\x33 \x01(\x0b\x32\x0b.cln.AmountH)\x88\x01\x01\x12\x31\n\x05htlcs\x18\x34 \x03(\x0b\x32\".cln.ListpeerchannelsChannelsHtlcs\x12\x1a\n\rclose_to_addr\x18\x35 \x01(\tH*\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\x36 \x01(\x08H+\x88\x01\x01\x12:\n\x07updates\x18\x37 \x01(\x0b\x32$.cln.ListpeerchannelsChannelsUpdatesH,\x88\x01\x01\x12#\n\x16last_stable_connection\x18\x38 \x01(\x04H-\x88\x01\x01\x12\x17\n\nlost_state\x18\x39 \x01(\x08H.\x88\x01\x01\x12\x1a\n\rreestablished\x18: \x01(\x08H/\x88\x01\x01\x12*\n\x10last_tx_fee_msat\x18; \x01(\x0b\x32\x0b.cln.AmountH0\x88\x01\x01\x12\x16\n\tdirection\x18< \x01(\rH1\x88\x01\x01\"\x80\x03\n\x1dListpeerchannelsChannelsState\x12\x0c\n\x08OPENINGD\x10\x00\x12\x1c\n\x18\x43HANNELD_AWAITING_LOCKIN\x10\x01\x12\x13\n\x0f\x43HANNELD_NORMAL\x10\x02\x12\x1a\n\x16\x43HANNELD_SHUTTING_DOWN\x10\x03\x12\x18\n\x14\x43LOSINGD_SIGEXCHANGE\x10\x04\x12\x15\n\x11\x43LOSINGD_COMPLETE\x10\x05\x12\x17\n\x13\x41WAITING_UNILATERAL\x10\x06\x12\x16\n\x12\x46UNDING_SPEND_SEEN\x10\x07\x12\x0b\n\x07ONCHAIN\x10\x08\x12\x17\n\x13\x44UALOPEND_OPEN_INIT\x10\t\x12\x1d\n\x19\x44UALOPEND_AWAITING_LOCKIN\x10\n\x12\x1c\n\x18\x43HANNELD_AWAITING_SPLICE\x10\x0b\x12\x1c\n\x18\x44UALOPEND_OPEN_COMMITTED\x10\x0c\x12\x1f\n\x1b\x44UALOPEND_OPEN_COMMIT_READY\x10\rB\x0f\n\r_scratch_txidB\n\n\x08_feerateB\x08\n\x06_ownerB\x13\n\x11_short_channel_idB\r\n\x0b_channel_idB\x0f\n\r_funding_txidB\x11\n\x0f_funding_outnumB\x12\n\x10_initial_feerateB\x0f\n\r_last_feerateB\x0f\n\r_next_feerateB\x10\n\x0e_next_fee_stepB\x0b\n\t_close_toB\n\n\x08_privateB\t\n\x07_closerB\n\n\x08_fundingB\r\n\x0b_to_us_msatB\x11\n\x0f_min_to_us_msatB\x11\n\x0f_max_to_us_msatB\r\n\x0b_total_msatB\x10\n\x0e_fee_base_msatB\x1e\n\x1c_fee_proportional_millionthsB\x12\n\x10_dust_limit_msatB\x19\n\x17_max_total_htlc_in_msatB\x15\n\x13_their_reserve_msatB\x13\n\x11_our_reserve_msatB\x11\n\x0f_spendable_msatB\x12\n\x10_receivable_msatB\x17\n\x15_minimum_htlc_in_msatB\x18\n\x16_minimum_htlc_out_msatB\x18\n\x16_maximum_htlc_out_msatB\x16\n\x14_their_to_self_delayB\x14\n\x12_our_to_self_delayB\x15\n\x13_max_accepted_htlcsB\x08\n\x06_aliasB\x16\n\x14_in_payments_offeredB\x12\n\x10_in_offered_msatB\x18\n\x16_in_payments_fulfilledB\x14\n\x12_in_fulfilled_msatB\x17\n\x15_out_payments_offeredB\x13\n\x11_out_offered_msatB\x19\n\x17_out_payments_fulfilledB\x15\n\x13_out_fulfilled_msatB\x10\n\x0e_close_to_addrB\x14\n\x12_ignore_fee_limitsB\n\n\x08_updatesB\x19\n\x17_last_stable_connectionB\r\n\x0b_lost_stateB\x10\n\x0e_reestablishedB\x13\n\x11_last_tx_fee_msatB\x0c\n\n_direction\"\xa7\x01\n\x1fListpeerchannelsChannelsUpdates\x12\x38\n\x05local\x18\x01 \x01(\x0b\x32).cln.ListpeerchannelsChannelsUpdatesLocal\x12?\n\x06remote\x18\x02 \x01(\x0b\x32*.cln.ListpeerchannelsChannelsUpdatesRemoteH\x00\x88\x01\x01\x42\t\n\x07_remote\"\xda\x01\n$ListpeerchannelsChannelsUpdatesLocal\x12&\n\x11htlc_minimum_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11htlc_maximum_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x11\x63ltv_expiry_delta\x18\x03 \x01(\r\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\"\xdb\x01\n%ListpeerchannelsChannelsUpdatesRemote\x12&\n\x11htlc_minimum_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11htlc_maximum_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x11\x63ltv_expiry_delta\x18\x03 \x01(\r\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\"?\n\x1fListpeerchannelsChannelsFeerate\x12\r\n\x05perkw\x18\x01 \x01(\r\x12\r\n\x05perkb\x18\x02 \x01(\r\"\x8b\x02\n ListpeerchannelsChannelsInflight\x12\x14\n\x0c\x66unding_txid\x18\x01 \x01(\x0c\x12\x16\n\x0e\x66unding_outnum\x18\x02 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x03 \x01(\t\x12\'\n\x12total_funding_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10our_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x19\n\x0cscratch_txid\x18\x06 \x01(\x0cH\x00\x88\x01\x01\x12\x1a\n\rsplice_amount\x18\x07 \x01(\x12H\x01\x88\x01\x01\x42\x0f\n\r_scratch_txidB\x10\n\x0e_splice_amount\"\x9d\x02\n\x1fListpeerchannelsChannelsFunding\x12%\n\x0bpushed_msat\x18\x01 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12%\n\x10local_funds_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11remote_funds_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\'\n\rfee_paid_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\'\n\rfee_rcvd_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x42\x0e\n\x0c_pushed_msatB\x10\n\x0e_fee_paid_msatB\x10\n\x0e_fee_rcvd_msat\"]\n\x1dListpeerchannelsChannelsAlias\x12\x12\n\x05local\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06remote\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_localB\t\n\x07_remote\"\xf9\x02\n\x1dListpeerchannelsChannelsHtlcs\x12\\\n\tdirection\x18\x01 \x01(\x0e\x32I.cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection\x12\n\n\x02id\x18\x02 \x01(\x04\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06\x65xpiry\x18\x04 \x01(\r\x12\x14\n\x0cpayment_hash\x18\x05 \x01(\x0c\x12\x1a\n\rlocal_trimmed\x18\x06 \x01(\x08H\x00\x88\x01\x01\x12\x13\n\x06status\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x05state\x18\x08 \x01(\x0e\x32\x0e.cln.HtlcState\"9\n&ListpeerchannelsChannelsHtlcsDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\x42\x10\n\x0e_local_trimmedB\t\n\x07_status\"3\n\x19ListclosedchannelsRequest\x12\x0f\n\x02id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x42\x05\n\x03_id\"[\n\x1aListclosedchannelsResponse\x12=\n\x0e\x63losedchannels\x18\x01 \x03(\x0b\x32%.cln.ListclosedchannelsClosedchannels\"\xf2\t\n ListclosedchannelsClosedchannels\x12\x14\n\x07peer_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x12\n\nchannel_id\x18\x02 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x03 \x01(\tH\x01\x88\x01\x01\x12>\n\x05\x61lias\x18\x04 \x01(\x0b\x32*.cln.ListclosedchannelsClosedchannelsAliasH\x02\x88\x01\x01\x12 \n\x06opener\x18\x05 \x01(\x0e\x32\x10.cln.ChannelSide\x12%\n\x06\x63loser\x18\x06 \x01(\x0e\x32\x10.cln.ChannelSideH\x03\x88\x01\x01\x12\x0f\n\x07private\x18\x07 \x01(\x08\x12\x1f\n\x17total_local_commitments\x18\t \x01(\x04\x12 \n\x18total_remote_commitments\x18\n \x01(\x04\x12\x18\n\x10total_htlcs_sent\x18\x0b \x01(\x04\x12\x14\n\x0c\x66unding_txid\x18\x0c \x01(\x0c\x12\x16\n\x0e\x66unding_outnum\x18\r \x01(\r\x12\x0e\n\x06leased\x18\x0e \x01(\x08\x12/\n\x15\x66unding_fee_paid_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12/\n\x15\x66unding_fee_rcvd_msat\x18\x10 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12-\n\x13\x66unding_pushed_msat\x18\x11 \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x1f\n\ntotal_msat\x18\x12 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x66inal_to_us_msat\x18\x13 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0emin_to_us_msat\x18\x14 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0emax_to_us_msat\x18\x15 \x01(\x0b\x32\x0b.cln.Amount\x12!\n\x14last_commitment_txid\x18\x16 \x01(\x0cH\x07\x88\x01\x01\x12\x32\n\x18last_commitment_fee_msat\x18\x17 \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x66\n\x0b\x63lose_cause\x18\x18 \x01(\x0e\x32Q.cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause\x12#\n\x16last_stable_connection\x18\x19 \x01(\x04H\t\x88\x01\x01\"v\n+ListclosedchannelsClosedchannelsClose_cause\x12\x0b\n\x07UNKNOWN\x10\x00\x12\t\n\x05LOCAL\x10\x01\x12\x08\n\x04USER\x10\x02\x12\n\n\x06REMOTE\x10\x03\x12\x0c\n\x08PROTOCOL\x10\x04\x12\x0b\n\x07ONCHAIN\x10\x05\x42\n\n\x08_peer_idB\x13\n\x11_short_channel_idB\x08\n\x06_aliasB\t\n\x07_closerB\x18\n\x16_funding_fee_paid_msatB\x18\n\x16_funding_fee_rcvd_msatB\x16\n\x14_funding_pushed_msatB\x17\n\x15_last_commitment_txidB\x1b\n\x19_last_commitment_fee_msatB\x19\n\x17_last_stable_connection\"e\n%ListclosedchannelsClosedchannelsAlias\x12\x12\n\x05local\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06remote\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_localB\t\n\x07_remote\"L\n\x10\x44\x65\x63odepayRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"\xc7\x04\n\x11\x44\x65\x63odepayResponse\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x04\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\x04\x12\r\n\x05payee\x18\x04 \x01(\x0c\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x11\n\tsignature\x18\x07 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10\x64\x65scription_hash\x18\t \x01(\x0cH\x02\x88\x01\x01\x12\x1d\n\x15min_final_cltv_expiry\x18\n \x01(\r\x12\x1b\n\x0epayment_secret\x18\x0b \x01(\x0cH\x03\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18\x0c \x01(\x0cH\x04\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\r \x01(\x0cH\x05\x88\x01\x01\x12*\n\tfallbacks\x18\x0e \x03(\x0b\x32\x17.cln.DecodepayFallbacks\x12\"\n\x05\x65xtra\x18\x10 \x03(\x0b\x32\x13.cln.DecodepayExtra\x12-\n\x06routes\x18\x11 \x01(\x0b\x32\x18.cln.DecodeRoutehintListH\x06\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x13\n\x11_description_hashB\x11\n\x0f_payment_secretB\x0b\n\t_featuresB\x13\n\x11_payment_metadataB\t\n\x07_routes\"\xd0\x01\n\x12\x44\x65\x63odepayFallbacks\x12\x41\n\titem_type\x18\x01 \x01(\x0e\x32..cln.DecodepayFallbacks.DecodepayFallbacksType\x12\x11\n\x04\x61\x64\x64r\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0b\n\x03hex\x18\x03 \x01(\x0c\"N\n\x16\x44\x65\x63odepayFallbacksType\x12\t\n\x05P2PKH\x10\x00\x12\x08\n\x04P2SH\x10\x01\x12\n\n\x06P2WPKH\x10\x02\x12\t\n\x05P2WSH\x10\x03\x12\x08\n\x04P2TR\x10\x04\x42\x07\n\x05_addr\"+\n\x0e\x44\x65\x63odepayExtra\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\t\"\x1f\n\rDecodeRequest\x12\x0e\n\x06string\x18\x01 \x01(\t\"\xec%\n\x0e\x44\x65\x63odeResponse\x12\x31\n\titem_type\x18\x01 \x01(\x0e\x32\x1e.cln.DecodeResponse.DecodeType\x12\r\n\x05valid\x18\x02 \x01(\x08\x12\x15\n\x08offer_id\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0coffer_chains\x18\x04 \x03(\x0c\x12\x1b\n\x0eoffer_metadata\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x1b\n\x0eoffer_currency\x18\x06 \x01(\tH\x02\x88\x01\x01\x12+\n\x1ewarning_unknown_offer_currency\x18\x07 \x01(\tH\x03\x88\x01\x01\x12 \n\x13\x63urrency_minor_unit\x18\x08 \x01(\rH\x04\x88\x01\x01\x12\x19\n\x0coffer_amount\x18\t \x01(\x04H\x05\x88\x01\x01\x12+\n\x11offer_amount_msat\x18\n \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x1e\n\x11offer_description\x18\x0b \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0coffer_issuer\x18\x0c \x01(\tH\x08\x88\x01\x01\x12\x1b\n\x0eoffer_features\x18\r \x01(\x0cH\t\x88\x01\x01\x12\"\n\x15offer_absolute_expiry\x18\x0e \x01(\x04H\n\x88\x01\x01\x12\x1f\n\x12offer_quantity_max\x18\x0f \x01(\x04H\x0b\x88\x01\x01\x12+\n\x0boffer_paths\x18\x10 \x03(\x0b\x32\x16.cln.DecodeOffer_paths\x12\x1a\n\roffer_node_id\x18\x11 \x01(\x0cH\x0c\x88\x01\x01\x12*\n\x1dwarning_missing_offer_node_id\x18\x14 \x01(\tH\r\x88\x01\x01\x12.\n!warning_invalid_offer_description\x18\x15 \x01(\tH\x0e\x88\x01\x01\x12.\n!warning_missing_offer_description\x18\x16 \x01(\tH\x0f\x88\x01\x01\x12+\n\x1ewarning_invalid_offer_currency\x18\x17 \x01(\tH\x10\x88\x01\x01\x12)\n\x1cwarning_invalid_offer_issuer\x18\x18 \x01(\tH\x11\x88\x01\x01\x12\x1c\n\x0finvreq_metadata\x18\x19 \x01(\x0cH\x12\x88\x01\x01\x12\x1c\n\x0finvreq_payer_id\x18\x1a \x01(\x0cH\x13\x88\x01\x01\x12\x19\n\x0cinvreq_chain\x18\x1b \x01(\x0cH\x14\x88\x01\x01\x12,\n\x12invreq_amount_msat\x18\x1c \x01(\x0b\x32\x0b.cln.AmountH\x15\x88\x01\x01\x12\x1c\n\x0finvreq_features\x18\x1d \x01(\x0cH\x16\x88\x01\x01\x12\x1c\n\x0finvreq_quantity\x18\x1e \x01(\x04H\x17\x88\x01\x01\x12\x1e\n\x11invreq_payer_note\x18\x1f \x01(\tH\x18\x88\x01\x01\x12&\n\x19invreq_recurrence_counter\x18  \x01(\rH\x19\x88\x01\x01\x12$\n\x17invreq_recurrence_start\x18! \x01(\rH\x1a\x88\x01\x01\x12,\n\x1fwarning_missing_invreq_metadata\x18# \x01(\tH\x1b\x88\x01\x01\x12,\n\x1fwarning_missing_invreq_payer_id\x18$ \x01(\tH\x1c\x88\x01\x01\x12.\n!warning_invalid_invreq_payer_note\x18% \x01(\tH\x1d\x88\x01\x01\x12\x36\n)warning_missing_invoice_request_signature\x18& \x01(\tH\x1e\x88\x01\x01\x12\x36\n)warning_invalid_invoice_request_signature\x18\' \x01(\tH\x1f\x88\x01\x01\x12\x1f\n\x12invoice_created_at\x18) \x01(\x04H \x88\x01\x01\x12$\n\x17invoice_relative_expiry\x18* \x01(\rH!\x88\x01\x01\x12!\n\x14invoice_payment_hash\x18+ \x01(\x0cH\"\x88\x01\x01\x12-\n\x13invoice_amount_msat\x18, \x01(\x0b\x32\x0b.cln.AmountH#\x88\x01\x01\x12\x37\n\x11invoice_fallbacks\x18- \x03(\x0b\x32\x1c.cln.DecodeInvoice_fallbacks\x12\x1d\n\x10invoice_features\x18. \x01(\x0cH$\x88\x01\x01\x12\x1c\n\x0finvoice_node_id\x18/ \x01(\x0cH%\x88\x01\x01\x12(\n\x1binvoice_recurrence_basetime\x18\x30 \x01(\x04H&\x88\x01\x01\x12*\n\x1dwarning_missing_invoice_paths\x18\x32 \x01(\tH\'\x88\x01\x01\x12/\n\"warning_missing_invoice_blindedpay\x18\x33 \x01(\tH(\x88\x01\x01\x12/\n\"warning_missing_invoice_created_at\x18\x34 \x01(\tH)\x88\x01\x01\x12\x31\n$warning_missing_invoice_payment_hash\x18\x35 \x01(\tH*\x88\x01\x01\x12+\n\x1ewarning_missing_invoice_amount\x18\x36 \x01(\tH+\x88\x01\x01\x12\x38\n+warning_missing_invoice_recurrence_basetime\x18\x37 \x01(\tH,\x88\x01\x01\x12,\n\x1fwarning_missing_invoice_node_id\x18\x38 \x01(\tH-\x88\x01\x01\x12.\n!warning_missing_invoice_signature\x18\x39 \x01(\tH.\x88\x01\x01\x12.\n!warning_invalid_invoice_signature\x18: \x01(\tH/\x88\x01\x01\x12\'\n\tfallbacks\x18; \x03(\x0b\x32\x14.cln.DecodeFallbacks\x12\x17\n\ncreated_at\x18< \x01(\x04H0\x88\x01\x01\x12\x13\n\x06\x65xpiry\x18= \x01(\x04H1\x88\x01\x01\x12\x12\n\x05payee\x18> \x01(\x0cH2\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18? \x01(\x0cH3\x88\x01\x01\x12\x1d\n\x10\x64\x65scription_hash\x18@ \x01(\x0cH4\x88\x01\x01\x12\"\n\x15min_final_cltv_expiry\x18\x41 \x01(\rH5\x88\x01\x01\x12\x1b\n\x0epayment_secret\x18\x42 \x01(\x0cH6\x88\x01\x01\x12\x1d\n\x10payment_metadata\x18\x43 \x01(\x0cH7\x88\x01\x01\x12\x1f\n\x05\x65xtra\x18\x45 \x03(\x0b\x32\x10.cln.DecodeExtra\x12\x16\n\tunique_id\x18\x46 \x01(\tH8\x88\x01\x01\x12\x14\n\x07version\x18G \x01(\tH9\x88\x01\x01\x12\x13\n\x06string\x18H \x01(\tH:\x88\x01\x01\x12-\n\x0crestrictions\x18I \x03(\x0b\x32\x17.cln.DecodeRestrictions\x12&\n\x19warning_rune_invalid_utf8\x18J \x01(\tH;\x88\x01\x01\x12\x10\n\x03hex\x18K \x01(\x0cH<\x88\x01\x01\x12\x16\n\tdecrypted\x18L \x01(\x0cH=\x88\x01\x01\x12\x16\n\tsignature\x18M \x01(\tH>\x88\x01\x01\x12\x15\n\x08\x63urrency\x18N \x01(\tH?\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18O \x01(\x0b\x32\x0b.cln.AmountH@\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18P \x01(\tHA\x88\x01\x01\x12\x15\n\x08\x66\x65\x61tures\x18Q \x01(\x0cHB\x88\x01\x01\x12-\n\x06routes\x18R \x01(\x0b\x32\x18.cln.DecodeRoutehintListHC\x88\x01\x01\x12\x1c\n\x0foffer_issuer_id\x18S \x01(\x0cHD\x88\x01\x01\x12,\n\x1fwarning_missing_offer_issuer_id\x18T \x01(\tHE\x88\x01\x01\x12-\n\x0cinvreq_paths\x18U \x03(\x0b\x32\x17.cln.DecodeInvreq_paths\x12\'\n\x1awarning_empty_blinded_path\x18V \x01(\tHF\x88\x01\x01\"\x83\x01\n\nDecodeType\x12\x10\n\x0c\x42OLT12_OFFER\x10\x00\x12\x12\n\x0e\x42OLT12_INVOICE\x10\x01\x12\x1a\n\x16\x42OLT12_INVOICE_REQUEST\x10\x02\x12\x12\n\x0e\x42OLT11_INVOICE\x10\x03\x12\x08\n\x04RUNE\x10\x04\x12\x15\n\x11\x45MERGENCY_RECOVER\x10\x05\x42\x0b\n\t_offer_idB\x11\n\x0f_offer_metadataB\x11\n\x0f_offer_currencyB!\n\x1f_warning_unknown_offer_currencyB\x16\n\x14_currency_minor_unitB\x0f\n\r_offer_amountB\x14\n\x12_offer_amount_msatB\x14\n\x12_offer_descriptionB\x0f\n\r_offer_issuerB\x11\n\x0f_offer_featuresB\x18\n\x16_offer_absolute_expiryB\x15\n\x13_offer_quantity_maxB\x10\n\x0e_offer_node_idB \n\x1e_warning_missing_offer_node_idB$\n\"_warning_invalid_offer_descriptionB$\n\"_warning_missing_offer_descriptionB!\n\x1f_warning_invalid_offer_currencyB\x1f\n\x1d_warning_invalid_offer_issuerB\x12\n\x10_invreq_metadataB\x12\n\x10_invreq_payer_idB\x0f\n\r_invreq_chainB\x15\n\x13_invreq_amount_msatB\x12\n\x10_invreq_featuresB\x12\n\x10_invreq_quantityB\x14\n\x12_invreq_payer_noteB\x1c\n\x1a_invreq_recurrence_counterB\x1a\n\x18_invreq_recurrence_startB\"\n _warning_missing_invreq_metadataB\"\n _warning_missing_invreq_payer_idB$\n\"_warning_invalid_invreq_payer_noteB,\n*_warning_missing_invoice_request_signatureB,\n*_warning_invalid_invoice_request_signatureB\x15\n\x13_invoice_created_atB\x1a\n\x18_invoice_relative_expiryB\x17\n\x15_invoice_payment_hashB\x16\n\x14_invoice_amount_msatB\x13\n\x11_invoice_featuresB\x12\n\x10_invoice_node_idB\x1e\n\x1c_invoice_recurrence_basetimeB \n\x1e_warning_missing_invoice_pathsB%\n#_warning_missing_invoice_blindedpayB%\n#_warning_missing_invoice_created_atB\'\n%_warning_missing_invoice_payment_hashB!\n\x1f_warning_missing_invoice_amountB.\n,_warning_missing_invoice_recurrence_basetimeB\"\n _warning_missing_invoice_node_idB$\n\"_warning_missing_invoice_signatureB$\n\"_warning_invalid_invoice_signatureB\r\n\x0b_created_atB\t\n\x07_expiryB\x08\n\x06_payeeB\x0f\n\r_payment_hashB\x13\n\x11_description_hashB\x18\n\x16_min_final_cltv_expiryB\x11\n\x0f_payment_secretB\x13\n\x11_payment_metadataB\x0c\n\n_unique_idB\n\n\x08_versionB\t\n\x07_stringB\x1c\n\x1a_warning_rune_invalid_utf8B\x06\n\x04_hexB\x0c\n\n_decryptedB\x0c\n\n_signatureB\x0b\n\t_currencyB\x0e\n\x0c_amount_msatB\x0e\n\x0c_descriptionB\x0b\n\t_featuresB\t\n\x07_routesB\x12\n\x10_offer_issuer_idB\"\n _warning_missing_offer_issuer_idB\x1d\n\x1b_warning_empty_blinded_path\"\xed\x01\n\x11\x44\x65\x63odeOffer_paths\x12\x1a\n\rfirst_node_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x15\n\x08\x62linding\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x1b\n\x0e\x66irst_scid_dir\x18\x04 \x01(\rH\x02\x88\x01\x01\x12\x17\n\nfirst_scid\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0e\x66irst_path_key\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x42\x10\n\x0e_first_node_idB\x0b\n\t_blindingB\x11\n\x0f_first_scid_dirB\r\n\x0b_first_scidB\x11\n\x0f_first_path_key\"\x8a\x01\n\x1f\x44\x65\x63odeOffer_recurrencePaywindow\x12\x16\n\x0eseconds_before\x18\x01 \x01(\r\x12\x15\n\rseconds_after\x18\x02 \x01(\r\x12 \n\x13proportional_amount\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\x16\n\x14_proportional_amount\"\x99\x02\n\x12\x44\x65\x63odeInvreq_paths\x12\x1b\n\x0e\x66irst_scid_dir\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x15\n\x08\x62linding\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x1a\n\rfirst_node_id\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x17\n\nfirst_scid\x18\x04 \x01(\tH\x03\x88\x01\x01\x12)\n\x04path\x18\x05 \x03(\x0b\x32\x1b.cln.DecodeInvreq_pathsPath\x12\x1b\n\x0e\x66irst_path_key\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x42\x11\n\x0f_first_scid_dirB\x0b\n\t_blindingB\x10\n\x0e_first_node_idB\r\n\x0b_first_scidB\x11\n\x0f_first_path_key\"S\n\x16\x44\x65\x63odeInvreq_pathsPath\x12\x17\n\x0f\x62linded_node_id\x18\x01 \x01(\x0c\x12 \n\x18\x65ncrypted_recipient_data\x18\x02 \x01(\x0c\"T\n\x17\x44\x65\x63odeInvoice_pathsPath\x12\x17\n\x0f\x62linded_node_id\x18\x01 \x01(\x0c\x12 \n\x18\x65ncrypted_recipient_data\x18\x02 \x01(\x0c\"Y\n\x17\x44\x65\x63odeInvoice_fallbacks\x12\x0f\n\x07version\x18\x01 \x01(\r\x12\x0b\n\x03hex\x18\x02 \x01(\x0c\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_address\"\xaa\x02\n\x0f\x44\x65\x63odeFallbacks\x12\x36\n)warning_invoice_fallbacks_version_invalid\x18\x01 \x01(\tH\x00\x88\x01\x01\x12;\n\titem_type\x18\x02 \x01(\x0e\x32(.cln.DecodeFallbacks.DecodeFallbacksType\x12\x11\n\x04\x61\x64\x64r\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0b\n\x03hex\x18\x04 \x01(\x0c\"K\n\x13\x44\x65\x63odeFallbacksType\x12\t\n\x05P2PKH\x10\x00\x12\x08\n\x04P2SH\x10\x01\x12\n\n\x06P2WPKH\x10\x02\x12\t\n\x05P2WSH\x10\x03\x12\x08\n\x04P2TR\x10\x04\x42,\n*_warning_invoice_fallbacks_version_invalidB\x07\n\x05_addr\"(\n\x0b\x44\x65\x63odeExtra\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\t\";\n\x12\x44\x65\x63odeRestrictions\x12\x14\n\x0c\x61lternatives\x18\x01 \x03(\t\x12\x0f\n\x07summary\x18\x02 \x01(\t\"\xc2\x01\n\rDelpayRequest\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12/\n\x06status\x18\x02 \x01(\x0e\x32\x1f.cln.DelpayRequest.DelpayStatus\x12\x13\n\x06partid\x18\x03 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07groupid\x18\x04 \x01(\x04H\x01\x88\x01\x01\"(\n\x0c\x44\x65lpayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x42\t\n\x07_partidB\n\n\x08_groupid\"7\n\x0e\x44\x65lpayResponse\x12%\n\x08payments\x18\x01 \x03(\x0b\x32\x13.cln.DelpayPayments\"\xcb\x05\n\x0e\x44\x65lpayPayments\x12\x1a\n\rcreated_index\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\n\n\x02id\x18\x02 \x01(\x04\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x38\n\x06status\x18\x04 \x01(\x0e\x32(.cln.DelpayPayments.DelpayPaymentsStatus\x12%\n\x10\x61mount_sent_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x13\n\x06partid\x18\x06 \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65stination\x18\x07 \x01(\x0cH\x02\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x12\n\ncreated_at\x18\t \x01(\x04\x12\x1a\n\rupdated_index\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x07groupid\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\x12\x12\n\x05label\x18\x0e \x01(\tH\x08\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x0f \x01(\tH\t\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x10 \x01(\tH\n\x88\x01\x01\x12\x17\n\nerroronion\x18\x11 \x01(\x0cH\x0b\x88\x01\x01\"=\n\x14\x44\x65lpayPaymentsStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x10\n\x0e_created_indexB\t\n\x07_partidB\x0e\n\x0c_destinationB\x0e\n\x0c_amount_msatB\x10\n\x0e_updated_indexB\x0f\n\r_completed_atB\n\n\x08_groupidB\x13\n\x11_payment_preimageB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\r\n\x0b_erroronion\"\xb3\x01\n\x11\x44\x65lforwardRequest\x12\x12\n\nin_channel\x18\x01 \x01(\t\x12\x12\n\nin_htlc_id\x18\x02 \x01(\x04\x12\x37\n\x06status\x18\x03 \x01(\x0e\x32\'.cln.DelforwardRequest.DelforwardStatus\"=\n\x10\x44\x65lforwardStatus\x12\x0b\n\x07SETTLED\x10\x00\x12\x10\n\x0cLOCAL_FAILED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"\x14\n\x12\x44\x65lforwardResponse\"\'\n\x13\x44isableofferRequest\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\"\x88\x01\n\x14\x44isableofferResponse\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"&\n\x12\x45nableofferRequest\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\"\x87\x01\n\x13\x45nableofferResponse\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"=\n\x11\x44isconnectRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\x05\x66orce\x18\x02 \x01(\x08H\x00\x88\x01\x01\x42\x08\n\x06_force\"\x14\n\x12\x44isconnectResponse\"k\n\x0f\x46\x65\x65ratesRequest\x12\x31\n\x05style\x18\x01 \x01(\x0e\x32\".cln.FeeratesRequest.FeeratesStyle\"%\n\rFeeratesStyle\x12\t\n\x05PERKB\x10\x00\x12\t\n\x05PERKW\x10\x01\"\x9c\x02\n\x10\x46\x65\x65ratesResponse\x12%\n\x18warning_missing_feerates\x18\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x05perkb\x18\x02 \x01(\x0b\x32\x12.cln.FeeratesPerkbH\x01\x88\x01\x01\x12&\n\x05perkw\x18\x03 \x01(\x0b\x32\x12.cln.FeeratesPerkwH\x02\x88\x01\x01\x12\x46\n\x15onchain_fee_estimates\x18\x04 \x01(\x0b\x32\".cln.FeeratesOnchain_fee_estimatesH\x03\x88\x01\x01\x42\x1b\n\x19_warning_missing_feeratesB\x08\n\x06_perkbB\x08\n\x06_perkwB\x18\n\x16_onchain_fee_estimates\"\xd3\x03\n\rFeeratesPerkb\x12\x16\n\x0emin_acceptable\x18\x01 \x01(\r\x12\x16\n\x0emax_acceptable\x18\x02 \x01(\r\x12\x14\n\x07opening\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmutual_close\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1d\n\x10unilateral_close\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x1a\n\rdelayed_to_us\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x1c\n\x0fhtlc_resolution\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07penalty\x18\x08 \x01(\rH\x05\x88\x01\x01\x12.\n\testimates\x18\t \x03(\x0b\x32\x1b.cln.FeeratesPerkbEstimates\x12\x12\n\x05\x66loor\x18\n \x01(\rH\x06\x88\x01\x01\x12$\n\x17unilateral_anchor_close\x18\x0b \x01(\rH\x07\x88\x01\x01\x42\n\n\x08_openingB\x0f\n\r_mutual_closeB\x13\n\x11_unilateral_closeB\x10\n\x0e_delayed_to_usB\x12\n\x10_htlc_resolutionB\n\n\x08_penaltyB\x08\n\x06_floorB\x1a\n\x18_unilateral_anchor_close\"W\n\x16\x46\x65\x65ratesPerkbEstimates\x12\x12\n\nblockcount\x18\x01 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x02 \x01(\r\x12\x18\n\x10smoothed_feerate\x18\x03 \x01(\r\"\xd3\x03\n\rFeeratesPerkw\x12\x16\n\x0emin_acceptable\x18\x01 \x01(\r\x12\x16\n\x0emax_acceptable\x18\x02 \x01(\r\x12\x14\n\x07opening\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmutual_close\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1d\n\x10unilateral_close\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x1a\n\rdelayed_to_us\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x1c\n\x0fhtlc_resolution\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07penalty\x18\x08 \x01(\rH\x05\x88\x01\x01\x12.\n\testimates\x18\t \x03(\x0b\x32\x1b.cln.FeeratesPerkwEstimates\x12\x12\n\x05\x66loor\x18\n \x01(\rH\x06\x88\x01\x01\x12$\n\x17unilateral_anchor_close\x18\x0b \x01(\rH\x07\x88\x01\x01\x42\n\n\x08_openingB\x0f\n\r_mutual_closeB\x13\n\x11_unilateral_closeB\x10\n\x0e_delayed_to_usB\x12\n\x10_htlc_resolutionB\n\n\x08_penaltyB\x08\n\x06_floorB\x1a\n\x18_unilateral_anchor_close\"W\n\x16\x46\x65\x65ratesPerkwEstimates\x12\x12\n\nblockcount\x18\x01 \x01(\r\x12\x0f\n\x07\x66\x65\x65rate\x18\x02 \x01(\r\x12\x18\n\x10smoothed_feerate\x18\x03 \x01(\r\"\x9b\x02\n\x1d\x46\x65\x65ratesOnchain_fee_estimates\x12 \n\x18opening_channel_satoshis\x18\x01 \x01(\x04\x12\x1d\n\x15mutual_close_satoshis\x18\x02 \x01(\x04\x12!\n\x19unilateral_close_satoshis\x18\x03 \x01(\x04\x12\x1d\n\x15htlc_timeout_satoshis\x18\x04 \x01(\x04\x12\x1d\n\x15htlc_success_satoshis\x18\x05 \x01(\x04\x12\x30\n#unilateral_close_nonanchor_satoshis\x18\x06 \x01(\x04H\x00\x88\x01\x01\x42&\n$_unilateral_close_nonanchor_satoshis\"\x99\x03\n\x13\x46\x65tchinvoiceRequest\x12\r\n\x05offer\x18\x01 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x15\n\x08quantity\x18\x03 \x01(\x04H\x01\x88\x01\x01\x12\x1f\n\x12recurrence_counter\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x1d\n\x10recurrence_start\x18\x05 \x01(\x01H\x03\x88\x01\x01\x12\x1d\n\x10recurrence_label\x18\x06 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x07timeout\x18\x07 \x01(\x01H\x05\x88\x01\x01\x12\x17\n\npayer_note\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x1b\n\x0epayer_metadata\x18\t \x01(\tH\x07\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\x0b\n\t_quantityB\x15\n\x13_recurrence_counterB\x13\n\x11_recurrence_startB\x13\n\x11_recurrence_labelB\n\n\x08_timeoutB\r\n\x0b_payer_noteB\x11\n\x0f_payer_metadata\"\x9a\x01\n\x14\x46\x65tchinvoiceResponse\x12\x0f\n\x07invoice\x18\x01 \x01(\t\x12)\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x18.cln.FetchinvoiceChanges\x12\x36\n\x0bnext_period\x18\x03 \x01(\x0b\x32\x1c.cln.FetchinvoiceNext_periodH\x00\x88\x01\x01\x42\x0e\n\x0c_next_period\"\x82\x02\n\x13\x46\x65tchinvoiceChanges\x12!\n\x14\x64\x65scription_appended\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0evendor_removed\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06vendor\x18\x04 \x01(\tH\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x42\x17\n\x15_description_appendedB\x0e\n\x0c_descriptionB\x11\n\x0f_vendor_removedB\t\n\x07_vendorB\x0e\n\x0c_amount_msat\"~\n\x17\x46\x65tchinvoiceNext_period\x12\x0f\n\x07\x63ounter\x18\x01 \x01(\x04\x12\x11\n\tstarttime\x18\x02 \x01(\x04\x12\x0f\n\x07\x65ndtime\x18\x03 \x01(\x04\x12\x17\n\x0fpaywindow_start\x18\x04 \x01(\x04\x12\x15\n\rpaywindow_end\x18\x05 \x01(\x04\"\'\n\x19\x46undchannel_cancelRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\"/\n\x1a\x46undchannel_cancelResponse\x12\x11\n\tcancelled\x18\x01 \x01(\t\"7\n\x1b\x46undchannel_completeRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"O\n\x1c\x46undchannel_completeResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x1b\n\x13\x63ommitments_secured\x18\x02 \x01(\x08\"\xfb\x03\n\x12\x46undchannelRequest\x12 \n\x06\x61mount\x18\x01 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12#\n\tpush_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\tH\x03\x88\x01\x01\x12%\n\x0brequest_amt\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x08 \x01(\tH\x05\x88\x01\x01\x12\n\n\x02id\x18\t \x01(\x0c\x12\x14\n\x07minconf\x18\n \x01(\rH\x06\x88\x01\x01\x12\x1c\n\x05utxos\x18\x0b \x03(\x0b\x32\r.cln.Outpoint\x12\x15\n\x08mindepth\x18\x0c \x01(\rH\x07\x88\x01\x01\x12!\n\x07reserve\x18\r \x01(\x0b\x32\x0b.cln.AmountH\x08\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\x0e \x03(\rB\n\n\x08_feerateB\x0b\n\t_announceB\x0c\n\n_push_msatB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_leaseB\n\n\x08_minconfB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xe5\x01\n\x13\x46undchannelResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x0e\n\x06outnum\x18\x03 \x01(\r\x12\x12\n\nchannel_id\x18\x04 \x01(\x0c\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\x0cH\x00\x88\x01\x01\x12\x15\n\x08mindepth\x18\x06 \x01(\rH\x01\x88\x01\x01\x12\x37\n\x0c\x63hannel_type\x18\x07 \x01(\x0b\x32\x1c.cln.FundchannelChannel_typeH\x02\x88\x01\x01\x42\x0b\n\t_close_toB\x0b\n\t_mindepthB\x0f\n\r_channel_type\"L\n\x17\x46undchannelChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\xd7\x02\n\x18\x46undchannel_startRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x1b\n\x06\x61mount\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\"\n\x07\x66\x65\x65rate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x04 \x01(\x08H\x01\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\tH\x02\x88\x01\x01\x12#\n\tpush_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x15\n\x08mindepth\x18\x07 \x01(\rH\x04\x88\x01\x01\x12!\n\x07reserve\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\t \x03(\rB\n\n\x08_feerateB\x0b\n\t_announceB\x0b\n\t_close_toB\x0c\n\n_push_msatB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xf9\x01\n\x19\x46undchannel_startResponse\x12\x17\n\x0f\x66unding_address\x18\x01 \x01(\t\x12\x14\n\x0cscriptpubkey\x18\x02 \x01(\x0c\x12=\n\x0c\x63hannel_type\x18\x03 \x01(\x0b\x32\".cln.Fundchannel_startChannel_typeH\x00\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x04 \x01(\x0cH\x01\x88\x01\x01\x12\x15\n\rwarning_usage\x18\x05 \x01(\t\x12\x15\n\x08mindepth\x18\x06 \x01(\rH\x02\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_toB\x0b\n\t_mindepth\"R\n\x1d\x46undchannel_startChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\x9d\x01\n\rGetlogRequest\x12\x32\n\x05level\x18\x01 \x01(\x0e\x32\x1e.cln.GetlogRequest.GetlogLevelH\x00\x88\x01\x01\"N\n\x0bGetlogLevel\x12\n\n\x06\x42ROKEN\x10\x00\x12\x0b\n\x07UNUSUAL\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\t\n\x05\x44\x45\x42UG\x10\x03\x12\x06\n\x02IO\x10\x04\x12\t\n\x05TRACE\x10\x05\x42\x08\n\x06_level\"h\n\x0eGetlogResponse\x12\x12\n\ncreated_at\x18\x01 \x01(\t\x12\x12\n\nbytes_used\x18\x02 \x01(\r\x12\x11\n\tbytes_max\x18\x03 \x01(\r\x12\x1b\n\x03log\x18\x04 \x03(\x0b\x32\x0e.cln.GetlogLog\"\xe8\x02\n\tGetlogLog\x12/\n\titem_type\x18\x01 \x01(\x0e\x32\x1c.cln.GetlogLog.GetlogLogType\x12\x18\n\x0bnum_skipped\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x11\n\x04time\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03log\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x07node_id\x18\x06 \x01(\x0cH\x04\x88\x01\x01\x12\x11\n\x04\x64\x61ta\x18\x07 \x01(\x0cH\x05\x88\x01\x01\"l\n\rGetlogLogType\x12\x0b\n\x07SKIPPED\x10\x00\x12\n\n\x06\x42ROKEN\x10\x01\x12\x0b\n\x07UNUSUAL\x10\x02\x12\x08\n\x04INFO\x10\x03\x12\t\n\x05\x44\x45\x42UG\x10\x04\x12\t\n\x05IO_IN\x10\x05\x12\n\n\x06IO_OUT\x10\x06\x12\t\n\x05TRACE\x10\x07\x42\x0e\n\x0c_num_skippedB\x07\n\x05_timeB\t\n\x07_sourceB\x06\n\x04_logB\n\n\x08_node_idB\x07\n\x05_data\"\xd9\x08\n\x13\x46underupdateRequest\x12@\n\x06policy\x18\x01 \x01(\x0e\x32+.cln.FunderupdateRequest.FunderupdatePolicyH\x00\x88\x01\x01\x12$\n\npolicy_mod\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x18\n\x0bleases_only\x18\x03 \x01(\x08H\x02\x88\x01\x01\x12\x30\n\x16min_their_funding_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x30\n\x16max_their_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12.\n\x14per_channel_min_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12.\n\x14per_channel_max_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12+\n\x11reserve_tank_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x07\x88\x01\x01\x12\x19\n\x0c\x66uzz_percent\x18\t \x01(\rH\x08\x88\x01\x01\x12\x1d\n\x10\x66und_probability\x18\n \x01(\rH\t\x88\x01\x01\x12-\n\x13lease_fee_base_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x12\x1c\n\x0flease_fee_basis\x18\x0c \x01(\rH\x0b\x88\x01\x01\x12\x1b\n\x0e\x66unding_weight\x18\r \x01(\rH\x0c\x88\x01\x01\x12\x33\n\x19\x63hannel_fee_max_base_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\r\x88\x01\x01\x12\x35\n(channel_fee_max_proportional_thousandths\x18\x0f \x01(\rH\x0e\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x10 \x01(\x0cH\x0f\x88\x01\x01\"9\n\x12\x46underupdatePolicy\x12\t\n\x05MATCH\x10\x00\x12\r\n\tAVAILABLE\x10\x01\x12\t\n\x05\x46IXED\x10\x02\x42\t\n\x07_policyB\r\n\x0b_policy_modB\x0e\n\x0c_leases_onlyB\x19\n\x17_min_their_funding_msatB\x19\n\x17_max_their_funding_msatB\x17\n\x15_per_channel_min_msatB\x17\n\x15_per_channel_max_msatB\x14\n\x12_reserve_tank_msatB\x0f\n\r_fuzz_percentB\x13\n\x11_fund_probabilityB\x16\n\x14_lease_fee_base_msatB\x12\n\x10_lease_fee_basisB\x11\n\x0f_funding_weightB\x1c\n\x1a_channel_fee_max_base_msatB+\n)_channel_fee_max_proportional_thousandthsB\x10\n\x0e_compact_lease\"\xdf\x06\n\x14\x46underupdateResponse\x12\x0f\n\x07summary\x18\x01 \x01(\t\x12<\n\x06policy\x18\x02 \x01(\x0e\x32,.cln.FunderupdateResponse.FunderupdatePolicy\x12\x12\n\npolicy_mod\x18\x03 \x01(\r\x12\x13\n\x0bleases_only\x18\x04 \x01(\x08\x12+\n\x16min_their_funding_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x16max_their_funding_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12)\n\x14per_channel_min_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12)\n\x14per_channel_max_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x11reserve_tank_msat\x18\t \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66uzz_percent\x18\n \x01(\r\x12\x18\n\x10\x66und_probability\x18\x0b \x01(\r\x12-\n\x13lease_fee_base_msat\x18\x0c \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x1c\n\x0flease_fee_basis\x18\r \x01(\rH\x01\x88\x01\x01\x12\x1b\n\x0e\x66unding_weight\x18\x0e \x01(\rH\x02\x88\x01\x01\x12\x33\n\x19\x63hannel_fee_max_base_msat\x18\x0f \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x35\n(channel_fee_max_proportional_thousandths\x18\x10 \x01(\rH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x11 \x01(\x0cH\x05\x88\x01\x01\"9\n\x12\x46underupdatePolicy\x12\t\n\x05MATCH\x10\x00\x12\r\n\tAVAILABLE\x10\x01\x12\t\n\x05\x46IXED\x10\x02\x42\x16\n\x14_lease_fee_base_msatB\x12\n\x10_lease_fee_basisB\x11\n\x0f_funding_weightB\x1c\n\x1a_channel_fee_max_base_msatB+\n)_channel_fee_max_proportional_thousandthsB\x10\n\x0e_compact_lease\"\xec\x01\n\x0fGetrouteRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x12\n\nriskfactor\x18\x03 \x01(\x04\x12\x11\n\x04\x63ltv\x18\x04 \x01(\rH\x00\x88\x01\x01\x12\x13\n\x06\x66romid\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x12\x18\n\x0b\x66uzzpercent\x18\x06 \x01(\rH\x02\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\x07 \x03(\t\x12\x14\n\x07maxhops\x18\x08 \x01(\rH\x03\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\t \x01(\x0b\x32\x0b.cln.AmountB\x07\n\x05_cltvB\t\n\x07_fromidB\x0e\n\x0c_fuzzpercentB\n\n\x08_maxhops\"5\n\x10GetrouteResponse\x12!\n\x05route\x18\x01 \x03(\x0b\x32\x12.cln.GetrouteRoute\"\xc5\x01\n\rGetrouteRoute\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0f\n\x07\x63hannel\x18\x02 \x01(\t\x12\x11\n\tdirection\x18\x03 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\r\n\x05\x64\x65lay\x18\x05 \x01(\r\x12\x34\n\x05style\x18\x06 \x01(\x0e\x32%.cln.GetrouteRoute.GetrouteRouteStyle\"\x1d\n\x12GetrouteRouteStyle\x12\x07\n\x03TLV\x10\x00\"t\n\x14ListaddressesRequest\x12\x14\n\x07\x61\x64\x64ress\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05start\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x12\n\x05limit\x18\x03 \x01(\rH\x02\x88\x01\x01\x42\n\n\x08_addressB\x08\n\x06_startB\x08\n\x06_limit\"G\n\x15ListaddressesResponse\x12.\n\taddresses\x18\x01 \x03(\x0b\x32\x1b.cln.ListaddressesAddresses\"d\n\x16ListaddressesAddresses\x12\x0e\n\x06keyidx\x18\x01 \x01(\x04\x12\x13\n\x06\x62\x65\x63h32\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04p2tr\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\t\n\x07_bech32B\x07\n\x05_p2tr\"\xb7\x03\n\x13ListforwardsRequest\x12@\n\x06status\x18\x01 \x01(\x0e\x32+.cln.ListforwardsRequest.ListforwardsStatusH\x00\x88\x01\x01\x12\x17\n\nin_channel\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0bout_channel\x18\x03 \x01(\tH\x02\x88\x01\x01\x12>\n\x05index\x18\x04 \x01(\x0e\x32*.cln.ListforwardsRequest.ListforwardsIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\"L\n\x12ListforwardsStatus\x12\x0b\n\x07OFFERED\x10\x00\x12\x0b\n\x07SETTLED\x10\x01\x12\x10\n\x0cLOCAL_FAILED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"-\n\x11ListforwardsIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_statusB\r\n\x0b_in_channelB\x0e\n\x0c_out_channelB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"C\n\x14ListforwardsResponse\x12+\n\x08\x66orwards\x18\x01 \x03(\x0b\x32\x19.cln.ListforwardsForwards\"\xb4\x06\n\x14ListforwardsForwards\x12\x12\n\nin_channel\x18\x01 \x01(\t\x12\x1c\n\x07in_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x44\n\x06status\x18\x03 \x01(\x0e\x32\x34.cln.ListforwardsForwards.ListforwardsForwardsStatus\x12\x15\n\rreceived_time\x18\x04 \x01(\x01\x12\x18\n\x0bout_channel\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\"\n\x08\x66\x65\x65_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\"\n\x08out_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12G\n\x05style\x18\t \x01(\x0e\x32\x33.cln.ListforwardsForwards.ListforwardsForwardsStyleH\x03\x88\x01\x01\x12\x17\n\nin_htlc_id\x18\n \x01(\x04H\x04\x88\x01\x01\x12\x18\n\x0bout_htlc_id\x18\x0b \x01(\x04H\x05\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1a\n\rupdated_index\x18\r \x01(\x04H\x07\x88\x01\x01\x12\x1a\n\rresolved_time\x18\x0e \x01(\x01H\x08\x88\x01\x01\x12\x15\n\x08\x66\x61ilcode\x18\x0f \x01(\rH\t\x88\x01\x01\x12\x17\n\nfailreason\x18\x10 \x01(\tH\n\x88\x01\x01\"T\n\x1aListforwardsForwardsStatus\x12\x0b\n\x07OFFERED\x10\x00\x12\x0b\n\x07SETTLED\x10\x01\x12\x10\n\x0cLOCAL_FAILED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"0\n\x19ListforwardsForwardsStyle\x12\n\n\x06LEGACY\x10\x00\x12\x07\n\x03TLV\x10\x01\x42\x0e\n\x0c_out_channelB\x0b\n\t_fee_msatB\x0b\n\t_out_msatB\x08\n\x06_styleB\r\n\x0b_in_htlc_idB\x0e\n\x0c_out_htlc_idB\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x10\n\x0e_resolved_timeB\x0b\n\t_failcodeB\r\n\x0b_failreason\"a\n\x11ListoffersRequest\x12\x15\n\x08offer_id\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x18\n\x0b\x61\x63tive_only\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x0b\n\t_offer_idB\x0e\n\x0c_active_only\";\n\x12ListoffersResponse\x12%\n\x06offers\x18\x01 \x03(\x0b\x32\x15.cln.ListoffersOffers\"\x84\x01\n\x10ListoffersOffers\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x12\n\x05label\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\"\x84\x03\n\x0fListpaysRequest\x12\x13\n\x06\x62olt11\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x02 \x01(\x0cH\x01\x88\x01\x01\x12\x38\n\x06status\x18\x03 \x01(\x0e\x32#.cln.ListpaysRequest.ListpaysStatusH\x02\x88\x01\x01\x12\x36\n\x05index\x18\x04 \x01(\x0e\x32\".cln.ListpaysRequest.ListpaysIndexH\x03\x88\x01\x01\x12\x12\n\x05start\x18\x05 \x01(\x04H\x04\x88\x01\x01\x12\x12\n\x05limit\x18\x06 \x01(\rH\x05\x88\x01\x01\"7\n\x0eListpaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0c\n\x08\x43OMPLETE\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\")\n\rListpaysIndex\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x42\t\n\x07_bolt11B\x0f\n\r_payment_hashB\t\n\x07_statusB\x08\n\x06_indexB\x08\n\x06_startB\x08\n\x06_limit\"3\n\x10ListpaysResponse\x12\x1f\n\x04pays\x18\x01 \x03(\x0b\x32\x11.cln.ListpaysPays\"\xdb\x05\n\x0cListpaysPays\x12\x14\n\x0cpayment_hash\x18\x01 \x01(\x0c\x12\x34\n\x06status\x18\x02 \x01(\x0e\x32$.cln.ListpaysPays.ListpaysPaysStatus\x12\x18\n\x0b\x64\x65stination\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x12\n\ncreated_at\x18\x04 \x01(\x04\x12\x12\n\x05label\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x07 \x01(\tH\x03\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12*\n\x10\x61mount_sent_msat\x18\t \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x17\n\nerroronion\x18\n \x01(\x0cH\x06\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0c\x63ompleted_at\x18\x0c \x01(\x04H\x08\x88\x01\x01\x12\x15\n\x08preimage\x18\r \x01(\x0cH\t\x88\x01\x01\x12\x1c\n\x0fnumber_of_parts\x18\x0e \x01(\x04H\n\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x0f \x01(\x04H\x0b\x88\x01\x01\x12\x1a\n\rupdated_index\x18\x10 \x01(\x04H\x0c\x88\x01\x01\";\n\x12ListpaysPaysStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\x0c\n\x08\x43OMPLETE\x10\x02\x42\x0e\n\x0c_destinationB\x08\n\x06_labelB\t\n\x07_bolt11B\t\n\x07_bolt12B\x0e\n\x0c_amount_msatB\x13\n\x11_amount_sent_msatB\r\n\x0b_erroronionB\x0e\n\x0c_descriptionB\x0f\n\r_completed_atB\x0b\n\t_preimageB\x12\n\x10_number_of_partsB\x10\n\x0e_created_indexB\x10\n\x0e_updated_index\"*\n\x10ListhtlcsRequest\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x05\n\x03_id\"7\n\x11ListhtlcsResponse\x12\"\n\x05htlcs\x18\x01 \x03(\x0b\x32\x13.cln.ListhtlcsHtlcs\"\x89\x02\n\x0eListhtlcsHtlcs\x12\x18\n\x10short_channel_id\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\x04\x12\x0e\n\x06\x65xpiry\x18\x03 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12>\n\tdirection\x18\x05 \x01(\x0e\x32+.cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection\x12\x14\n\x0cpayment_hash\x18\x06 \x01(\x0c\x12\x1d\n\x05state\x18\x07 \x01(\x0e\x32\x0e.cln.HtlcState\"*\n\x17ListhtlcsHtlcsDirection\x12\x07\n\x03OUT\x10\x00\x12\x06\n\x02IN\x10\x01\"\xb2\x02\n\x17MultifundchannelRequest\x12\x37\n\x0c\x64\x65stinations\x18\x01 \x03(\x0b\x32!.cln.MultifundchannelDestinations\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\x12H\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.Outpoint\x12\x18\n\x0bminchannels\x18\x05 \x01(\x12H\x02\x88\x01\x01\x12-\n\x12\x63ommitment_feerate\x18\x06 \x01(\x0b\x32\x0c.cln.FeerateH\x03\x88\x01\x01\x42\n\n\x08_feerateB\n\n\x08_minconfB\x0e\n\x0c_minchannelsB\x15\n\x13_commitment_feerate\"\x98\x01\n\x18MultifundchannelResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x35\n\x0b\x63hannel_ids\x18\x03 \x03(\x0b\x32 .cln.MultifundchannelChannel_ids\x12+\n\x06\x66\x61iled\x18\x04 \x03(\x0b\x32\x1b.cln.MultifundchannelFailed\"\xff\x02\n\x1cMultifundchannelDestinations\x12\n\n\x02id\x18\x01 \x01(\t\x12 \n\x06\x61mount\x18\x02 \x01(\x0b\x32\x10.cln.AmountOrAll\x12\x15\n\x08\x61nnounce\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12#\n\tpush_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\tH\x02\x88\x01\x01\x12%\n\x0brequest_amt\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x15\n\x08mindepth\x18\x08 \x01(\rH\x05\x88\x01\x01\x12!\n\x07reserve\x18\t \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x42\x0b\n\t_announceB\x0c\n\n_push_msatB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_leaseB\x0b\n\t_mindepthB\n\n\x08_reserve\"\xcb\x01\n\x1bMultifundchannelChannel_ids\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x0e\n\x06outnum\x18\x02 \x01(\r\x12\x12\n\nchannel_id\x18\x03 \x01(\x0c\x12G\n\x0c\x63hannel_type\x18\x04 \x01(\x0b\x32,.cln.MultifundchannelChannel_idsChannel_typeH\x00\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_to\"\\\n\'MultifundchannelChannel_idsChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\x93\x02\n\x16MultifundchannelFailed\x12\n\n\x02id\x18\x01 \x01(\x0c\x12H\n\x06method\x18\x02 \x01(\x0e\x32\x38.cln.MultifundchannelFailed.MultifundchannelFailedMethod\x12/\n\x05\x65rror\x18\x03 \x01(\x0b\x32 .cln.MultifundchannelFailedError\"r\n\x1cMultifundchannelFailedMethod\x12\x0b\n\x07\x43ONNECT\x10\x00\x12\x14\n\x10OPENCHANNEL_INIT\x10\x01\x12\x15\n\x11\x46UNDCHANNEL_START\x10\x02\x12\x18\n\x14\x46UNDCHANNEL_COMPLETE\x10\x03\"<\n\x1bMultifundchannelFailedError\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x12\x12\x0f\n\x07message\x18\x02 \x01(\t\"\xa8\x01\n\x14MultiwithdrawRequest\x12 \n\x07outputs\x18\x01 \x03(\x0b\x32\x0f.cln.OutputDesc\x12\"\n\x07\x66\x65\x65rate\x18\x02 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x14\n\x07minconf\x18\x03 \x01(\rH\x01\x88\x01\x01\x12\x1c\n\x05utxos\x18\x04 \x03(\x0b\x32\r.cln.OutpointB\n\n\x08_feerateB\n\n\x08_minconf\"1\n\x15MultiwithdrawResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\"\xa0\x04\n\x0cOfferRequest\x12\x0e\n\x06\x61mount\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06issuer\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x12\n\x05label\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x0cquantity_max\x18\x05 \x01(\x04H\x03\x88\x01\x01\x12\x1c\n\x0f\x61\x62solute_expiry\x18\x06 \x01(\x04H\x04\x88\x01\x01\x12\x17\n\nrecurrence\x18\x07 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0frecurrence_base\x18\x08 \x01(\tH\x06\x88\x01\x01\x12!\n\x14recurrence_paywindow\x18\t \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x10recurrence_limit\x18\n \x01(\rH\x08\x88\x01\x01\x12\x17\n\nsingle_use\x18\x0b \x01(\x08H\t\x88\x01\x01\x12(\n\x1brecurrence_start_any_period\x18\x0c \x01(\x08H\n\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_issuerB\x08\n\x06_labelB\x0f\n\r_quantity_maxB\x12\n\x10_absolute_expiryB\r\n\x0b_recurrenceB\x12\n\x10_recurrence_baseB\x17\n\x15_recurrence_paywindowB\x13\n\x11_recurrence_limitB\r\n\x0b_single_useB\x1e\n\x1c_recurrence_start_any_period\"\x92\x01\n\rOfferResponse\x12\x10\n\x08offer_id\x18\x01 \x01(\x0c\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x12\n\nsingle_use\x18\x03 \x01(\x08\x12\x0e\n\x06\x62olt12\x18\x04 \x01(\t\x12\x0c\n\x04used\x18\x05 \x01(\x08\x12\x0f\n\x07\x63reated\x18\x06 \x01(\x08\x12\x12\n\x05label\x18\x07 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_label\".\n\x18Openchannel_abortRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\"Y\n\x19Openchannel_abortResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x18\n\x10\x63hannel_canceled\x18\x02 \x01(\x08\x12\x0e\n\x06reason\x18\x03 \x01(\t\"\x9f\x01\n\x17Openchannel_bumpRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x13\n\x0binitialpsbt\x18\x02 \x01(\t\x12*\n\x0f\x66unding_feerate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x1b\n\x06\x61mount\x18\x04 \x01(\x0b\x32\x0b.cln.AmountB\x12\n\x10_funding_feerate\"\x86\x02\n\x18Openchannel_bumpResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12<\n\x0c\x63hannel_type\x18\x02 \x01(\x0b\x32!.cln.Openchannel_bumpChannel_typeH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x03 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_serial\x18\x05 \x01(\x04\x12&\n\x19requires_confirmed_inputs\x18\x06 \x01(\x08H\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x1c\n\x1a_requires_confirmed_inputs\"Q\n\x1cOpenchannel_bumpChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"\xa0\x03\n\x17Openchannel_initRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x13\n\x0binitialpsbt\x18\x02 \x01(\t\x12-\n\x12\x63ommitment_feerate\x18\x03 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12*\n\x0f\x66unding_feerate\x18\x04 \x01(\x0b\x32\x0c.cln.FeerateH\x01\x88\x01\x01\x12\x15\n\x08\x61nnounce\x18\x05 \x01(\x08H\x02\x88\x01\x01\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\tH\x03\x88\x01\x01\x12%\n\x0brequest_amt\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x04\x88\x01\x01\x12\x1a\n\rcompact_lease\x18\x08 \x01(\x0cH\x05\x88\x01\x01\x12\x14\n\x0c\x63hannel_type\x18\t \x03(\r\x12\x1b\n\x06\x61mount\x18\n \x01(\x0b\x32\x0b.cln.AmountB\x15\n\x13_commitment_feerateB\x12\n\x10_funding_feerateB\x0b\n\t_announceB\x0b\n\t_close_toB\x0e\n\x0c_request_amtB\x10\n\x0e_compact_lease\"\x86\x02\n\x18Openchannel_initResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\x12<\n\x0c\x63hannel_type\x18\x03 \x01(\x0b\x32!.cln.Openchannel_initChannel_typeH\x00\x88\x01\x01\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_serial\x18\x05 \x01(\x04\x12&\n\x19requires_confirmed_inputs\x18\x06 \x01(\x08H\x01\x88\x01\x01\x42\x0f\n\r_channel_typeB\x1c\n\x1a_requires_confirmed_inputs\"Q\n\x1cOpenchannel_initChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"D\n\x19Openchannel_signedRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x13\n\x0bsigned_psbt\x18\x02 \x01(\t\"J\n\x1aOpenchannel_signedResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\n\n\x02tx\x18\x02 \x01(\x0c\x12\x0c\n\x04txid\x18\x03 \x01(\x0c\"=\n\x19Openchannel_updateRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"\xae\x02\n\x1aOpenchannel_updateResponse\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12>\n\x0c\x63hannel_type\x18\x02 \x01(\x0b\x32#.cln.Openchannel_updateChannel_typeH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x03 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x04 \x01(\x08\x12\x16\n\x0e\x66unding_outnum\x18\x05 \x01(\r\x12\x15\n\x08\x63lose_to\x18\x06 \x01(\x0cH\x01\x88\x01\x01\x12&\n\x19requires_confirmed_inputs\x18\x07 \x01(\x08H\x02\x88\x01\x01\x42\x0f\n\r_channel_typeB\x0b\n\t_close_toB\x1c\n\x1a_requires_confirmed_inputs\"S\n\x1eOpenchannel_updateChannel_type\x12\x0c\n\x04\x62its\x18\x01 \x03(\r\x12#\n\x05names\x18\x02 \x03(\x0e\x32\x14.cln.ChannelTypeName\"Y\n\x0bPingRequest\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x10\n\x03len\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x16\n\tpongbytes\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x06\n\x04_lenB\x0c\n\n_pongbytes\"\x1e\n\x0cPingResponse\x12\x0e\n\x06totlen\x18\x01 \x01(\r\"\x91\x01\n\rPluginRequest\x12)\n\nsubcommand\x18\x01 \x01(\x0e\x32\x15.cln.PluginSubcommand\x12\x13\n\x06plugin\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tdirectory\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0f\n\x07options\x18\x04 \x03(\tB\t\n\x07_pluginB\x0c\n\n_directory\"}\n\x0ePluginResponse\x12&\n\x07\x63ommand\x18\x01 \x01(\x0e\x32\x15.cln.PluginSubcommand\x12#\n\x07plugins\x18\x02 \x03(\x0b\x32\x12.cln.PluginPlugins\x12\x13\n\x06result\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_result\">\n\rPluginPlugins\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\x08\x12\x0f\n\x07\x64ynamic\x18\x03 \x01(\x08\"<\n\x14RenepaystatusRequest\x12\x16\n\tinvstring\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_invstring\"G\n\x15RenepaystatusResponse\x12.\n\tpaystatus\x18\x01 \x03(\x0b\x32\x1b.cln.RenepaystatusPaystatus\"\xe2\x03\n\x16RenepaystatusPaystatus\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\x12\x1d\n\x10payment_preimage\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12\x12\n\ncreated_at\x18\x04 \x01(\x01\x12\x0f\n\x07groupid\x18\x05 \x01(\r\x12\x12\n\x05parts\x18\x06 \x01(\rH\x01\x88\x01\x01\x12 \n\x0b\x61mount_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12*\n\x10\x61mount_sent_msat\x18\x08 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12H\n\x06status\x18\t \x01(\x0e\x32\x38.cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus\x12\x18\n\x0b\x64\x65stination\x18\n \x01(\x0cH\x03\x88\x01\x01\x12\r\n\x05notes\x18\x0b \x03(\t\"E\n\x1cRenepaystatusPaystatusStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x13\n\x11_payment_preimageB\x08\n\x06_partsB\x13\n\x11_amount_sent_msatB\x0e\n\x0c_destination\"\xda\x02\n\x0eRenepayRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12 \n\x06maxfee\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x15\n\x08maxdelay\x18\x04 \x01(\rH\x02\x88\x01\x01\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x03\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x04\x88\x01\x01\x12\x12\n\x05label\x18\x07 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x64\x65v_use_shadow\x18\x08 \x01(\x08H\x06\x88\x01\x01\x12\x0f\n\x07\x65xclude\x18\t \x03(\tB\x0e\n\x0c_amount_msatB\t\n\x07_maxfeeB\x0b\n\t_maxdelayB\x0c\n\n_retry_forB\x0e\n\x0c_descriptionB\x08\n\x06_labelB\x11\n\x0f_dev_use_shadow\"\xa5\x03\n\x0fRenepayResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\r\n\x05parts\x18\x04 \x01(\r\x12 \n\x0b\x61mount_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12\x32\n\x06status\x18\x07 \x01(\x0e\x32\".cln.RenepayResponse.RenepayStatus\x12\x18\n\x0b\x64\x65stination\x18\x08 \x01(\x0cH\x00\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\t \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\n \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07groupid\x18\x0b \x01(\x04H\x03\x88\x01\x01\"6\n\rRenepayStatus\x12\x0c\n\x08\x43OMPLETE\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x0e\n\x0c_destinationB\t\n\x07_bolt11B\t\n\x07_bolt12B\n\n\x08_groupid\"l\n\x14ReserveinputsRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x16\n\texclusive\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x07reserve\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x0c\n\n_exclusiveB\n\n\x08_reserve\"M\n\x15ReserveinputsResponse\x12\x34\n\x0creservations\x18\x01 \x03(\x0b\x32\x1e.cln.ReserveinputsReservations\"z\n\x19ReserveinputsReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x19\n\x11reserved_to_block\x18\x05 \x01(\r\"4\n\x14SendcustommsgRequest\x12\x0f\n\x07node_id\x18\x01 \x01(\x0c\x12\x0b\n\x03msg\x18\x02 \x01(\x0c\"\'\n\x15SendcustommsgResponse\x12\x0e\n\x06status\x18\x01 \x01(\t\"\xb0\x01\n\x12SendinvoiceRequest\x12\x0e\n\x06invreq\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x14\n\x07timeout\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08quantity\x18\x05 \x01(\x04H\x02\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\n\n\x08_timeoutB\x0b\n\t_quantity\"\xcf\x04\n\x13SendinvoiceResponse\x12\r\n\x05label\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x14\n\x0cpayment_hash\x18\x03 \x01(\x0c\x12:\n\x06status\x18\x04 \x01(\x0e\x32*.cln.SendinvoiceResponse.SendinvoiceStatus\x12\x12\n\nexpires_at\x18\x05 \x01(\x04\x12%\n\x0b\x61mount_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rcreated_index\x18\x08 \x01(\x04H\x02\x88\x01\x01\x12\x1a\n\rupdated_index\x18\t \x01(\x04H\x03\x88\x01\x01\x12\x16\n\tpay_index\x18\n \x01(\x04H\x04\x88\x01\x01\x12.\n\x14\x61mount_received_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x14\n\x07paid_at\x18\x0c \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\x10payment_preimage\x18\r \x01(\x0cH\x07\x88\x01\x01\"6\n\x11SendinvoiceStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x42\x0e\n\x0c_amount_msatB\t\n\x07_bolt12B\x10\n\x0e_created_indexB\x10\n\x0e_updated_indexB\x0c\n\n_pay_indexB\x17\n\x15_amount_received_msatB\n\n\x08_paid_atB\x13\n\x11_payment_preimage\"\xaa\x02\n\x11SetchannelRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12!\n\x07\x66\x65\x65\x62\x61se\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x13\n\x06\x66\x65\x65ppm\x18\x03 \x01(\rH\x01\x88\x01\x01\x12!\n\x07htlcmin\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12!\n\x07htlcmax\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x19\n\x0c\x65nforcedelay\x18\x06 \x01(\rH\x04\x88\x01\x01\x12\x1c\n\x0fignorefeelimits\x18\x07 \x01(\x08H\x05\x88\x01\x01\x42\n\n\x08_feebaseB\t\n\x07_feeppmB\n\n\x08_htlcminB\n\n\x08_htlcmaxB\x0f\n\r_enforcedelayB\x12\n\x10_ignorefeelimits\"?\n\x12SetchannelResponse\x12)\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x17.cln.SetchannelChannels\"\xca\x03\n\x12SetchannelChannels\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x12\n\nchannel_id\x18\x02 \x01(\x0c\x12\x1d\n\x10short_channel_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\"\n\rfee_base_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x1b\x66\x65\x65_proportional_millionths\x18\x05 \x01(\r\x12*\n\x15minimum_htlc_out_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x17warning_htlcmin_too_low\x18\x07 \x01(\tH\x01\x88\x01\x01\x12*\n\x15maximum_htlc_out_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x18warning_htlcmax_too_high\x18\t \x01(\tH\x02\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\n \x01(\x08H\x03\x88\x01\x01\x42\x13\n\x11_short_channel_idB\x1a\n\x18_warning_htlcmin_too_lowB\x1b\n\x19_warning_htlcmax_too_highB\x14\n\x12_ignore_fee_limits\"<\n\x10SetconfigRequest\x12\x0e\n\x06\x63onfig\x18\x01 \x01(\t\x12\x10\n\x03val\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x06\n\x04_val\"9\n\x11SetconfigResponse\x12$\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x14.cln.SetconfigConfig\"\xa5\x02\n\x0fSetconfigConfig\x12\x0e\n\x06\x63onfig\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x07\x64ynamic\x18\x04 \x01(\x08\x12\x10\n\x03set\x18\x05 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tvalue_str\x18\x06 \x01(\tH\x02\x88\x01\x01\x12$\n\nvalue_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12\x16\n\tvalue_int\x18\x08 \x01(\x12H\x04\x88\x01\x01\x12\x17\n\nvalue_bool\x18\t \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_pluginB\x06\n\x04_setB\x0c\n\n_value_strB\r\n\x0b_value_msatB\x0c\n\n_value_intB\r\n\x0b_value_bool\"6\n\x15SetpsbtversionRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\r\"&\n\x16SetpsbtversionResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\"\'\n\x12SigninvoiceRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\"%\n\x13SigninvoiceResponse\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\"%\n\x12SignmessageRequest\x12\x0f\n\x07message\x18\x01 \x01(\t\"F\n\x13SignmessageResponse\x12\x11\n\tsignature\x18\x01 \x01(\x0c\x12\r\n\x05recid\x18\x02 \x01(\x0c\x12\r\n\x05zbase\x18\x03 \x01(\t\"\xc9\x01\n\x12Splice_initRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x17\n\x0frelative_amount\x18\x02 \x01(\x12\x12\x18\n\x0binitialpsbt\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0e\x66\x65\x65rate_per_kw\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\rforce_feerate\x18\x05 \x01(\x08H\x02\x88\x01\x01\x42\x0e\n\x0c_initialpsbtB\x11\n\x0f_feerate_per_kwB\x10\n\x0e_force_feerate\"#\n\x13Splice_initResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\"`\n\x14Splice_signedRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\x12\x17\n\nsign_first\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\r\n\x0b_sign_first\"_\n\x15Splice_signedResponse\x12\n\n\x02tx\x18\x01 \x01(\x0c\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x13\n\x06outnum\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x0c\n\x04psbt\x18\x04 \x01(\tB\t\n\x07_outnum\"8\n\x14Splice_updateRequest\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\x12\x0c\n\x04psbt\x18\x02 \x01(\t\"z\n\x15Splice_updateResponse\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x1b\n\x13\x63ommitments_secured\x18\x02 \x01(\x08\x12\x1f\n\x12signatures_secured\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\x15\n\x13_signatures_secured\"\xc6\x01\n\x10\x44\x65vspliceRequest\x12\x16\n\x0escript_or_json\x18\x01 \x01(\t\x12\x13\n\x06\x64ryrun\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rforce_feerate\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tdebug_log\x18\x04 \x01(\x08H\x02\x88\x01\x01\x12\x17\n\ndev_wetrun\x18\x05 \x01(\x08H\x03\x88\x01\x01\x42\t\n\x07_dryrunB\x10\n\x0e_force_feerateB\x0c\n\n_debug_logB\r\n\x0b_dev_wetrun\"\x80\x01\n\x11\x44\x65vspliceResponse\x12\x0e\n\x06\x64ryrun\x18\x01 \x03(\t\x12\x11\n\x04psbt\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x02tx\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04txid\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x0b\n\x03log\x18\x05 \x03(\tB\x07\n\x05_psbtB\x05\n\x03_txB\x07\n\x05_txid\"H\n\x16UnreserveinputsRequest\x12\x0c\n\x04psbt\x18\x01 \x01(\t\x12\x14\n\x07reserve\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_reserve\"Q\n\x17UnreserveinputsResponse\x12\x36\n\x0creservations\x18\x01 \x03(\x0b\x32 .cln.UnreserveinputsReservations\"\x97\x01\n\x1bUnreserveinputsReservations\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x0c\n\x04vout\x18\x02 \x01(\r\x12\x14\n\x0cwas_reserved\x18\x03 \x01(\x08\x12\x10\n\x08reserved\x18\x04 \x01(\x08\x12\x1e\n\x11reserved_to_block\x18\x05 \x01(\rH\x00\x88\x01\x01\x42\x14\n\x12_reserved_to_block\"n\n\x14UpgradewalletRequest\x12\"\n\x07\x66\x65\x65rate\x18\x01 \x01(\x0b\x32\x0c.cln.FeerateH\x00\x88\x01\x01\x12\x17\n\nreservedok\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\n\n\x08_feerateB\r\n\x0b_reservedok\"\x95\x01\n\x15UpgradewalletResponse\x12\x1a\n\rupgraded_outs\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x11\n\x04psbt\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x0f\n\x02tx\x18\x03 \x01(\x0cH\x02\x88\x01\x01\x12\x11\n\x04txid\x18\x04 \x01(\x0cH\x03\x88\x01\x01\x42\x10\n\x0e_upgraded_outsB\x07\n\x05_psbtB\x05\n\x03_txB\x07\n\x05_txid\"O\n\x16WaitblockheightRequest\x12\x13\n\x0b\x62lockheight\x18\x01 \x01(\r\x12\x14\n\x07timeout\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\n\n\x08_timeout\".\n\x17WaitblockheightResponse\x12\x13\n\x0b\x62lockheight\x18\x01 \x01(\r\"\xf9\x01\n\x0bWaitRequest\x12\x31\n\tsubsystem\x18\x01 \x01(\x0e\x32\x1e.cln.WaitRequest.WaitSubsystem\x12\x31\n\tindexname\x18\x02 \x01(\x0e\x32\x1e.cln.WaitRequest.WaitIndexname\x12\x11\n\tnextvalue\x18\x03 \x01(\x04\"9\n\rWaitSubsystem\x12\x0c\n\x08INVOICES\x10\x00\x12\x0c\n\x08\x46ORWARDS\x10\x01\x12\x0c\n\x08SENDPAYS\x10\x02\"6\n\rWaitIndexname\x12\x0b\n\x07\x43REATED\x10\x00\x12\x0b\n\x07UPDATED\x10\x01\x12\x0b\n\x07\x44\x45LETED\x10\x02\"\x97\x02\n\x0cWaitResponse\x12\x32\n\tsubsystem\x18\x01 \x01(\x0e\x32\x1f.cln.WaitResponse.WaitSubsystem\x12\x14\n\x07\x63reated\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x14\n\x07updated\x18\x03 \x01(\x04H\x01\x88\x01\x01\x12\x14\n\x07\x64\x65leted\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12&\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32\x10.cln.WaitDetailsH\x03\x88\x01\x01\"9\n\rWaitSubsystem\x12\x0c\n\x08INVOICES\x10\x00\x12\x0c\n\x08\x46ORWARDS\x10\x01\x12\x0c\n\x08SENDPAYS\x10\x02\x42\n\n\x08_createdB\n\n\x08_updatedB\n\n\x08_deletedB\n\n\x08_details\"\xfc\x04\n\x0bWaitDetails\x12\x37\n\x06status\x18\x01 \x01(\x0e\x32\".cln.WaitDetails.WaitDetailsStatusH\x00\x88\x01\x01\x12\x12\n\x05label\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x62olt11\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x13\n\x06\x62olt12\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x13\n\x06partid\x18\x06 \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x07groupid\x18\x07 \x01(\x04H\x06\x88\x01\x01\x12\x19\n\x0cpayment_hash\x18\x08 \x01(\x0cH\x07\x88\x01\x01\x12\x17\n\nin_channel\x18\t \x01(\tH\x08\x88\x01\x01\x12\x17\n\nin_htlc_id\x18\n \x01(\x04H\t\x88\x01\x01\x12!\n\x07in_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\n\x88\x01\x01\x12\x18\n\x0bout_channel\x18\x0c \x01(\tH\x0b\x88\x01\x01\"\x89\x01\n\x11WaitDetailsStatus\x12\n\n\x06UNPAID\x10\x00\x12\x08\n\x04PAID\x10\x01\x12\x0b\n\x07\x45XPIRED\x10\x02\x12\x0b\n\x07PENDING\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\x0c\n\x08\x43OMPLETE\x10\x05\x12\x0b\n\x07OFFERED\x10\x06\x12\x0b\n\x07SETTLED\x10\x07\x12\x10\n\x0cLOCAL_FAILED\x10\x08\x42\t\n\x07_statusB\x08\n\x06_labelB\x0e\n\x0c_descriptionB\t\n\x07_bolt11B\t\n\x07_bolt12B\t\n\x07_partidB\n\n\x08_groupidB\x0f\n\r_payment_hashB\r\n\x0b_in_channelB\r\n\x0b_in_htlc_idB\n\n\x08_in_msatB\x0e\n\x0c_out_channel\"4\n\x12ListconfigsRequest\x12\x13\n\x06\x63onfig\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_config\"\xa3\x1c\n\x13ListconfigsResponse\x12-\n\x07\x63onfigs\x18\x01 \x01(\x0b\x32\x17.cln.ListconfigsConfigsH\x00\x88\x01\x01\x12(\n\x07plugins\x18\x03 \x03(\x0b\x32\x17.cln.ListconfigsPlugins\x12;\n\x11important_plugins\x18\x04 \x03(\x0b\x32 .cln.ListconfigsImportantplugins\x12\x11\n\x04\x63onf\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rlightning_dir\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x07network\x18\x07 \x01(\tH\x03\x88\x01\x01\x12\"\n\x15\x61llow_deprecated_apis\x18\x08 \x01(\x08H\x04\x88\x01\x01\x12\x15\n\x08rpc_file\x18\t \x01(\tH\x05\x88\x01\x01\x12\x16\n\x0e\x64isable_plugin\x18\n \x03(\t\x12\x1b\n\x0e\x62ookkeeper_dir\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rbookkeeper_db\x18\x0c \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x10\x61lways_use_proxy\x18\r \x01(\x08H\x08\x88\x01\x01\x12\x13\n\x06\x64\x61\x65mon\x18\x0e \x01(\x08H\t\x88\x01\x01\x12\x13\n\x06wallet\x18\x0f \x01(\tH\n\x88\x01\x01\x12\x1b\n\x0elarge_channels\x18\x10 \x01(\x08H\x0b\x88\x01\x01\x12#\n\x16\x65xperimental_dual_fund\x18\x11 \x01(\x08H\x0c\x88\x01\x01\x12\"\n\x15\x65xperimental_splicing\x18\x12 \x01(\x08H\r\x88\x01\x01\x12(\n\x1b\x65xperimental_onion_messages\x18\x13 \x01(\x08H\x0e\x88\x01\x01\x12 \n\x13\x65xperimental_offers\x18\x14 \x01(\x08H\x0f\x88\x01\x01\x12\x30\n#experimental_shutdown_wrong_funding\x18\x15 \x01(\x08H\x10\x88\x01\x01\x12&\n\x19\x65xperimental_peer_storage\x18\x16 \x01(\x08H\x11\x88\x01\x01\x12!\n\x14\x65xperimental_quiesce\x18\x17 \x01(\x08H\x12\x88\x01\x01\x12*\n\x1d\x65xperimental_upgrade_protocol\x18\x18 \x01(\x08H\x13\x88\x01\x01\x12&\n\x19invoices_onchain_fallback\x18\x19 \x01(\x08H\x14\x88\x01\x01\x12\x1d\n\x10\x64\x61tabase_upgrade\x18\x1a \x01(\x08H\x15\x88\x01\x01\x12\x10\n\x03rgb\x18\x1b \x01(\x0cH\x16\x88\x01\x01\x12\x12\n\x05\x61lias\x18\x1c \x01(\tH\x17\x88\x01\x01\x12\x15\n\x08pid_file\x18\x1d \x01(\tH\x18\x88\x01\x01\x12\x1e\n\x11ignore_fee_limits\x18\x1e \x01(\x08H\x19\x88\x01\x01\x12\x1d\n\x10watchtime_blocks\x18\x1f \x01(\rH\x1a\x88\x01\x01\x12 \n\x13max_locktime_blocks\x18  \x01(\rH\x1b\x88\x01\x01\x12\x1d\n\x10\x66unding_confirms\x18! \x01(\rH\x1c\x88\x01\x01\x12\x17\n\ncltv_delta\x18\" \x01(\rH\x1d\x88\x01\x01\x12\x17\n\ncltv_final\x18# \x01(\rH\x1e\x88\x01\x01\x12\x18\n\x0b\x63ommit_time\x18$ \x01(\rH\x1f\x88\x01\x01\x12\x15\n\x08\x66\x65\x65_base\x18% \x01(\rH \x88\x01\x01\x12\x13\n\x06rescan\x18& \x01(\x12H!\x88\x01\x01\x12\x1c\n\x0f\x66\x65\x65_per_satoshi\x18\' \x01(\rH\"\x88\x01\x01\x12!\n\x14max_concurrent_htlcs\x18( \x01(\rH#\x88\x01\x01\x12+\n\x11htlc_minimum_msat\x18) \x01(\x0b\x32\x0b.cln.AmountH$\x88\x01\x01\x12+\n\x11htlc_maximum_msat\x18* \x01(\x0b\x32\x0b.cln.AmountH%\x88\x01\x01\x12\x35\n\x1bmax_dust_htlc_exposure_msat\x18+ \x01(\x0b\x32\x0b.cln.AmountH&\x88\x01\x01\x12\x1d\n\x10min_capacity_sat\x18, \x01(\x04H\'\x88\x01\x01\x12\x11\n\x04\x61\x64\x64r\x18- \x01(\tH(\x88\x01\x01\x12\x1a\n\rannounce_addr\x18. \x01(\tH)\x88\x01\x01\x12\x16\n\tbind_addr\x18/ \x01(\tH*\x88\x01\x01\x12\x14\n\x07offline\x18\x30 \x01(\x08H+\x88\x01\x01\x12\x17\n\nautolisten\x18\x31 \x01(\x08H,\x88\x01\x01\x12\x12\n\x05proxy\x18\x32 \x01(\tH-\x88\x01\x01\x12\x18\n\x0b\x64isable_dns\x18\x33 \x01(\x08H.\x88\x01\x01\x12%\n\x18\x61nnounce_addr_discovered\x18\x34 \x01(\tH/\x88\x01\x01\x12*\n\x1d\x61nnounce_addr_discovered_port\x18\x35 \x01(\x12H0\x88\x01\x01\x12\x1a\n\rencrypted_hsm\x18\x36 \x01(\x08H1\x88\x01\x01\x12\x1a\n\rrpc_file_mode\x18\x37 \x01(\tH2\x88\x01\x01\x12\x16\n\tlog_level\x18\x38 \x01(\tH3\x88\x01\x01\x12\x17\n\nlog_prefix\x18\x39 \x01(\tH4\x88\x01\x01\x12\x15\n\x08log_file\x18: \x01(\tH5\x88\x01\x01\x12\x1b\n\x0elog_timestamps\x18; \x01(\x08H6\x88\x01\x01\x12\x1b\n\x0e\x66orce_feerates\x18< \x01(\tH7\x88\x01\x01\x12\x16\n\tsubdaemon\x18= \x01(\tH8\x88\x01\x01\x12#\n\x16\x66\x65tchinvoice_noconnect\x18> \x01(\x08H9\x88\x01\x01\x12\"\n\x15\x61\x63\x63\x65pt_htlc_tlv_types\x18? \x01(\tH:\x88\x01\x01\x12!\n\x14tor_service_password\x18@ \x01(\tH;\x88\x01\x01\x12!\n\x14\x64\x65v_allowdustreserve\x18\x41 \x01(\x08H<\x88\x01\x01\x12\x1e\n\x11\x61nnounce_addr_dns\x18\x42 \x01(\x08H=\x88\x01\x01\x12%\n\x18require_confirmed_inputs\x18\x43 \x01(\x08H>\x88\x01\x01\x12\x16\n\tdeveloper\x18\x44 \x01(\x08H?\x88\x01\x01\x12\x17\n\ncommit_fee\x18\x45 \x01(\x04H@\x88\x01\x01\x12,\n\x12min_emergency_msat\x18\x46 \x01(\x0b\x32\x0b.cln.AmountHA\x88\x01\x01\x12\"\n\x15\x63ommit_feerate_offset\x18G \x01(\rHB\x88\x01\x01\x12%\n\x18\x61utoconnect_seeker_peers\x18H \x01(\rHC\x88\x01\x01\x42\n\n\x08_configsB\x07\n\x05_confB\x10\n\x0e_lightning_dirB\n\n\x08_networkB\x18\n\x16_allow_deprecated_apisB\x0b\n\t_rpc_fileB\x11\n\x0f_bookkeeper_dirB\x10\n\x0e_bookkeeper_dbB\x13\n\x11_always_use_proxyB\t\n\x07_daemonB\t\n\x07_walletB\x11\n\x0f_large_channelsB\x19\n\x17_experimental_dual_fundB\x18\n\x16_experimental_splicingB\x1e\n\x1c_experimental_onion_messagesB\x16\n\x14_experimental_offersB&\n$_experimental_shutdown_wrong_fundingB\x1c\n\x1a_experimental_peer_storageB\x17\n\x15_experimental_quiesceB \n\x1e_experimental_upgrade_protocolB\x1c\n\x1a_invoices_onchain_fallbackB\x13\n\x11_database_upgradeB\x06\n\x04_rgbB\x08\n\x06_aliasB\x0b\n\t_pid_fileB\x14\n\x12_ignore_fee_limitsB\x13\n\x11_watchtime_blocksB\x16\n\x14_max_locktime_blocksB\x13\n\x11_funding_confirmsB\r\n\x0b_cltv_deltaB\r\n\x0b_cltv_finalB\x0e\n\x0c_commit_timeB\x0b\n\t_fee_baseB\t\n\x07_rescanB\x12\n\x10_fee_per_satoshiB\x17\n\x15_max_concurrent_htlcsB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x1e\n\x1c_max_dust_htlc_exposure_msatB\x13\n\x11_min_capacity_satB\x07\n\x05_addrB\x10\n\x0e_announce_addrB\x0c\n\n_bind_addrB\n\n\x08_offlineB\r\n\x0b_autolistenB\x08\n\x06_proxyB\x0e\n\x0c_disable_dnsB\x1b\n\x19_announce_addr_discoveredB \n\x1e_announce_addr_discovered_portB\x10\n\x0e_encrypted_hsmB\x10\n\x0e_rpc_file_modeB\x0c\n\n_log_levelB\r\n\x0b_log_prefixB\x0b\n\t_log_fileB\x11\n\x0f_log_timestampsB\x11\n\x0f_force_feeratesB\x0c\n\n_subdaemonB\x19\n\x17_fetchinvoice_noconnectB\x18\n\x16_accept_htlc_tlv_typesB\x17\n\x15_tor_service_passwordB\x17\n\x15_dev_allowdustreserveB\x14\n\x12_announce_addr_dnsB\x1b\n\x19_require_confirmed_inputsB\x0c\n\n_developerB\r\n\x0b_commit_feeB\x15\n\x13_min_emergency_msatB\x18\n\x16_commit_feerate_offsetB\x1b\n\x19_autoconnect_seeker_peers\"\xd2/\n\x12ListconfigsConfigs\x12.\n\x04\x63onf\x18\x01 \x01(\x0b\x32\x1b.cln.ListconfigsConfigsConfH\x00\x88\x01\x01\x12\x38\n\tdeveloper\x18\x02 \x01(\x0b\x32 .cln.ListconfigsConfigsDeveloperH\x01\x88\x01\x01\x12?\n\rclear_plugins\x18\x03 \x01(\x0b\x32#.cln.ListconfigsConfigsClearpluginsH\x02\x88\x01\x01\x12;\n\x0b\x64isable_mpp\x18\x04 \x01(\x0b\x32!.cln.ListconfigsConfigsDisablemppH\x03\x88\x01\x01\x12\x34\n\x07mainnet\x18\x05 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsMainnetH\x04\x88\x01\x01\x12\x34\n\x07regtest\x18\x06 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsRegtestH\x05\x88\x01\x01\x12\x32\n\x06signet\x18\x07 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsSignetH\x06\x88\x01\x01\x12\x34\n\x07testnet\x18\x08 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsTestnetH\x07\x88\x01\x01\x12\x45\n\x10important_plugin\x18\t \x01(\x0b\x32&.cln.ListconfigsConfigsImportantpluginH\x08\x88\x01\x01\x12\x32\n\x06plugin\x18\n \x01(\x0b\x32\x1d.cln.ListconfigsConfigsPluginH\t\x88\x01\x01\x12\x39\n\nplugin_dir\x18\x0b \x01(\x0b\x32 .cln.ListconfigsConfigsPlugindirH\n\x88\x01\x01\x12?\n\rlightning_dir\x18\x0c \x01(\x0b\x32#.cln.ListconfigsConfigsLightningdirH\x0b\x88\x01\x01\x12\x34\n\x07network\x18\r \x01(\x0b\x32\x1e.cln.ListconfigsConfigsNetworkH\x0c\x88\x01\x01\x12N\n\x15\x61llow_deprecated_apis\x18\x0e \x01(\x0b\x32*.cln.ListconfigsConfigsAllowdeprecatedapisH\r\x88\x01\x01\x12\x35\n\x08rpc_file\x18\x0f \x01(\x0b\x32\x1e.cln.ListconfigsConfigsRpcfileH\x0e\x88\x01\x01\x12\x41\n\x0e\x64isable_plugin\x18\x10 \x01(\x0b\x32$.cln.ListconfigsConfigsDisablepluginH\x0f\x88\x01\x01\x12\x44\n\x10\x61lways_use_proxy\x18\x11 \x01(\x0b\x32%.cln.ListconfigsConfigsAlwaysuseproxyH\x10\x88\x01\x01\x12\x32\n\x06\x64\x61\x65mon\x18\x12 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsDaemonH\x11\x88\x01\x01\x12\x32\n\x06wallet\x18\x13 \x01(\x0b\x32\x1d.cln.ListconfigsConfigsWalletH\x12\x88\x01\x01\x12\x41\n\x0elarge_channels\x18\x14 \x01(\x0b\x32$.cln.ListconfigsConfigsLargechannelsH\x13\x88\x01\x01\x12P\n\x16\x65xperimental_dual_fund\x18\x15 \x01(\x0b\x32+.cln.ListconfigsConfigsExperimentaldualfundH\x14\x88\x01\x01\x12O\n\x15\x65xperimental_splicing\x18\x16 \x01(\x0b\x32+.cln.ListconfigsConfigsExperimentalsplicingH\x15\x88\x01\x01\x12Z\n\x1b\x65xperimental_onion_messages\x18\x17 \x01(\x0b\x32\x30.cln.ListconfigsConfigsExperimentalonionmessagesH\x16\x88\x01\x01\x12K\n\x13\x65xperimental_offers\x18\x18 \x01(\x0b\x32).cln.ListconfigsConfigsExperimentaloffersH\x17\x88\x01\x01\x12i\n#experimental_shutdown_wrong_funding\x18\x19 \x01(\x0b\x32\x37.cln.ListconfigsConfigsExperimentalshutdownwrongfundingH\x18\x88\x01\x01\x12V\n\x19\x65xperimental_peer_storage\x18\x1a \x01(\x0b\x32..cln.ListconfigsConfigsExperimentalpeerstorageH\x19\x88\x01\x01\x12M\n\x14\x65xperimental_anchors\x18\x1b \x01(\x0b\x32*.cln.ListconfigsConfigsExperimentalanchorsH\x1a\x88\x01\x01\x12\x45\n\x10\x64\x61tabase_upgrade\x18\x1c \x01(\x0b\x32&.cln.ListconfigsConfigsDatabaseupgradeH\x1b\x88\x01\x01\x12,\n\x03rgb\x18\x1d \x01(\x0b\x32\x1a.cln.ListconfigsConfigsRgbH\x1c\x88\x01\x01\x12\x30\n\x05\x61lias\x18\x1e \x01(\x0b\x32\x1c.cln.ListconfigsConfigsAliasH\x1d\x88\x01\x01\x12\x35\n\x08pid_file\x18\x1f \x01(\x0b\x32\x1e.cln.ListconfigsConfigsPidfileH\x1e\x88\x01\x01\x12\x46\n\x11ignore_fee_limits\x18  \x01(\x0b\x32&.cln.ListconfigsConfigsIgnorefeelimitsH\x1f\x88\x01\x01\x12\x45\n\x10watchtime_blocks\x18! \x01(\x0b\x32&.cln.ListconfigsConfigsWatchtimeblocksH \x88\x01\x01\x12J\n\x13max_locktime_blocks\x18\" \x01(\x0b\x32(.cln.ListconfigsConfigsMaxlocktimeblocksH!\x88\x01\x01\x12\x45\n\x10\x66unding_confirms\x18# \x01(\x0b\x32&.cln.ListconfigsConfigsFundingconfirmsH\"\x88\x01\x01\x12\x39\n\ncltv_delta\x18$ \x01(\x0b\x32 .cln.ListconfigsConfigsCltvdeltaH#\x88\x01\x01\x12\x39\n\ncltv_final\x18% \x01(\x0b\x32 .cln.ListconfigsConfigsCltvfinalH$\x88\x01\x01\x12;\n\x0b\x63ommit_time\x18& \x01(\x0b\x32!.cln.ListconfigsConfigsCommittimeH%\x88\x01\x01\x12\x35\n\x08\x66\x65\x65_base\x18\' \x01(\x0b\x32\x1e.cln.ListconfigsConfigsFeebaseH&\x88\x01\x01\x12\x32\n\x06rescan\x18( \x01(\x0b\x32\x1d.cln.ListconfigsConfigsRescanH\'\x88\x01\x01\x12\x42\n\x0f\x66\x65\x65_per_satoshi\x18) \x01(\x0b\x32$.cln.ListconfigsConfigsFeepersatoshiH(\x88\x01\x01\x12L\n\x14max_concurrent_htlcs\x18* \x01(\x0b\x32).cln.ListconfigsConfigsMaxconcurrenthtlcsH)\x88\x01\x01\x12\x46\n\x11htlc_minimum_msat\x18+ \x01(\x0b\x32&.cln.ListconfigsConfigsHtlcminimummsatH*\x88\x01\x01\x12\x46\n\x11htlc_maximum_msat\x18, \x01(\x0b\x32&.cln.ListconfigsConfigsHtlcmaximummsatH+\x88\x01\x01\x12X\n\x1bmax_dust_htlc_exposure_msat\x18- \x01(\x0b\x32..cln.ListconfigsConfigsMaxdusthtlcexposuremsatH,\x88\x01\x01\x12\x44\n\x10min_capacity_sat\x18. \x01(\x0b\x32%.cln.ListconfigsConfigsMincapacitysatH-\x88\x01\x01\x12.\n\x04\x61\x64\x64r\x18/ \x01(\x0b\x32\x1b.cln.ListconfigsConfigsAddrH.\x88\x01\x01\x12?\n\rannounce_addr\x18\x30 \x01(\x0b\x32#.cln.ListconfigsConfigsAnnounceaddrH/\x88\x01\x01\x12\x37\n\tbind_addr\x18\x31 \x01(\x0b\x32\x1f.cln.ListconfigsConfigsBindaddrH0\x88\x01\x01\x12\x34\n\x07offline\x18\x32 \x01(\x0b\x32\x1e.cln.ListconfigsConfigsOfflineH1\x88\x01\x01\x12:\n\nautolisten\x18\x33 \x01(\x0b\x32!.cln.ListconfigsConfigsAutolistenH2\x88\x01\x01\x12\x30\n\x05proxy\x18\x34 \x01(\x0b\x32\x1c.cln.ListconfigsConfigsProxyH3\x88\x01\x01\x12;\n\x0b\x64isable_dns\x18\x35 \x01(\x0b\x32!.cln.ListconfigsConfigsDisablednsH4\x88\x01\x01\x12T\n\x18\x61nnounce_addr_discovered\x18\x36 \x01(\x0b\x32-.cln.ListconfigsConfigsAnnounceaddrdiscoveredH5\x88\x01\x01\x12]\n\x1d\x61nnounce_addr_discovered_port\x18\x37 \x01(\x0b\x32\x31.cln.ListconfigsConfigsAnnounceaddrdiscoveredportH6\x88\x01\x01\x12?\n\rencrypted_hsm\x18\x38 \x01(\x0b\x32#.cln.ListconfigsConfigsEncryptedhsmH7\x88\x01\x01\x12>\n\rrpc_file_mode\x18\x39 \x01(\x0b\x32\".cln.ListconfigsConfigsRpcfilemodeH8\x88\x01\x01\x12\x37\n\tlog_level\x18: \x01(\x0b\x32\x1f.cln.ListconfigsConfigsLoglevelH9\x88\x01\x01\x12\x39\n\nlog_prefix\x18; \x01(\x0b\x32 .cln.ListconfigsConfigsLogprefixH:\x88\x01\x01\x12\x35\n\x08log_file\x18< \x01(\x0b\x32\x1e.cln.ListconfigsConfigsLogfileH;\x88\x01\x01\x12\x41\n\x0elog_timestamps\x18= \x01(\x0b\x32$.cln.ListconfigsConfigsLogtimestampsH<\x88\x01\x01\x12\x41\n\x0e\x66orce_feerates\x18> \x01(\x0b\x32$.cln.ListconfigsConfigsForcefeeratesH=\x88\x01\x01\x12\x38\n\tsubdaemon\x18? \x01(\x0b\x32 .cln.ListconfigsConfigsSubdaemonH>\x88\x01\x01\x12Q\n\x16\x66\x65tchinvoice_noconnect\x18@ \x01(\x0b\x32,.cln.ListconfigsConfigsFetchinvoicenoconnectH?\x88\x01\x01\x12M\n\x15\x61\x63\x63\x65pt_htlc_tlv_types\x18\x41 \x01(\x0b\x32).cln.ListconfigsConfigsAccepthtlctlvtypesH@\x88\x01\x01\x12L\n\x14tor_service_password\x18\x42 \x01(\x0b\x32).cln.ListconfigsConfigsTorservicepasswordHA\x88\x01\x01\x12\x46\n\x11\x61nnounce_addr_dns\x18\x43 \x01(\x0b\x32&.cln.ListconfigsConfigsAnnounceaddrdnsHB\x88\x01\x01\x12T\n\x18require_confirmed_inputs\x18\x44 \x01(\x0b\x32-.cln.ListconfigsConfigsRequireconfirmedinputsHC\x88\x01\x01\x12\x39\n\ncommit_fee\x18\x45 \x01(\x0b\x32 .cln.ListconfigsConfigsCommitfeeHD\x88\x01\x01\x12N\n\x15\x63ommit_feerate_offset\x18\x46 \x01(\x0b\x32*.cln.ListconfigsConfigsCommitfeerateoffsetHE\x88\x01\x01\x12T\n\x18\x61utoconnect_seeker_peers\x18G \x01(\x0b\x32-.cln.ListconfigsConfigsAutoconnectseekerpeersHF\x88\x01\x01\x42\x07\n\x05_confB\x0c\n\n_developerB\x10\n\x0e_clear_pluginsB\x0e\n\x0c_disable_mppB\n\n\x08_mainnetB\n\n\x08_regtestB\t\n\x07_signetB\n\n\x08_testnetB\x13\n\x11_important_pluginB\t\n\x07_pluginB\r\n\x0b_plugin_dirB\x10\n\x0e_lightning_dirB\n\n\x08_networkB\x18\n\x16_allow_deprecated_apisB\x0b\n\t_rpc_fileB\x11\n\x0f_disable_pluginB\x13\n\x11_always_use_proxyB\t\n\x07_daemonB\t\n\x07_walletB\x11\n\x0f_large_channelsB\x19\n\x17_experimental_dual_fundB\x18\n\x16_experimental_splicingB\x1e\n\x1c_experimental_onion_messagesB\x16\n\x14_experimental_offersB&\n$_experimental_shutdown_wrong_fundingB\x1c\n\x1a_experimental_peer_storageB\x17\n\x15_experimental_anchorsB\x13\n\x11_database_upgradeB\x06\n\x04_rgbB\x08\n\x06_aliasB\x0b\n\t_pid_fileB\x14\n\x12_ignore_fee_limitsB\x13\n\x11_watchtime_blocksB\x16\n\x14_max_locktime_blocksB\x13\n\x11_funding_confirmsB\r\n\x0b_cltv_deltaB\r\n\x0b_cltv_finalB\x0e\n\x0c_commit_timeB\x0b\n\t_fee_baseB\t\n\x07_rescanB\x12\n\x10_fee_per_satoshiB\x17\n\x15_max_concurrent_htlcsB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x1e\n\x1c_max_dust_htlc_exposure_msatB\x13\n\x11_min_capacity_satB\x07\n\x05_addrB\x10\n\x0e_announce_addrB\x0c\n\n_bind_addrB\n\n\x08_offlineB\r\n\x0b_autolistenB\x08\n\x06_proxyB\x0e\n\x0c_disable_dnsB\x1b\n\x19_announce_addr_discoveredB \n\x1e_announce_addr_discovered_portB\x10\n\x0e_encrypted_hsmB\x10\n\x0e_rpc_file_modeB\x0c\n\n_log_levelB\r\n\x0b_log_prefixB\x0b\n\t_log_fileB\x11\n\x0f_log_timestampsB\x11\n\x0f_force_feeratesB\x0c\n\n_subdaemonB\x19\n\x17_fetchinvoice_noconnectB\x18\n\x16_accept_htlc_tlv_typesB\x17\n\x15_tor_service_passwordB\x14\n\x12_announce_addr_dnsB\x1b\n\x19_require_confirmed_inputsB\r\n\x0b_commit_feeB\x18\n\x16_commit_feerate_offsetB\x1b\n\x19_autoconnect_seeker_peers\"\xa2\x01\n\x16ListconfigsConfigsConf\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12H\n\x06source\x18\x02 \x01(\x0e\x32\x38.cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource\"+\n\x1cListconfigsConfigsConfSource\x12\x0b\n\x07\x43MDLINE\x10\x00\":\n\x1bListconfigsConfigsDeveloper\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x1eListconfigsConfigsClearplugins\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"[\n\x1cListconfigsConfigsDisablempp\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_plugin\"8\n\x19ListconfigsConfigsMainnet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"8\n\x19ListconfigsConfigsRegtest\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"7\n\x18ListconfigsConfigsSignet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"8\n\x19ListconfigsConfigsTestnet\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n!ListconfigsConfigsImportantplugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"?\n\x18ListconfigsConfigsPlugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"B\n\x1bListconfigsConfigsPlugindir\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"C\n\x1eListconfigsConfigsLightningdir\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsNetwork\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"K\n%ListconfigsConfigsAllowdeprecatedapis\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsRpcfile\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n\x1fListconfigsConfigsDisableplugin\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"F\n ListconfigsConfigsAlwaysuseproxy\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"7\n\x18ListconfigsConfigsDaemon\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x18ListconfigsConfigsWallet\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x1fListconfigsConfigsLargechannels\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"E\n&ListconfigsConfigsExperimentaldualfund\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"E\n&ListconfigsConfigsExperimentalsplicing\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"J\n+ListconfigsConfigsExperimentalonionmessages\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"C\n$ListconfigsConfigsExperimentaloffers\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"Q\n2ListconfigsConfigsExperimentalshutdownwrongfunding\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n)ListconfigsConfigsExperimentalpeerstorage\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n%ListconfigsConfigsExperimentalanchors\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsDatabaseupgrade\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\":\n\x15ListconfigsConfigsRgb\x12\x11\n\tvalue_str\x18\x01 \x01(\x0c\x12\x0e\n\x06source\x18\x02 \x01(\t\"<\n\x17ListconfigsConfigsAlias\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsPidfile\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsIgnorefeelimits\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n!ListconfigsConfigsWatchtimeblocks\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"H\n#ListconfigsConfigsMaxlocktimeblocks\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"F\n!ListconfigsConfigsFundingconfirms\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCltvdelta\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCltvfinal\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"A\n\x1cListconfigsConfigsCommittime\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\">\n\x19ListconfigsConfigsFeebase\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x18ListconfigsConfigsRescan\x12\x11\n\tvalue_int\x18\x01 \x01(\x12\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n\x1fListconfigsConfigsFeepersatoshi\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"I\n$ListconfigsConfigsMaxconcurrenthtlcs\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"T\n!ListconfigsConfigsHtlcminimummsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"T\n!ListconfigsConfigsHtlcmaximummsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"\\\n)ListconfigsConfigsMaxdusthtlcexposuremsat\x12\x1f\n\nvalue_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06source\x18\x02 \x01(\t\"g\n ListconfigsConfigsMincapacitysat\x12\x11\n\tvalue_int\x18\x01 \x01(\x04\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x14\n\x07\x64ynamic\x18\x03 \x01(\x08H\x00\x88\x01\x01\x42\n\n\x08_dynamic\"=\n\x16ListconfigsConfigsAddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"E\n\x1eListconfigsConfigsAnnounceaddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"A\n\x1aListconfigsConfigsBindaddr\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"8\n\x19ListconfigsConfigsOffline\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1cListconfigsConfigsAutolisten\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"<\n\x17ListconfigsConfigsProxy\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\";\n\x1cListconfigsConfigsDisabledns\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"\x82\x02\n(ListconfigsConfigsAnnounceaddrdiscovered\x12r\n\tvalue_str\x18\x01 \x01(\x0e\x32_.cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str\x12\x0e\n\x06source\x18\x02 \x01(\t\"R\n1ListconfigsConfigsAnnounceaddrdiscoveredValue_str\x12\x08\n\x04TRUE\x10\x00\x12\t\n\x05\x46\x41LSE\x10\x01\x12\x08\n\x04\x41UTO\x10\x02\"Q\n,ListconfigsConfigsAnnounceaddrdiscoveredport\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"=\n\x1eListconfigsConfigsEncryptedhsm\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1dListconfigsConfigsRpcfilemode\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"?\n\x1aListconfigsConfigsLoglevel\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsLogprefix\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x19ListconfigsConfigsLogfile\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"E\n\x1fListconfigsConfigsLogtimestamps\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"D\n\x1fListconfigsConfigsForcefeerates\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"B\n\x1bListconfigsConfigsSubdaemon\x12\x12\n\nvalues_str\x18\x01 \x03(\t\x12\x0f\n\x07sources\x18\x02 \x03(\t\"f\n\'ListconfigsConfigsFetchinvoicenoconnect\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x13\n\x06plugin\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_plugin\"I\n$ListconfigsConfigsAccepthtlctlvtypes\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"I\n$ListconfigsConfigsTorservicepassword\x12\x11\n\tvalue_str\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\"G\n!ListconfigsConfigsAnnounceaddrdns\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"N\n(ListconfigsConfigsRequireconfirmedinputs\x12\x12\n\nvalue_bool\x18\x01 \x01(\x08\x12\x0e\n\x06source\x18\x02 \x01(\t\"@\n\x1bListconfigsConfigsCommitfee\x12\x11\n\tvalue_int\x18\x01 \x01(\x04\x12\x0e\n\x06source\x18\x02 \x01(\t\"J\n%ListconfigsConfigsCommitfeerateoffset\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"M\n(ListconfigsConfigsAutoconnectseekerpeers\x12\x11\n\tvalue_int\x18\x01 \x01(\r\x12\x0e\n\x06source\x18\x02 \x01(\t\"r\n\x12ListconfigsPlugins\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x34\n\x07options\x18\x03 \x01(\x0b\x32\x1e.cln.ListconfigsPluginsOptionsH\x00\x88\x01\x01\x42\n\n\x08_options\"\x1b\n\x19ListconfigsPluginsOptions\"\x84\x01\n\x1bListconfigsImportantplugins\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12=\n\x07options\x18\x03 \x01(\x0b\x32\'.cln.ListconfigsImportantpluginsOptionsH\x00\x88\x01\x01\x42\n\n\x08_options\"$\n\"ListconfigsImportantpluginsOptions\"\r\n\x0bStopRequest\"q\n\x0cStopResponse\x12\x31\n\x06result\x18\x01 \x01(\x0e\x32\x1c.cln.StopResponse.StopResultH\x00\x88\x01\x01\"#\n\nStopResult\x12\x15\n\x11SHUTDOWN_COMPLETE\x10\x00\x42\t\n\x07_result\"/\n\x0bHelpRequest\x12\x14\n\x07\x63ommand\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_command\"\x95\x01\n\x0cHelpResponse\x12\x1b\n\x04help\x18\x01 \x03(\x0b\x32\r.cln.HelpHelp\x12:\n\x0b\x66ormat_hint\x18\x02 \x01(\x0e\x32 .cln.HelpResponse.HelpFormathintH\x00\x88\x01\x01\"\x1c\n\x0eHelpFormathint\x12\n\n\x06SIMPLE\x10\x00\x42\x0e\n\x0c_format_hint\"\x1b\n\x08HelpHelp\x12\x0f\n\x07\x63ommand\x18\x01 \x01(\t\"g\n\x18PreapprovekeysendRequest\x12\x13\n\x0b\x64\x65stination\x18\x01 \x01(\x0c\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\"\x1b\n\x19PreapprovekeysendResponse\"*\n\x18PreapproveinvoiceRequest\x12\x0e\n\x06\x62olt11\x18\x01 \x01(\t\"\x1b\n\x19PreapproveinvoiceResponse\"\x15\n\x13StaticbackupRequest\"#\n\x14StaticbackupResponse\x12\x0b\n\x03scb\x18\x01 \x03(\x0c\"d\n\x16\x42kprchannelsapyRequest\x12\x17\n\nstart_time\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\r\n\x0b_start_timeB\x0b\n\t_end_time\"Q\n\x17\x42kprchannelsapyResponse\x12\x36\n\x0c\x63hannels_apy\x18\x01 \x03(\x0b\x32 .cln.BkprchannelsapyChannels_apy\"\xfa\x06\n\x1b\x42kprchannelsapyChannels_apy\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12$\n\x0frouted_out_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0erouted_in_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12(\n\x13lease_fee_paid_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12*\n\x15lease_fee_earned_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12$\n\x0fpushed_out_msat\x18\x06 \x01(\x0b\x32\x0b.cln.Amount\x12#\n\x0epushed_in_msat\x18\x07 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x16our_start_balance_msat\x18\x08 \x01(\x0b\x32\x0b.cln.Amount\x12/\n\x1a\x63hannel_start_balance_msat\x18\t \x01(\x0b\x32\x0b.cln.Amount\x12\"\n\rfees_out_msat\x18\n \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x0c\x66\x65\x65s_in_msat\x18\x0b \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12\x17\n\x0futilization_out\x18\x0c \x01(\t\x12$\n\x17utilization_out_initial\x18\r \x01(\tH\x01\x88\x01\x01\x12\x16\n\x0eutilization_in\x18\x0e \x01(\t\x12#\n\x16utilization_in_initial\x18\x0f \x01(\tH\x02\x88\x01\x01\x12\x0f\n\x07\x61py_out\x18\x10 \x01(\t\x12\x1c\n\x0f\x61py_out_initial\x18\x11 \x01(\tH\x03\x88\x01\x01\x12\x0e\n\x06\x61py_in\x18\x12 \x01(\t\x12\x1b\n\x0e\x61py_in_initial\x18\x13 \x01(\tH\x04\x88\x01\x01\x12\x11\n\tapy_total\x18\x14 \x01(\t\x12\x1e\n\x11\x61py_total_initial\x18\x15 \x01(\tH\x05\x88\x01\x01\x12\x16\n\tapy_lease\x18\x16 \x01(\tH\x06\x88\x01\x01\x42\x0f\n\r_fees_in_msatB\x1a\n\x18_utilization_out_initialB\x19\n\x17_utilization_in_initialB\x12\n\x10_apy_out_initialB\x11\n\x0f_apy_in_initialB\x14\n\x12_apy_total_initialB\x0c\n\n_apy_lease\"\xd2\x01\n\x18\x42kprdumpincomecsvRequest\x12\x12\n\ncsv_format\x18\x01 \x01(\t\x12\x15\n\x08\x63sv_file\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10\x63onsolidate_fees\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12\x17\n\nstart_time\x18\x04 \x01(\x04H\x02\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x05 \x01(\x04H\x03\x88\x01\x01\x42\x0b\n\t_csv_fileB\x13\n\x11_consolidate_feesB\r\n\x0b_start_timeB\x0b\n\t_end_time\"\xd6\x01\n\x19\x42kprdumpincomecsvResponse\x12\x10\n\x08\x63sv_file\x18\x01 \x01(\t\x12N\n\ncsv_format\x18\x02 \x01(\x0e\x32:.cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format\"W\n\x1b\x42kprdumpincomecsvCsv_format\x12\x0f\n\x0b\x43OINTRACKER\x10\x00\x12\n\n\x06KOINLY\x10\x01\x12\x0b\n\x07HARMONY\x10\x02\x12\x0e\n\nQUICKBOOKS\x10\x03\"%\n\x12\x42kprinspectRequest\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\"7\n\x13\x42kprinspectResponse\x12 \n\x03txs\x18\x01 \x03(\x0b\x32\x13.cln.BkprinspectTxs\"\x9a\x01\n\x0e\x42kprinspectTxs\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\x18\n\x0b\x62lockheight\x18\x02 \x01(\rH\x00\x88\x01\x01\x12#\n\x0e\x66\x65\x65s_paid_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12+\n\x07outputs\x18\x04 \x03(\x0b\x32\x1a.cln.BkprinspectTxsOutputsB\x0e\n\x0c_blockheight\"\xbc\x03\n\x15\x42kprinspectTxsOutputs\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x0e\n\x06outnum\x18\x02 \x01(\r\x12&\n\x11output_value_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x04 \x01(\t\x12%\n\x0b\x63redit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12$\n\ndebit_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12 \n\x13originating_account\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x17\n\noutput_tag\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x16\n\tspend_tag\x18\t \x01(\tH\x04\x88\x01\x01\x12\x1a\n\rspending_txid\x18\n \x01(\x0cH\x05\x88\x01\x01\x12\x17\n\npayment_id\x18\x0b \x01(\x0cH\x06\x88\x01\x01\x42\x0e\n\x0c_credit_msatB\r\n\x0b_debit_msatB\x16\n\x14_originating_accountB\r\n\x0b_output_tagB\x0c\n\n_spend_tagB\x10\n\x0e_spending_txidB\r\n\x0b_payment_id\"h\n\x1c\x42kprlistaccounteventsRequest\x12\x14\n\x07\x61\x63\x63ount\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\npayment_id\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_accountB\r\n\x0b_payment_id\"Q\n\x1d\x42kprlistaccounteventsResponse\x12\x30\n\x06\x65vents\x18\x01 \x03(\x0b\x32 .cln.BkprlistaccounteventsEvents\"\xa1\x05\n\x1b\x42kprlistaccounteventsEvents\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12S\n\titem_type\x18\x02 \x01(\x0e\x32@.cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType\x12\x0b\n\x03tag\x18\x03 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x06 \x01(\t\x12\x11\n\ttimestamp\x18\x07 \x01(\r\x12\x15\n\x08outpoint\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x62lockheight\x18\t \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06origin\x18\n \x01(\tH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\x0b \x01(\x0cH\x03\x88\x01\x01\x12\x11\n\x04txid\x18\x0c \x01(\x0cH\x04\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\r \x01(\tH\x05\x88\x01\x01\x12#\n\tfees_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x06\x88\x01\x01\x12\x19\n\x0cis_rebalance\x18\x0f \x01(\x08H\x07\x88\x01\x01\x12\x14\n\x07part_id\x18\x10 \x01(\rH\x08\x88\x01\x01\"J\n\x1f\x42kprlistaccounteventsEventsType\x12\x0f\n\x0bONCHAIN_FEE\x10\x00\x12\t\n\x05\x43HAIN\x10\x01\x12\x0b\n\x07\x43HANNEL\x10\x02\x42\x0b\n\t_outpointB\x0e\n\x0c_blockheightB\t\n\x07_originB\r\n\x0b_payment_idB\x07\n\x05_txidB\x0e\n\x0c_descriptionB\x0c\n\n_fees_msatB\x0f\n\r_is_rebalanceB\n\n\x08_part_id\"\x19\n\x17\x42kprlistbalancesRequest\"K\n\x18\x42kprlistbalancesResponse\x12/\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1d.cln.BkprlistbalancesAccounts\"\xc6\x02\n\x18\x42kprlistbalancesAccounts\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x37\n\x08\x62\x61lances\x18\x02 \x03(\x0b\x32%.cln.BkprlistbalancesAccountsBalances\x12\x14\n\x07peer_id\x18\x03 \x01(\x0cH\x00\x88\x01\x01\x12\x16\n\twe_opened\x18\x04 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0e\x61\x63\x63ount_closed\x18\x05 \x01(\x08H\x02\x88\x01\x01\x12\x1d\n\x10\x61\x63\x63ount_resolved\x18\x06 \x01(\x08H\x03\x88\x01\x01\x12\x1e\n\x11resolved_at_block\x18\x07 \x01(\rH\x04\x88\x01\x01\x42\n\n\x08_peer_idB\x0c\n\n_we_openedB\x11\n\x0f_account_closedB\x13\n\x11_account_resolvedB\x14\n\x12_resolved_at_block\"X\n BkprlistbalancesAccountsBalances\x12!\n\x0c\x62\x61lance_msat\x18\x01 \x01(\x0b\x32\x0b.cln.Amount\x12\x11\n\tcoin_type\x18\x02 \x01(\t\"\x97\x01\n\x15\x42kprlistincomeRequest\x12\x1d\n\x10\x63onsolidate_fees\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x17\n\nstart_time\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x03 \x01(\rH\x02\x88\x01\x01\x42\x13\n\x11_consolidate_feesB\r\n\x0b_start_timeB\x0b\n\t_end_time\"Q\n\x16\x42kprlistincomeResponse\x12\x37\n\rincome_events\x18\x01 \x03(\x0b\x32 .cln.BkprlistincomeIncome_events\"\xb5\x02\n\x1b\x42kprlistincomeIncome_events\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x0b\n\x03tag\x18\x02 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12\x11\n\ttimestamp\x18\x06 \x01(\r\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08outpoint\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04txid\x18\t \x01(\x0cH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\n \x01(\x0cH\x03\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_outpointB\x07\n\x05_txidB\r\n\x0b_payment_id\"P\n%BkpreditdescriptionbypaymentidRequest\x12\x12\n\npayment_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\"e\n&BkpreditdescriptionbypaymentidResponse\x12;\n\x07updated\x18\x01 \x03(\x0b\x32*.cln.BkpreditdescriptionbypaymentidUpdated\"\xa3\x05\n%BkpreditdescriptionbypaymentidUpdated\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12g\n\titem_type\x18\x02 \x01(\x0e\x32T.cln.BkpreditdescriptionbypaymentidUpdated.BkpreditdescriptionbypaymentidUpdatedType\x12\x0b\n\x03tag\x18\x03 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x06 \x01(\t\x12\x11\n\ttimestamp\x18\x07 \x01(\r\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12\x15\n\x08outpoint\x18\t \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x62lockheight\x18\n \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06origin\x18\x0b \x01(\tH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\x0c \x01(\x0cH\x03\x88\x01\x01\x12\x11\n\x04txid\x18\r \x01(\x0cH\x04\x88\x01\x01\x12#\n\tfees_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x19\n\x0cis_rebalance\x18\x0f \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x07part_id\x18\x10 \x01(\rH\x07\x88\x01\x01\"C\n)BkpreditdescriptionbypaymentidUpdatedType\x12\t\n\x05\x43HAIN\x10\x00\x12\x0b\n\x07\x43HANNEL\x10\x01\x42\x0b\n\t_outpointB\x0e\n\x0c_blockheightB\t\n\x07_originB\r\n\x0b_payment_idB\x07\n\x05_txidB\x0c\n\n_fees_msatB\x0f\n\r_is_rebalanceB\n\n\x08_part_id\"M\n$BkpreditdescriptionbyoutpointRequest\x12\x10\n\x08outpoint\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\"c\n%BkpreditdescriptionbyoutpointResponse\x12:\n\x07updated\x18\x01 \x03(\x0b\x32).cln.BkpreditdescriptionbyoutpointUpdated\"\x9f\x05\n$BkpreditdescriptionbyoutpointUpdated\x12\x0f\n\x07\x61\x63\x63ount\x18\x01 \x01(\t\x12\x65\n\titem_type\x18\x02 \x01(\x0e\x32R.cln.BkpreditdescriptionbyoutpointUpdated.BkpreditdescriptionbyoutpointUpdatedType\x12\x0b\n\x03tag\x18\x03 \x01(\t\x12 \n\x0b\x63redit_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12\x1f\n\ndebit_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x10\n\x08\x63urrency\x18\x06 \x01(\t\x12\x11\n\ttimestamp\x18\x07 \x01(\r\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12\x15\n\x08outpoint\x18\t \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x62lockheight\x18\n \x01(\rH\x01\x88\x01\x01\x12\x13\n\x06origin\x18\x0b \x01(\tH\x02\x88\x01\x01\x12\x17\n\npayment_id\x18\x0c \x01(\x0cH\x03\x88\x01\x01\x12\x11\n\x04txid\x18\r \x01(\x0cH\x04\x88\x01\x01\x12#\n\tfees_msat\x18\x0e \x01(\x0b\x32\x0b.cln.AmountH\x05\x88\x01\x01\x12\x19\n\x0cis_rebalance\x18\x0f \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x07part_id\x18\x10 \x01(\rH\x07\x88\x01\x01\"B\n(BkpreditdescriptionbyoutpointUpdatedType\x12\t\n\x05\x43HAIN\x10\x00\x12\x0b\n\x07\x43HANNEL\x10\x01\x42\x0b\n\t_outpointB\x0e\n\x0c_blockheightB\t\n\x07_originB\r\n\x0b_payment_idB\x07\n\x05_txidB\x0c\n\n_fees_msatB\x0f\n\r_is_rebalanceB\n\n\x08_part_id\"N\n\x14\x42lacklistruneRequest\x12\x12\n\x05start\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x10\n\x03\x65nd\x18\x02 \x01(\x04H\x01\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_end\"G\n\x15\x42lacklistruneResponse\x12.\n\tblacklist\x18\x01 \x03(\x0b\x32\x1b.cln.BlacklistruneBlacklist\"4\n\x16\x42lacklistruneBlacklist\x12\r\n\x05start\x18\x01 \x01(\x04\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x04\"p\n\x10\x43heckruneRequest\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x13\n\x06nodeid\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06method\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x0e\n\x06params\x18\x04 \x03(\tB\t\n\x07_nodeidB\t\n\x07_method\"\"\n\x11\x43heckruneResponse\x12\r\n\x05valid\x18\x01 \x01(\x08\"E\n\x11\x43reateruneRequest\x12\x11\n\x04rune\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x0crestrictions\x18\x02 \x03(\tB\x07\n\x05_rune\"{\n\x12\x43reateruneResponse\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x11\n\tunique_id\x18\x02 \x01(\t\x12&\n\x19warning_unrestricted_rune\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x1c\n\x1a_warning_unrestricted_rune\".\n\x10ShowrunesRequest\x12\x11\n\x04rune\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_rune\"7\n\x11ShowrunesResponse\x12\"\n\x05runes\x18\x01 \x03(\x0b\x32\x13.cln.ShowrunesRunes\"\x9d\x02\n\x0eShowrunesRunes\x12\x0c\n\x04rune\x18\x01 \x01(\t\x12\x11\n\tunique_id\x18\x02 \x01(\t\x12\x35\n\x0crestrictions\x18\x03 \x03(\x0b\x32\x1f.cln.ShowrunesRunesRestrictions\x12\x1f\n\x17restrictions_as_english\x18\x04 \x01(\t\x12\x13\n\x06stored\x18\x05 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x0b\x62lacklisted\x18\x06 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tlast_used\x18\x07 \x01(\x01H\x02\x88\x01\x01\x12\x15\n\x08our_rune\x18\x08 \x01(\x08H\x03\x88\x01\x01\x42\t\n\x07_storedB\x0e\n\x0c_blacklistedB\x0c\n\n_last_usedB\x0b\n\t_our_rune\"p\n\x1aShowrunesRunesRestrictions\x12\x41\n\x0c\x61lternatives\x18\x01 \x03(\x0b\x32+.cln.ShowrunesRunesRestrictionsAlternatives\x12\x0f\n\x07\x65nglish\x18\x02 \x01(\t\"n\n&ShowrunesRunesRestrictionsAlternatives\x12\x11\n\tfieldname\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x11\n\tcondition\x18\x03 \x01(\t\x12\x0f\n\x07\x65nglish\x18\x04 \x01(\t\"B\n\x17\x41skreneunreserveRequest\x12\'\n\x04path\x18\x01 \x03(\x0b\x32\x19.cln.AskreneunreservePath\"\x1a\n\x18\x41skreneunreserveResponse\"t\n\x14\x41skreneunreservePath\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12!\n\x14short_channel_id_dir\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_short_channel_id_dir\"8\n\x18\x41skrenelistlayersRequest\x12\x12\n\x05layer\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_layer\"I\n\x19\x41skrenelistlayersResponse\x12,\n\x06layers\x18\x01 \x03(\x0b\x32\x1c.cln.AskrenelistlayersLayers\"\x83\x03\n\x17\x41skrenelistlayersLayers\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x16\n\x0e\x64isabled_nodes\x18\x02 \x03(\x0c\x12\x46\n\x10\x63reated_channels\x18\x03 \x03(\x0b\x32,.cln.AskrenelistlayersLayersCreated_channels\x12<\n\x0b\x63onstraints\x18\x04 \x03(\x0b\x32\'.cln.AskrenelistlayersLayersConstraints\x12\x17\n\npersistent\x18\x05 \x01(\x08H\x00\x88\x01\x01\x12\x19\n\x11\x64isabled_channels\x18\x06 \x03(\t\x12\x44\n\x0f\x63hannel_updates\x18\x07 \x03(\x0b\x32+.cln.AskrenelistlayersLayersChannel_updates\x12\x32\n\x06\x62iases\x18\x08 \x03(\x0b\x32\".cln.AskrenelistlayersLayersBiasesB\r\n\x0b_persistent\"\x8c\x01\n\'AskrenelistlayersLayersCreated_channels\x12\x0e\n\x06source\x18\x01 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\x0c\x12\x18\n\x10short_channel_id\x18\x03 \x01(\t\x12\"\n\rcapacity_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\"\xa9\x03\n&AskrenelistlayersLayersChannel_updates\x12\x1c\n\x14short_channel_id_dir\x18\x01 \x01(\t\x12\x14\n\x07\x65nabled\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12+\n\x11htlc_minimum_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12+\n\x11htlc_maximum_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\'\n\rfee_base_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12(\n\x1b\x66\x65\x65_proportional_millionths\x18\x06 \x01(\rH\x04\x88\x01\x01\x12\x1e\n\x11\x63ltv_expiry_delta\x18\x07 \x01(\rH\x05\x88\x01\x01\x42\n\n\x08_enabledB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x10\n\x0e_fee_base_msatB\x1e\n\x1c_fee_proportional_millionthsB\x14\n\x12_cltv_expiry_delta\"\xf8\x01\n\"AskrenelistlayersLayersConstraints\x12&\n\x0cmaximum_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12&\n\x0cminimum_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12!\n\x14short_channel_id_dir\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x16\n\ttimestamp\x18\x06 \x01(\x04H\x03\x88\x01\x01\x42\x0f\n\r_maximum_msatB\x0f\n\r_minimum_msatB\x17\n\x15_short_channel_id_dirB\x0c\n\n_timestamp\"u\n\x1d\x41skrenelistlayersLayersBiases\x12\x1c\n\x14short_channel_id_dir\x18\x01 \x01(\t\x12\x0c\n\x04\x62ias\x18\x02 \x01(\x12\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"R\n\x19\x41skrenecreatelayerRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x17\n\npersistent\x18\x02 \x01(\x08H\x00\x88\x01\x01\x42\r\n\x0b_persistent\"K\n\x1a\x41skrenecreatelayerResponse\x12-\n\x06layers\x18\x01 \x03(\x0b\x32\x1d.cln.AskrenecreatelayerLayers\"\xf4\x02\n\x18\x41skrenecreatelayerLayers\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x12\n\npersistent\x18\x02 \x01(\x08\x12\x16\n\x0e\x64isabled_nodes\x18\x03 \x03(\x0c\x12\x19\n\x11\x64isabled_channels\x18\x04 \x03(\t\x12G\n\x10\x63reated_channels\x18\x05 \x03(\x0b\x32-.cln.AskrenecreatelayerLayersCreated_channels\x12\x45\n\x0f\x63hannel_updates\x18\x06 \x03(\x0b\x32,.cln.AskrenecreatelayerLayersChannel_updates\x12=\n\x0b\x63onstraints\x18\x07 \x03(\x0b\x32(.cln.AskrenecreatelayerLayersConstraints\x12\x33\n\x06\x62iases\x18\x08 \x03(\x0b\x32#.cln.AskrenecreatelayerLayersBiases\"\x8d\x01\n(AskrenecreatelayerLayersCreated_channels\x12\x0e\n\x06source\x18\x01 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\x0c\x12\x18\n\x10short_channel_id\x18\x03 \x01(\t\x12\"\n\rcapacity_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\"\xd2\x02\n\'AskrenecreatelayerLayersChannel_updates\x12+\n\x11htlc_minimum_msat\x18\x01 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12+\n\x11htlc_maximum_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\'\n\rfee_base_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12(\n\x1b\x66\x65\x65_proportional_millionths\x18\x04 \x01(\rH\x03\x88\x01\x01\x12\x12\n\x05\x64\x65lay\x18\x05 \x01(\rH\x04\x88\x01\x01\x42\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x10\n\x0e_fee_base_msatB\x1e\n\x1c_fee_proportional_millionthsB\x08\n\x06_delay\"\xc4\x01\n#AskrenecreatelayerLayersConstraints\x12\x18\n\x10short_channel_id\x18\x01 \x01(\t\x12\x11\n\tdirection\x18\x02 \x01(\r\x12&\n\x0cmaximum_msat\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12&\n\x0cminimum_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x42\x0f\n\r_maximum_msatB\x0f\n\r_minimum_msat\"v\n\x1e\x41skrenecreatelayerLayersBiases\x12\x1c\n\x14short_channel_id_dir\x18\x01 \x01(\t\x12\x0c\n\x04\x62ias\x18\x02 \x01(\x12\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"*\n\x19\x41skreneremovelayerRequest\x12\r\n\x05layer\x18\x01 \x01(\t\"\x1c\n\x1a\x41skreneremovelayerResponse\">\n\x15\x41skrenereserveRequest\x12%\n\x04path\x18\x01 \x03(\x0b\x32\x17.cln.AskrenereservePath\"\x18\n\x16\x41skrenereserveResponse\"r\n\x12\x41skrenereservePath\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12!\n\x14short_channel_id_dir\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_short_channel_id_dir\"2\n\x11\x41skreneageRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x0e\n\x06\x63utoff\x18\x02 \x01(\x04\"8\n\x12\x41skreneageResponse\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x13\n\x0bnum_removed\x18\x02 \x01(\x04\"\xb3\x01\n\x10GetroutesRequest\x12\x0e\n\x06source\x18\x01 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x0e\n\x06layers\x18\x04 \x03(\t\x12 \n\x0bmaxfee_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\x12\x17\n\nfinal_cltv\x18\x07 \x01(\rH\x00\x88\x01\x01\x42\r\n\x0b_final_cltv\"R\n\x11GetroutesResponse\x12\x17\n\x0fprobability_ppm\x18\x01 \x01(\x04\x12$\n\x06routes\x18\x02 \x03(\x0b\x32\x14.cln.GetroutesRoutes\"\x9c\x01\n\x0fGetroutesRoutes\x12\x17\n\x0fprobability_ppm\x18\x01 \x01(\x04\x12 \n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12&\n\x04path\x18\x03 \x03(\x0b\x32\x18.cln.GetroutesRoutesPath\x12\x17\n\nfinal_cltv\x18\x04 \x01(\rH\x00\x88\x01\x01\x42\r\n\x0b_final_cltv\"\x98\x01\n\x13GetroutesRoutesPath\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0cnext_node_id\x18\x04 \x01(\x0c\x12\r\n\x05\x64\x65lay\x18\x05 \x01(\r\x12!\n\x14short_channel_id_dir\x18\x06 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_short_channel_id_dir\"8\n\x19\x41skrenedisablenodeRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x0c\n\x04node\x18\x02 \x01(\x0c\"\x1c\n\x1a\x41skrenedisablenodeResponse\"\xcd\x02\n\x1b\x41skreneinformchannelRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12!\n\x14short_channel_id_dir\x18\x06 \x01(\tH\x00\x88\x01\x01\x12%\n\x0b\x61mount_msat\x18\x07 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12P\n\x06inform\x18\x08 \x01(\x0e\x32;.cln.AskreneinformchannelRequest.AskreneinformchannelInformH\x02\x88\x01\x01\"O\n\x1a\x41skreneinformchannelInform\x12\x0f\n\x0b\x43ONSTRAINED\x10\x00\x12\x11\n\rUNCONSTRAINED\x10\x01\x12\r\n\tSUCCEEDED\x10\x02\x42\x17\n\x15_short_channel_id_dirB\x0e\n\x0c_amount_msatB\t\n\x07_inform\"Y\n\x1c\x41skreneinformchannelResponse\x12\x39\n\x0b\x63onstraints\x18\x02 \x03(\x0b\x32$.cln.AskreneinformchannelConstraints\"\xd3\x01\n\x1f\x41skreneinformchannelConstraints\x12\x1c\n\x14short_channel_id_dir\x18\x01 \x01(\t\x12\r\n\x05layer\x18\x02 \x01(\t\x12\x11\n\ttimestamp\x18\x03 \x01(\x04\x12&\n\x0cmaximum_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12&\n\x0cminimum_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x42\x0f\n\r_maximum_msatB\x0f\n\r_minimum_msat\"\x8f\x01\n\x1b\x41skrenecreatechannelRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\x0c\x12\x13\n\x0b\x64\x65stination\x18\x03 \x01(\x0c\x12\x18\n\x10short_channel_id\x18\x04 \x01(\t\x12\"\n\rcapacity_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\"\x1e\n\x1c\x41skrenecreatechannelResponse\"\xad\x03\n\x1b\x41skreneupdatechannelRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x1c\n\x14short_channel_id_dir\x18\x02 \x01(\t\x12\x14\n\x07\x65nabled\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12+\n\x11htlc_minimum_msat\x18\x04 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12+\n\x11htlc_maximum_msat\x18\x05 \x01(\x0b\x32\x0b.cln.AmountH\x02\x88\x01\x01\x12\'\n\rfee_base_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x12(\n\x1b\x66\x65\x65_proportional_millionths\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x1e\n\x11\x63ltv_expiry_delta\x18\x08 \x01(\rH\x05\x88\x01\x01\x42\n\n\x08_enabledB\x14\n\x12_htlc_minimum_msatB\x14\n\x12_htlc_maximum_msatB\x10\n\x0e_fee_base_msatB\x1e\n\x1c_fee_proportional_millionthsB\x14\n\x12_cltv_expiry_delta\"\x1e\n\x1c\x41skreneupdatechannelResponse\"\x80\x01\n\x19\x41skrenebiaschannelRequest\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x1c\n\x14short_channel_id_dir\x18\x02 \x01(\t\x12\x0c\n\x04\x62ias\x18\x03 \x01(\x12\x12\x18\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"K\n\x1a\x41skrenebiaschannelResponse\x12-\n\x06\x62iases\x18\x01 \x03(\x0b\x32\x1d.cln.AskrenebiaschannelBiases\"\x7f\n\x18\x41skrenebiaschannelBiases\x12\r\n\x05layer\x18\x01 \x01(\t\x12\x1c\n\x14short_channel_id_dir\x18\x02 \x01(\t\x12\x0c\n\x04\x62ias\x18\x03 \x01(\x12\x12\x18\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\" \n\x1e\x41skrenelistreservationsRequest\"a\n\x1f\x41skrenelistreservationsResponse\x12>\n\x0creservations\x18\x01 \x03(\x0b\x32(.cln.AskrenelistreservationsReservations\"\x91\x01\n#AskrenelistreservationsReservations\x12\x1c\n\x14short_channel_id_dir\x18\x01 \x01(\t\x12 \n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x16\n\x0e\x61ge_in_seconds\x18\x03 \x01(\x04\x12\x12\n\ncommand_id\x18\x04 \x01(\t\"\x8a\x02\n\x19InjectpaymentonionRequest\x12\r\n\x05onion\x18\x01 \x01(\x0c\x12\x14\n\x0cpayment_hash\x18\x02 \x01(\x0c\x12 \n\x0b\x61mount_msat\x18\x03 \x01(\x0b\x32\x0b.cln.Amount\x12\x13\n\x0b\x63ltv_expiry\x18\x04 \x01(\r\x12\x0e\n\x06partid\x18\x05 \x01(\x04\x12\x0f\n\x07groupid\x18\x06 \x01(\x04\x12\x12\n\x05label\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tinvstring\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rlocalinvreqid\x18\t \x01(\x0cH\x02\x88\x01\x01\x42\x08\n\x06_labelB\x0c\n\n_invstringB\x10\n\x0e_localinvreqid\"]\n\x1aInjectpaymentonionResponse\x12\x12\n\ncreated_at\x18\x01 \x01(\x04\x12\x14\n\x0c\x63ompleted_at\x18\x02 \x01(\x04\x12\x15\n\rcreated_index\x18\x03 \x01(\x04\"\xf3\x01\n\x0bXpayRequest\x12\x11\n\tinvstring\x18\x01 \x01(\t\x12%\n\x0b\x61mount_msat\x18\x02 \x01(\x0b\x32\x0b.cln.AmountH\x00\x88\x01\x01\x12 \n\x06maxfee\x18\x03 \x01(\x0b\x32\x0b.cln.AmountH\x01\x88\x01\x01\x12\x0e\n\x06layers\x18\x04 \x03(\t\x12\x16\n\tretry_for\x18\x05 \x01(\rH\x02\x88\x01\x01\x12&\n\x0cpartial_msat\x18\x06 \x01(\x0b\x32\x0b.cln.AmountH\x03\x88\x01\x01\x42\x0e\n\x0c_amount_msatB\t\n\x07_maxfeeB\x0c\n\n_retry_forB\x0f\n\r_partial_msat\"\xa1\x01\n\x0cXpayResponse\x12\x18\n\x10payment_preimage\x18\x01 \x01(\x0c\x12\x14\n\x0c\x66\x61iled_parts\x18\x02 \x01(\x04\x12\x18\n\x10successful_parts\x18\x03 \x01(\x04\x12 \n\x0b\x61mount_msat\x18\x04 \x01(\x0b\x32\x0b.cln.Amount\x12%\n\x10\x61mount_sent_msat\x18\x05 \x01(\x0b\x32\x0b.cln.Amount\"\x19\n\x17StreamBlockAddedRequest\"6\n\x16\x42lockAddedNotification\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\x0e\n\x06height\x18\x02 \x01(\r\" \n\x1eStreamChannelOpenFailedRequest\"3\n\x1d\x43hannelOpenFailedNotification\x12\x12\n\nchannel_id\x18\x01 \x01(\x0c\"\x1c\n\x1aStreamChannelOpenedRequest\"w\n\x19\x43hannelOpenedNotification\x12\n\n\x02id\x18\x01 \x01(\x0c\x12!\n\x0c\x66unding_msat\x18\x02 \x01(\x0b\x32\x0b.cln.Amount\x12\x14\n\x0c\x66unding_txid\x18\x03 \x01(\x0c\x12\x15\n\rchannel_ready\x18\x04 \x01(\x08\"\x16\n\x14StreamConnectRequest\"\xbe\x01\n\x17PeerConnectNotification\x12\n\n\x02id\x18\x01 \x01(\x0c\x12\x44\n\tdirection\x18\x02 \x01(\x0e\x32\x31.cln.PeerConnectNotification.PeerConnectDirection\x12(\n\x07\x61\x64\x64ress\x18\x03 \x01(\x0b\x32\x17.cln.PeerConnectAddress\"\'\n\x14PeerConnectDirection\x12\x06\n\x02IN\x10\x00\x12\x07\n\x03OUT\x10\x01\"\x8b\x02\n\x12PeerConnectAddress\x12\x41\n\titem_type\x18\x01 \x01(\x0e\x32..cln.PeerConnectAddress.PeerConnectAddressType\x12\x13\n\x06socket\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x04port\x18\x04 \x01(\rH\x02\x88\x01\x01\"T\n\x16PeerConnectAddressType\x12\x10\n\x0cLOCAL_SOCKET\x10\x00\x12\x08\n\x04IPV4\x10\x01\x12\x08\n\x04IPV6\x10\x02\x12\t\n\x05TORV2\x10\x03\x12\t\n\x05TORV3\x10\x04\x42\t\n\x07_socketB\n\n\x08_addressB\x07\n\x05_port\"\x18\n\x16StreamCustomMsgRequest\"9\n\x15\x43ustomMsgNotification\x12\x0f\n\x07peer_id\x18\x01 \x01(\x0c\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\x32\xa3N\n\x04Node\x12\x36\n\x07Getinfo\x12\x13.cln.GetinfoRequest\x1a\x14.cln.GetinfoResponse\"\x00\x12<\n\tListPeers\x12\x15.cln.ListpeersRequest\x1a\x16.cln.ListpeersResponse\"\x00\x12<\n\tListFunds\x12\x15.cln.ListfundsRequest\x1a\x16.cln.ListfundsResponse\"\x00\x12\x36\n\x07SendPay\x12\x13.cln.SendpayRequest\x1a\x14.cln.SendpayResponse\"\x00\x12\x45\n\x0cListChannels\x12\x18.cln.ListchannelsRequest\x1a\x19.cln.ListchannelsResponse\"\x00\x12<\n\tAddGossip\x12\x15.cln.AddgossipRequest\x1a\x16.cln.AddgossipResponse\"\x00\x12H\n\rAddPsbtOutput\x12\x19.cln.AddpsbtoutputRequest\x1a\x1a.cln.AddpsbtoutputResponse\"\x00\x12H\n\rAutoCleanOnce\x12\x19.cln.AutocleanonceRequest\x1a\x1a.cln.AutocleanonceResponse\"\x00\x12N\n\x0f\x41utoCleanStatus\x12\x1b.cln.AutocleanstatusRequest\x1a\x1c.cln.AutocleanstatusResponse\"\x00\x12\x45\n\x0c\x43heckMessage\x12\x18.cln.CheckmessageRequest\x1a\x19.cln.CheckmessageResponse\"\x00\x12\x30\n\x05\x43lose\x12\x11.cln.CloseRequest\x1a\x12.cln.CloseResponse\"\x00\x12:\n\x0b\x43onnectPeer\x12\x13.cln.ConnectRequest\x1a\x14.cln.ConnectResponse\"\x00\x12H\n\rCreateInvoice\x12\x19.cln.CreateinvoiceRequest\x1a\x1a.cln.CreateinvoiceResponse\"\x00\x12<\n\tDatastore\x12\x15.cln.DatastoreRequest\x1a\x16.cln.DatastoreResponse\"\x00\x12K\n\x0e\x44\x61tastoreUsage\x12\x1a.cln.DatastoreusageRequest\x1a\x1b.cln.DatastoreusageResponse\"\x00\x12\x42\n\x0b\x43reateOnion\x12\x17.cln.CreateonionRequest\x1a\x18.cln.CreateonionResponse\"\x00\x12\x45\n\x0c\x44\x65lDatastore\x12\x18.cln.DeldatastoreRequest\x1a\x19.cln.DeldatastoreResponse\"\x00\x12?\n\nDelInvoice\x12\x16.cln.DelinvoiceRequest\x1a\x17.cln.DelinvoiceResponse\"\x00\x12Q\n\x10\x44\x65vForgetChannel\x12\x1c.cln.DevforgetchannelRequest\x1a\x1d.cln.DevforgetchannelResponse\"\x00\x12Q\n\x10\x45mergencyRecover\x12\x1c.cln.EmergencyrecoverRequest\x1a\x1d.cln.EmergencyrecoverResponse\"\x00\x12\x66\n\x17GetEmergencyRecoverData\x12#.cln.GetemergencyrecoverdataRequest\x1a$.cln.GetemergencyrecoverdataResponse\"\x00\x12\x45\n\x0c\x45xposeSecret\x12\x18.cln.ExposesecretRequest\x1a\x19.cln.ExposesecretResponse\"\x00\x12\x36\n\x07Recover\x12\x13.cln.RecoverRequest\x1a\x14.cln.RecoverResponse\"\x00\x12K\n\x0eRecoverChannel\x12\x1a.cln.RecoverchannelRequest\x1a\x1b.cln.RecoverchannelResponse\"\x00\x12\x36\n\x07Invoice\x12\x13.cln.InvoiceRequest\x1a\x14.cln.InvoiceResponse\"\x00\x12Q\n\x14\x43reateInvoiceRequest\x12\x1a.cln.InvoicerequestRequest\x1a\x1b.cln.InvoicerequestResponse\"\x00\x12`\n\x15\x44isableInvoiceRequest\x12!.cln.DisableinvoicerequestRequest\x1a\".cln.DisableinvoicerequestResponse\"\x00\x12Z\n\x13ListInvoiceRequests\x12\x1f.cln.ListinvoicerequestsRequest\x1a .cln.ListinvoicerequestsResponse\"\x00\x12H\n\rListDatastore\x12\x19.cln.ListdatastoreRequest\x1a\x1a.cln.ListdatastoreResponse\"\x00\x12\x45\n\x0cListInvoices\x12\x18.cln.ListinvoicesRequest\x1a\x19.cln.ListinvoicesResponse\"\x00\x12<\n\tSendOnion\x12\x15.cln.SendonionRequest\x1a\x16.cln.SendonionResponse\"\x00\x12\x45\n\x0cListSendPays\x12\x18.cln.ListsendpaysRequest\x1a\x19.cln.ListsendpaysResponse\"\x00\x12Q\n\x10ListTransactions\x12\x1c.cln.ListtransactionsRequest\x1a\x1d.cln.ListtransactionsResponse\"\x00\x12?\n\nMakeSecret\x12\x16.cln.MakesecretRequest\x1a\x17.cln.MakesecretResponse\"\x00\x12*\n\x03Pay\x12\x0f.cln.PayRequest\x1a\x10.cln.PayResponse\"\x00\x12<\n\tListNodes\x12\x15.cln.ListnodesRequest\x1a\x16.cln.ListnodesResponse\"\x00\x12K\n\x0eWaitAnyInvoice\x12\x1a.cln.WaitanyinvoiceRequest\x1a\x1b.cln.WaitanyinvoiceResponse\"\x00\x12\x42\n\x0bWaitInvoice\x12\x17.cln.WaitinvoiceRequest\x1a\x18.cln.WaitinvoiceResponse\"\x00\x12\x42\n\x0bWaitSendPay\x12\x17.cln.WaitsendpayRequest\x1a\x18.cln.WaitsendpayResponse\"\x00\x12\x36\n\x07NewAddr\x12\x13.cln.NewaddrRequest\x1a\x14.cln.NewaddrResponse\"\x00\x12\x39\n\x08Withdraw\x12\x14.cln.WithdrawRequest\x1a\x15.cln.WithdrawResponse\"\x00\x12\x36\n\x07KeySend\x12\x13.cln.KeysendRequest\x1a\x14.cln.KeysendResponse\"\x00\x12\x39\n\x08\x46undPsbt\x12\x14.cln.FundpsbtRequest\x1a\x15.cln.FundpsbtResponse\"\x00\x12\x39\n\x08SendPsbt\x12\x14.cln.SendpsbtRequest\x1a\x15.cln.SendpsbtResponse\"\x00\x12\x39\n\x08SignPsbt\x12\x14.cln.SignpsbtRequest\x1a\x15.cln.SignpsbtResponse\"\x00\x12\x39\n\x08UtxoPsbt\x12\x14.cln.UtxopsbtRequest\x1a\x15.cln.UtxopsbtResponse\"\x00\x12<\n\tTxDiscard\x12\x15.cln.TxdiscardRequest\x1a\x16.cln.TxdiscardResponse\"\x00\x12<\n\tTxPrepare\x12\x15.cln.TxprepareRequest\x1a\x16.cln.TxprepareResponse\"\x00\x12\x33\n\x06TxSend\x12\x12.cln.TxsendRequest\x1a\x13.cln.TxsendResponse\"\x00\x12Q\n\x10ListPeerChannels\x12\x1c.cln.ListpeerchannelsRequest\x1a\x1d.cln.ListpeerchannelsResponse\"\x00\x12W\n\x12ListClosedChannels\x12\x1e.cln.ListclosedchannelsRequest\x1a\x1f.cln.ListclosedchannelsResponse\"\x00\x12<\n\tDecodePay\x12\x15.cln.DecodepayRequest\x1a\x16.cln.DecodepayResponse\"\x00\x12\x33\n\x06\x44\x65\x63ode\x12\x12.cln.DecodeRequest\x1a\x13.cln.DecodeResponse\"\x00\x12\x33\n\x06\x44\x65lPay\x12\x12.cln.DelpayRequest\x1a\x13.cln.DelpayResponse\"\x00\x12?\n\nDelForward\x12\x16.cln.DelforwardRequest\x1a\x17.cln.DelforwardResponse\"\x00\x12\x45\n\x0c\x44isableOffer\x12\x18.cln.DisableofferRequest\x1a\x19.cln.DisableofferResponse\"\x00\x12\x42\n\x0b\x45nableOffer\x12\x17.cln.EnableofferRequest\x1a\x18.cln.EnableofferResponse\"\x00\x12?\n\nDisconnect\x12\x16.cln.DisconnectRequest\x1a\x17.cln.DisconnectResponse\"\x00\x12\x39\n\x08\x46\x65\x65rates\x12\x14.cln.FeeratesRequest\x1a\x15.cln.FeeratesResponse\"\x00\x12\x45\n\x0c\x46\x65tchInvoice\x12\x18.cln.FetchinvoiceRequest\x1a\x19.cln.FetchinvoiceResponse\"\x00\x12W\n\x12\x46undChannel_Cancel\x12\x1e.cln.Fundchannel_cancelRequest\x1a\x1f.cln.Fundchannel_cancelResponse\"\x00\x12]\n\x14\x46undChannel_Complete\x12 .cln.Fundchannel_completeRequest\x1a!.cln.Fundchannel_completeResponse\"\x00\x12\x42\n\x0b\x46undChannel\x12\x17.cln.FundchannelRequest\x1a\x18.cln.FundchannelResponse\"\x00\x12T\n\x11\x46undChannel_Start\x12\x1d.cln.Fundchannel_startRequest\x1a\x1e.cln.Fundchannel_startResponse\"\x00\x12\x33\n\x06GetLog\x12\x12.cln.GetlogRequest\x1a\x13.cln.GetlogResponse\"\x00\x12\x45\n\x0c\x46underUpdate\x12\x18.cln.FunderupdateRequest\x1a\x19.cln.FunderupdateResponse\"\x00\x12\x39\n\x08GetRoute\x12\x14.cln.GetrouteRequest\x1a\x15.cln.GetrouteResponse\"\x00\x12H\n\rListAddresses\x12\x19.cln.ListaddressesRequest\x1a\x1a.cln.ListaddressesResponse\"\x00\x12\x45\n\x0cListForwards\x12\x18.cln.ListforwardsRequest\x1a\x19.cln.ListforwardsResponse\"\x00\x12?\n\nListOffers\x12\x16.cln.ListoffersRequest\x1a\x17.cln.ListoffersResponse\"\x00\x12\x39\n\x08ListPays\x12\x14.cln.ListpaysRequest\x1a\x15.cln.ListpaysResponse\"\x00\x12<\n\tListHtlcs\x12\x15.cln.ListhtlcsRequest\x1a\x16.cln.ListhtlcsResponse\"\x00\x12Q\n\x10MultiFundChannel\x12\x1c.cln.MultifundchannelRequest\x1a\x1d.cln.MultifundchannelResponse\"\x00\x12H\n\rMultiWithdraw\x12\x19.cln.MultiwithdrawRequest\x1a\x1a.cln.MultiwithdrawResponse\"\x00\x12\x30\n\x05Offer\x12\x11.cln.OfferRequest\x1a\x12.cln.OfferResponse\"\x00\x12T\n\x11OpenChannel_Abort\x12\x1d.cln.Openchannel_abortRequest\x1a\x1e.cln.Openchannel_abortResponse\"\x00\x12Q\n\x10OpenChannel_Bump\x12\x1c.cln.Openchannel_bumpRequest\x1a\x1d.cln.Openchannel_bumpResponse\"\x00\x12Q\n\x10OpenChannel_Init\x12\x1c.cln.Openchannel_initRequest\x1a\x1d.cln.Openchannel_initResponse\"\x00\x12W\n\x12OpenChannel_Signed\x12\x1e.cln.Openchannel_signedRequest\x1a\x1f.cln.Openchannel_signedResponse\"\x00\x12W\n\x12OpenChannel_Update\x12\x1e.cln.Openchannel_updateRequest\x1a\x1f.cln.Openchannel_updateResponse\"\x00\x12-\n\x04Ping\x12\x10.cln.PingRequest\x1a\x11.cln.PingResponse\"\x00\x12\x33\n\x06Plugin\x12\x12.cln.PluginRequest\x1a\x13.cln.PluginResponse\"\x00\x12H\n\rRenePayStatus\x12\x19.cln.RenepaystatusRequest\x1a\x1a.cln.RenepaystatusResponse\"\x00\x12\x36\n\x07RenePay\x12\x13.cln.RenepayRequest\x1a\x14.cln.RenepayResponse\"\x00\x12H\n\rReserveInputs\x12\x19.cln.ReserveinputsRequest\x1a\x1a.cln.ReserveinputsResponse\"\x00\x12H\n\rSendCustomMsg\x12\x19.cln.SendcustommsgRequest\x1a\x1a.cln.SendcustommsgResponse\"\x00\x12\x42\n\x0bSendInvoice\x12\x17.cln.SendinvoiceRequest\x1a\x18.cln.SendinvoiceResponse\"\x00\x12?\n\nSetChannel\x12\x16.cln.SetchannelRequest\x1a\x17.cln.SetchannelResponse\"\x00\x12<\n\tSetConfig\x12\x15.cln.SetconfigRequest\x1a\x16.cln.SetconfigResponse\"\x00\x12K\n\x0eSetPsbtVersion\x12\x1a.cln.SetpsbtversionRequest\x1a\x1b.cln.SetpsbtversionResponse\"\x00\x12\x42\n\x0bSignInvoice\x12\x17.cln.SigninvoiceRequest\x1a\x18.cln.SigninvoiceResponse\"\x00\x12\x42\n\x0bSignMessage\x12\x17.cln.SignmessageRequest\x1a\x18.cln.SignmessageResponse\"\x00\x12\x42\n\x0bSplice_Init\x12\x17.cln.Splice_initRequest\x1a\x18.cln.Splice_initResponse\"\x00\x12H\n\rSplice_Signed\x12\x19.cln.Splice_signedRequest\x1a\x1a.cln.Splice_signedResponse\"\x00\x12H\n\rSplice_Update\x12\x19.cln.Splice_updateRequest\x1a\x1a.cln.Splice_updateResponse\"\x00\x12<\n\tDevSplice\x12\x15.cln.DevspliceRequest\x1a\x16.cln.DevspliceResponse\"\x00\x12N\n\x0fUnreserveInputs\x12\x1b.cln.UnreserveinputsRequest\x1a\x1c.cln.UnreserveinputsResponse\"\x00\x12H\n\rUpgradeWallet\x12\x19.cln.UpgradewalletRequest\x1a\x1a.cln.UpgradewalletResponse\"\x00\x12N\n\x0fWaitBlockHeight\x12\x1b.cln.WaitblockheightRequest\x1a\x1c.cln.WaitblockheightResponse\"\x00\x12-\n\x04Wait\x12\x10.cln.WaitRequest\x1a\x11.cln.WaitResponse\"\x00\x12\x42\n\x0bListConfigs\x12\x17.cln.ListconfigsRequest\x1a\x18.cln.ListconfigsResponse\"\x00\x12-\n\x04Stop\x12\x10.cln.StopRequest\x1a\x11.cln.StopResponse\"\x00\x12-\n\x04Help\x12\x10.cln.HelpRequest\x1a\x11.cln.HelpResponse\"\x00\x12T\n\x11PreApproveKeysend\x12\x1d.cln.PreapprovekeysendRequest\x1a\x1e.cln.PreapprovekeysendResponse\"\x00\x12T\n\x11PreApproveInvoice\x12\x1d.cln.PreapproveinvoiceRequest\x1a\x1e.cln.PreapproveinvoiceResponse\"\x00\x12\x45\n\x0cStaticBackup\x12\x18.cln.StaticbackupRequest\x1a\x19.cln.StaticbackupResponse\"\x00\x12N\n\x0f\x42kprChannelsApy\x12\x1b.cln.BkprchannelsapyRequest\x1a\x1c.cln.BkprchannelsapyResponse\"\x00\x12T\n\x11\x42kprDumpIncomeCsv\x12\x1d.cln.BkprdumpincomecsvRequest\x1a\x1e.cln.BkprdumpincomecsvResponse\"\x00\x12\x42\n\x0b\x42kprInspect\x12\x17.cln.BkprinspectRequest\x1a\x18.cln.BkprinspectResponse\"\x00\x12`\n\x15\x42kprListAccountEvents\x12!.cln.BkprlistaccounteventsRequest\x1a\".cln.BkprlistaccounteventsResponse\"\x00\x12Q\n\x10\x42kprListBalances\x12\x1c.cln.BkprlistbalancesRequest\x1a\x1d.cln.BkprlistbalancesResponse\"\x00\x12K\n\x0e\x42kprListIncome\x12\x1a.cln.BkprlistincomeRequest\x1a\x1b.cln.BkprlistincomeResponse\"\x00\x12{\n\x1e\x42kprEditDescriptionByPaymentId\x12*.cln.BkpreditdescriptionbypaymentidRequest\x1a+.cln.BkpreditdescriptionbypaymentidResponse\"\x00\x12x\n\x1d\x42kprEditDescriptionByOutpoint\x12).cln.BkpreditdescriptionbyoutpointRequest\x1a*.cln.BkpreditdescriptionbyoutpointResponse\"\x00\x12H\n\rBlacklistRune\x12\x19.cln.BlacklistruneRequest\x1a\x1a.cln.BlacklistruneResponse\"\x00\x12<\n\tCheckRune\x12\x15.cln.CheckruneRequest\x1a\x16.cln.CheckruneResponse\"\x00\x12?\n\nCreateRune\x12\x16.cln.CreateruneRequest\x1a\x17.cln.CreateruneResponse\"\x00\x12<\n\tShowRunes\x12\x15.cln.ShowrunesRequest\x1a\x16.cln.ShowrunesResponse\"\x00\x12Q\n\x10\x41skReneUnreserve\x12\x1c.cln.AskreneunreserveRequest\x1a\x1d.cln.AskreneunreserveResponse\"\x00\x12T\n\x11\x41skReneListLayers\x12\x1d.cln.AskrenelistlayersRequest\x1a\x1e.cln.AskrenelistlayersResponse\"\x00\x12W\n\x12\x41skReneCreateLayer\x12\x1e.cln.AskrenecreatelayerRequest\x1a\x1f.cln.AskrenecreatelayerResponse\"\x00\x12W\n\x12\x41skReneRemoveLayer\x12\x1e.cln.AskreneremovelayerRequest\x1a\x1f.cln.AskreneremovelayerResponse\"\x00\x12K\n\x0e\x41skReneReserve\x12\x1a.cln.AskrenereserveRequest\x1a\x1b.cln.AskrenereserveResponse\"\x00\x12?\n\nAskReneAge\x12\x16.cln.AskreneageRequest\x1a\x17.cln.AskreneageResponse\"\x00\x12<\n\tGetRoutes\x12\x15.cln.GetroutesRequest\x1a\x16.cln.GetroutesResponse\"\x00\x12W\n\x12\x41skReneDisableNode\x12\x1e.cln.AskrenedisablenodeRequest\x1a\x1f.cln.AskrenedisablenodeResponse\"\x00\x12]\n\x14\x41skReneInformChannel\x12 .cln.AskreneinformchannelRequest\x1a!.cln.AskreneinformchannelResponse\"\x00\x12]\n\x14\x41skReneCreateChannel\x12 .cln.AskrenecreatechannelRequest\x1a!.cln.AskrenecreatechannelResponse\"\x00\x12]\n\x14\x41skReneUpdateChannel\x12 .cln.AskreneupdatechannelRequest\x1a!.cln.AskreneupdatechannelResponse\"\x00\x12W\n\x12\x41skReneBiasChannel\x12\x1e.cln.AskrenebiaschannelRequest\x1a\x1f.cln.AskrenebiaschannelResponse\"\x00\x12\x66\n\x17\x41skReneListReservations\x12#.cln.AskrenelistreservationsRequest\x1a$.cln.AskrenelistreservationsResponse\"\x00\x12W\n\x12InjectPaymentOnion\x12\x1e.cln.InjectpaymentonionRequest\x1a\x1f.cln.InjectpaymentonionResponse\"\x00\x12-\n\x04Xpay\x12\x10.cln.XpayRequest\x1a\x11.cln.XpayResponse\"\x00\x12T\n\x13SubscribeBlockAdded\x12\x1c.cln.StreamBlockAddedRequest\x1a\x1b.cln.BlockAddedNotification\"\x00\x30\x01\x12i\n\x1aSubscribeChannelOpenFailed\x12#.cln.StreamChannelOpenFailedRequest\x1a\".cln.ChannelOpenFailedNotification\"\x00\x30\x01\x12]\n\x16SubscribeChannelOpened\x12\x1f.cln.StreamChannelOpenedRequest\x1a\x1e.cln.ChannelOpenedNotification\"\x00\x30\x01\x12O\n\x10SubscribeConnect\x12\x19.cln.StreamConnectRequest\x1a\x1c.cln.PeerConnectNotification\"\x00\x30\x01\x12Q\n\x12SubscribeCustomMsg\x12\x1b.cln.StreamCustomMsgRequest\x1a\x1a.cln.CustomMsgNotification\"\x00\x30\x01\x62\x06proto3')
 
 _globals = globals()
 _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -182,812 +182,946 @@ if _descriptor._USE_C_DESCRIPTORS == False:
   _globals['_EMERGENCYRECOVERREQUEST']._serialized_end=12148
   _globals['_EMERGENCYRECOVERRESPONSE']._serialized_start=12150
   _globals['_EMERGENCYRECOVERRESPONSE']._serialized_end=12191
-  _globals['_RECOVERREQUEST']._serialized_start=12193
-  _globals['_RECOVERREQUEST']._serialized_end=12228
-  _globals['_RECOVERRESPONSE']._serialized_start=12231
-  _globals['_RECOVERRESPONSE']._serialized_end=12367
-  _globals['_RECOVERRESPONSE_RECOVERRESULT']._serialized_start=12307
-  _globals['_RECOVERRESPONSE_RECOVERRESULT']._serialized_end=12356
-  _globals['_RECOVERCHANNELREQUEST']._serialized_start=12369
-  _globals['_RECOVERCHANNELREQUEST']._serialized_end=12405
-  _globals['_RECOVERCHANNELRESPONSE']._serialized_start=12407
-  _globals['_RECOVERCHANNELRESPONSE']._serialized_end=12446
-  _globals['_INVOICEREQUEST']._serialized_start=12449
-  _globals['_INVOICEREQUEST']._serialized_end=12730
-  _globals['_INVOICERESPONSE']._serialized_start=12733
-  _globals['_INVOICERESPONSE']._serialized_end=13138
-  _globals['_INVOICEREQUESTREQUEST']._serialized_start=13141
-  _globals['_INVOICEREQUESTREQUEST']._serialized_end=13366
-  _globals['_INVOICEREQUESTRESPONSE']._serialized_start=13369
-  _globals['_INVOICEREQUESTRESPONSE']._serialized_end=13508
-  _globals['_DISABLEINVOICEREQUESTREQUEST']._serialized_start=13510
-  _globals['_DISABLEINVOICEREQUESTREQUEST']._serialized_end=13559
-  _globals['_DISABLEINVOICEREQUESTRESPONSE']._serialized_start=13562
-  _globals['_DISABLEINVOICEREQUESTRESPONSE']._serialized_end=13708
-  _globals['_LISTINVOICEREQUESTSREQUEST']._serialized_start=13710
-  _globals['_LISTINVOICEREQUESTSREQUEST']._serialized_end=13818
-  _globals['_LISTINVOICEREQUESTSRESPONSE']._serialized_start=13820
-  _globals['_LISTINVOICEREQUESTSRESPONSE']._serialized_end=13915
-  _globals['_LISTINVOICEREQUESTSINVOICEREQUESTS']._serialized_start=13918
-  _globals['_LISTINVOICEREQUESTSINVOICEREQUESTS']._serialized_end=14069
-  _globals['_LISTDATASTOREREQUEST']._serialized_start=14071
-  _globals['_LISTDATASTOREREQUEST']._serialized_end=14106
-  _globals['_LISTDATASTORERESPONSE']._serialized_start=14108
-  _globals['_LISTDATASTORERESPONSE']._serialized_end=14179
-  _globals['_LISTDATASTOREDATASTORE']._serialized_start=14182
-  _globals['_LISTDATASTOREDATASTORE']._serialized_end=14317
-  _globals['_LISTINVOICESREQUEST']._serialized_start=14320
-  _globals['_LISTINVOICESREQUEST']._serialized_end=14670
-  _globals['_LISTINVOICESREQUEST_LISTINVOICESINDEX']._serialized_start=14541
-  _globals['_LISTINVOICESREQUEST_LISTINVOICESINDEX']._serialized_end=14586
-  _globals['_LISTINVOICESRESPONSE']._serialized_start=14672
-  _globals['_LISTINVOICESRESPONSE']._serialized_end=14739
-  _globals['_LISTINVOICESINVOICES']._serialized_start=14742
-  _globals['_LISTINVOICESINVOICES']._serialized_end=15594
-  _globals['_LISTINVOICESINVOICES_LISTINVOICESINVOICESSTATUS']._serialized_start=15310
-  _globals['_LISTINVOICESINVOICES_LISTINVOICESINVOICESSTATUS']._serialized_end=15373
-  _globals['_LISTINVOICESINVOICESPAID_OUTPOINT']._serialized_start=15596
-  _globals['_LISTINVOICESINVOICESPAID_OUTPOINT']._serialized_end=15661
-  _globals['_SENDONIONREQUEST']._serialized_start=15664
-  _globals['_SENDONIONREQUEST']._serialized_end=16100
-  _globals['_SENDONIONRESPONSE']._serialized_start=16103
-  _globals['_SENDONIONRESPONSE']._serialized_end=16718
-  _globals['_SENDONIONRESPONSE_SENDONIONSTATUS']._serialized_start=16530
-  _globals['_SENDONIONRESPONSE_SENDONIONSTATUS']._serialized_end=16574
-  _globals['_SENDONIONFIRST_HOP']._serialized_start=16720
-  _globals['_SENDONIONFIRST_HOP']._serialized_end=16801
-  _globals['_LISTSENDPAYSREQUEST']._serialized_start=16804
-  _globals['_LISTSENDPAYSREQUEST']._serialized_end=17220
-  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSSTATUS']._serialized_start=17045
-  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSSTATUS']._serialized_end=17104
-  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSINDEX']._serialized_start=17106
-  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSINDEX']._serialized_end=17151
-  _globals['_LISTSENDPAYSRESPONSE']._serialized_start=17222
-  _globals['_LISTSENDPAYSRESPONSE']._serialized_end=17289
-  _globals['_LISTSENDPAYSPAYMENTS']._serialized_start=17292
-  _globals['_LISTSENDPAYSPAYMENTS']._serialized_end=18056
-  _globals['_LISTSENDPAYSPAYMENTS_LISTSENDPAYSPAYMENTSSTATUS']._serialized_start=17809
-  _globals['_LISTSENDPAYSPAYMENTS_LISTSENDPAYSPAYMENTSSTATUS']._serialized_end=17876
-  _globals['_LISTTRANSACTIONSREQUEST']._serialized_start=18058
-  _globals['_LISTTRANSACTIONSREQUEST']._serialized_end=18083
-  _globals['_LISTTRANSACTIONSRESPONSE']._serialized_start=18085
-  _globals['_LISTTRANSACTIONSRESPONSE']._serialized_end=18168
-  _globals['_LISTTRANSACTIONSTRANSACTIONS']._serialized_start=18171
-  _globals['_LISTTRANSACTIONSTRANSACTIONS']._serialized_end=18419
-  _globals['_LISTTRANSACTIONSTRANSACTIONSINPUTS']._serialized_start=18421
-  _globals['_LISTTRANSACTIONSTRANSACTIONSINPUTS']._serialized_end=18504
-  _globals['_LISTTRANSACTIONSTRANSACTIONSOUTPUTS']._serialized_start=18506
-  _globals['_LISTTRANSACTIONSTRANSACTIONSOUTPUTS']._serialized_end=18614
-  _globals['_MAKESECRETREQUEST']._serialized_start=18616
-  _globals['_MAKESECRETREQUEST']._serialized_end=18693
-  _globals['_MAKESECRETRESPONSE']._serialized_start=18695
-  _globals['_MAKESECRETRESPONSE']._serialized_end=18731
-  _globals['_PAYREQUEST']._serialized_start=18734
-  _globals['_PAYREQUEST']._serialized_end=19265
-  _globals['_PAYRESPONSE']._serialized_start=19268
-  _globals['_PAYRESPONSE']._serialized_end=19647
-  _globals['_PAYRESPONSE_PAYSTATUS']._serialized_start=19550
-  _globals['_PAYRESPONSE_PAYSTATUS']._serialized_end=19600
-  _globals['_LISTNODESREQUEST']._serialized_start=19649
-  _globals['_LISTNODESREQUEST']._serialized_end=19691
-  _globals['_LISTNODESRESPONSE']._serialized_start=19693
-  _globals['_LISTNODESRESPONSE']._serialized_end=19748
-  _globals['_LISTNODESNODES']._serialized_start=19751
-  _globals['_LISTNODESNODES']._serialized_end=20065
-  _globals['_LISTNODESNODESOPTION_WILL_FUND']._serialized_start=20068
-  _globals['_LISTNODESNODESOPTION_WILL_FUND']._serialized_end=20312
-  _globals['_LISTNODESNODESADDRESSES']._serialized_start=20315
-  _globals['_LISTNODESNODESADDRESSES']._serialized_end=20547
-  _globals['_LISTNODESNODESADDRESSES_LISTNODESNODESADDRESSESTYPE']._serialized_start=20455
-  _globals['_LISTNODESNODESADDRESSES_LISTNODESNODESADDRESSESTYPE']._serialized_end=20535
-  _globals['_WAITANYINVOICEREQUEST']._serialized_start=20549
-  _globals['_WAITANYINVOICEREQUEST']._serialized_end=20652
-  _globals['_WAITANYINVOICERESPONSE']._serialized_start=20655
-  _globals['_WAITANYINVOICERESPONSE']._serialized_end=21379
-  _globals['_WAITANYINVOICERESPONSE_WAITANYINVOICESTATUS']._serialized_start=21154
-  _globals['_WAITANYINVOICERESPONSE_WAITANYINVOICESTATUS']._serialized_end=21199
-  _globals['_WAITANYINVOICEPAID_OUTPOINT']._serialized_start=21381
-  _globals['_WAITANYINVOICEPAID_OUTPOINT']._serialized_end=21440
-  _globals['_WAITINVOICEREQUEST']._serialized_start=21442
-  _globals['_WAITINVOICEREQUEST']._serialized_end=21477
-  _globals['_WAITINVOICERESPONSE']._serialized_start=21480
-  _globals['_WAITINVOICERESPONSE']._serialized_end=22189
-  _globals['_WAITINVOICERESPONSE_WAITINVOICESTATUS']._serialized_start=21967
-  _globals['_WAITINVOICERESPONSE_WAITINVOICESTATUS']._serialized_end=22009
-  _globals['_WAITINVOICEPAID_OUTPOINT']._serialized_start=22191
-  _globals['_WAITINVOICEPAID_OUTPOINT']._serialized_end=22247
-  _globals['_WAITSENDPAYREQUEST']._serialized_start=22250
-  _globals['_WAITSENDPAYREQUEST']._serialized_end=22392
-  _globals['_WAITSENDPAYRESPONSE']._serialized_start=22395
-  _globals['_WAITSENDPAYRESPONSE']._serialized_end=23049
-  _globals['_WAITSENDPAYRESPONSE_WAITSENDPAYSTATUS']._serialized_start=22855
-  _globals['_WAITSENDPAYRESPONSE_WAITSENDPAYSTATUS']._serialized_end=22888
-  _globals['_NEWADDRREQUEST']._serialized_start=23052
-  _globals['_NEWADDRREQUEST']._serialized_end=23203
-  _globals['_NEWADDRREQUEST_NEWADDRADDRESSTYPE']._serialized_start=23136
-  _globals['_NEWADDRREQUEST_NEWADDRADDRESSTYPE']._serialized_end=23187
-  _globals['_NEWADDRRESPONSE']._serialized_start=23205
-  _globals['_NEWADDRRESPONSE']._serialized_end=23282
-  _globals['_WITHDRAWREQUEST']._serialized_start=23285
-  _globals['_WITHDRAWREQUEST']._serialized_end=23470
-  _globals['_WITHDRAWRESPONSE']._serialized_start=23472
-  _globals['_WITHDRAWRESPONSE']._serialized_end=23530
-  _globals['_KEYSENDREQUEST']._serialized_start=23533
-  _globals['_KEYSENDREQUEST']._serialized_end=23964
-  _globals['_KEYSENDRESPONSE']._serialized_start=23967
-  _globals['_KEYSENDRESPONSE']._serialized_end=24337
-  _globals['_KEYSENDRESPONSE_KEYSENDSTATUS']._serialized_start=24261
-  _globals['_KEYSENDRESPONSE_KEYSENDSTATUS']._serialized_end=24290
-  _globals['_FUNDPSBTREQUEST']._serialized_start=24340
-  _globals['_FUNDPSBTREQUEST']._serialized_end=24760
-  _globals['_FUNDPSBTRESPONSE']._serialized_start=24763
-  _globals['_FUNDPSBTRESPONSE']._serialized_end=24980
-  _globals['_FUNDPSBTRESERVATIONS']._serialized_start=24982
-  _globals['_FUNDPSBTRESERVATIONS']._serialized_end=25099
-  _globals['_SENDPSBTREQUEST']._serialized_start=25101
-  _globals['_SENDPSBTREQUEST']._serialized_end=25166
-  _globals['_SENDPSBTRESPONSE']._serialized_start=25168
-  _globals['_SENDPSBTRESPONSE']._serialized_end=25212
-  _globals['_SIGNPSBTREQUEST']._serialized_start=25214
-  _globals['_SIGNPSBTREQUEST']._serialized_end=25263
-  _globals['_SIGNPSBTRESPONSE']._serialized_start=25265
-  _globals['_SIGNPSBTRESPONSE']._serialized_end=25304
-  _globals['_UTXOPSBTREQUEST']._serialized_start=25307
-  _globals['_UTXOPSBTREQUEST']._serialized_end=25723
-  _globals['_UTXOPSBTRESPONSE']._serialized_start=25726
-  _globals['_UTXOPSBTRESPONSE']._serialized_end=25943
-  _globals['_UTXOPSBTRESERVATIONS']._serialized_start=25945
-  _globals['_UTXOPSBTRESERVATIONS']._serialized_end=26062
-  _globals['_TXDISCARDREQUEST']._serialized_start=26064
-  _globals['_TXDISCARDREQUEST']._serialized_end=26096
-  _globals['_TXDISCARDRESPONSE']._serialized_start=26098
-  _globals['_TXDISCARDRESPONSE']._serialized_end=26152
-  _globals['_TXPREPAREREQUEST']._serialized_start=26155
-  _globals['_TXPREPAREREQUEST']._serialized_end=26319
-  _globals['_TXPREPARERESPONSE']._serialized_start=26321
-  _globals['_TXPREPARERESPONSE']._serialized_end=26389
-  _globals['_TXSENDREQUEST']._serialized_start=26391
-  _globals['_TXSENDREQUEST']._serialized_end=26420
-  _globals['_TXSENDRESPONSE']._serialized_start=26422
-  _globals['_TXSENDRESPONSE']._serialized_end=26478
-  _globals['_LISTPEERCHANNELSREQUEST']._serialized_start=26480
-  _globals['_LISTPEERCHANNELSREQUEST']._serialized_end=26529
-  _globals['_LISTPEERCHANNELSRESPONSE']._serialized_start=26531
-  _globals['_LISTPEERCHANNELSRESPONSE']._serialized_end=26606
-  _globals['_LISTPEERCHANNELSCHANNELS']._serialized_start=26609
-  _globals['_LISTPEERCHANNELSCHANNELS']._serialized_end=30152
-  _globals['_LISTPEERCHANNELSCHANNELS_LISTPEERCHANNELSCHANNELSSTATE']._serialized_start=28798
-  _globals['_LISTPEERCHANNELSCHANNELS_LISTPEERCHANNELSCHANNELSSTATE']._serialized_end=29182
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATES']._serialized_start=30155
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATES']._serialized_end=30322
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATESLOCAL']._serialized_start=30325
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATESLOCAL']._serialized_end=30543
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATESREMOTE']._serialized_start=30546
-  _globals['_LISTPEERCHANNELSCHANNELSUPDATESREMOTE']._serialized_end=30765
-  _globals['_LISTPEERCHANNELSCHANNELSFEERATE']._serialized_start=30767
-  _globals['_LISTPEERCHANNELSCHANNELSFEERATE']._serialized_end=30830
-  _globals['_LISTPEERCHANNELSCHANNELSINFLIGHT']._serialized_start=30833
-  _globals['_LISTPEERCHANNELSCHANNELSINFLIGHT']._serialized_end=31100
-  _globals['_LISTPEERCHANNELSCHANNELSFUNDING']._serialized_start=31103
-  _globals['_LISTPEERCHANNELSCHANNELSFUNDING']._serialized_end=31388
-  _globals['_LISTPEERCHANNELSCHANNELSALIAS']._serialized_start=31390
-  _globals['_LISTPEERCHANNELSCHANNELSALIAS']._serialized_end=31483
-  _globals['_LISTPEERCHANNELSCHANNELSHTLCS']._serialized_start=31486
-  _globals['_LISTPEERCHANNELSCHANNELSHTLCS']._serialized_end=31863
-  _globals['_LISTPEERCHANNELSCHANNELSHTLCS_LISTPEERCHANNELSCHANNELSHTLCSDIRECTION']._serialized_start=31777
-  _globals['_LISTPEERCHANNELSCHANNELSHTLCS_LISTPEERCHANNELSCHANNELSHTLCSDIRECTION']._serialized_end=31834
-  _globals['_LISTCLOSEDCHANNELSREQUEST']._serialized_start=31865
-  _globals['_LISTCLOSEDCHANNELSREQUEST']._serialized_end=31916
-  _globals['_LISTCLOSEDCHANNELSRESPONSE']._serialized_start=31918
-  _globals['_LISTCLOSEDCHANNELSRESPONSE']._serialized_end=32009
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS']._serialized_start=32012
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS']._serialized_end=33278
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS_LISTCLOSEDCHANNELSCLOSEDCHANNELSCLOSE_CAUSE']._serialized_start=32949
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS_LISTCLOSEDCHANNELSCLOSEDCHANNELSCLOSE_CAUSE']._serialized_end=33067
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELSALIAS']._serialized_start=33280
-  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELSALIAS']._serialized_end=33381
-  _globals['_DECODEPAYREQUEST']._serialized_start=33383
-  _globals['_DECODEPAYREQUEST']._serialized_end=33459
-  _globals['_DECODEPAYRESPONSE']._serialized_start=33462
-  _globals['_DECODEPAYRESPONSE']._serialized_end=34045
-  _globals['_DECODEPAYFALLBACKS']._serialized_start=34048
-  _globals['_DECODEPAYFALLBACKS']._serialized_end=34256
-  _globals['_DECODEPAYFALLBACKS_DECODEPAYFALLBACKSTYPE']._serialized_start=34169
-  _globals['_DECODEPAYFALLBACKS_DECODEPAYFALLBACKSTYPE']._serialized_end=34247
-  _globals['_DECODEPAYEXTRA']._serialized_start=34258
-  _globals['_DECODEPAYEXTRA']._serialized_end=34301
-  _globals['_DECODEREQUEST']._serialized_start=34303
-  _globals['_DECODEREQUEST']._serialized_end=34334
-  _globals['_DECODERESPONSE']._serialized_start=34337
-  _globals['_DECODERESPONSE']._serialized_end=39181
-  _globals['_DECODERESPONSE_DECODETYPE']._serialized_start=37276
-  _globals['_DECODERESPONSE_DECODETYPE']._serialized_end=37407
-  _globals['_DECODEOFFER_PATHS']._serialized_start=39184
-  _globals['_DECODEOFFER_PATHS']._serialized_end=39421
-  _globals['_DECODEOFFER_RECURRENCEPAYWINDOW']._serialized_start=39424
-  _globals['_DECODEOFFER_RECURRENCEPAYWINDOW']._serialized_end=39562
-  _globals['_DECODEINVREQ_PATHS']._serialized_start=39565
-  _globals['_DECODEINVREQ_PATHS']._serialized_end=39846
-  _globals['_DECODEINVREQ_PATHSPATH']._serialized_start=39848
-  _globals['_DECODEINVREQ_PATHSPATH']._serialized_end=39931
-  _globals['_DECODEINVOICE_PATHSPATH']._serialized_start=39933
-  _globals['_DECODEINVOICE_PATHSPATH']._serialized_end=40017
-  _globals['_DECODEINVOICE_FALLBACKS']._serialized_start=40019
-  _globals['_DECODEINVOICE_FALLBACKS']._serialized_end=40108
-  _globals['_DECODEFALLBACKS']._serialized_start=40111
-  _globals['_DECODEFALLBACKS']._serialized_end=40409
-  _globals['_DECODEFALLBACKS_DECODEFALLBACKSTYPE']._serialized_start=40279
-  _globals['_DECODEFALLBACKS_DECODEFALLBACKSTYPE']._serialized_end=40354
-  _globals['_DECODEEXTRA']._serialized_start=40411
-  _globals['_DECODEEXTRA']._serialized_end=40451
-  _globals['_DECODERESTRICTIONS']._serialized_start=40453
-  _globals['_DECODERESTRICTIONS']._serialized_end=40512
-  _globals['_DELPAYREQUEST']._serialized_start=40515
-  _globals['_DELPAYREQUEST']._serialized_end=40709
-  _globals['_DELPAYREQUEST_DELPAYSTATUS']._serialized_start=40646
-  _globals['_DELPAYREQUEST_DELPAYSTATUS']._serialized_end=40686
-  _globals['_DELPAYRESPONSE']._serialized_start=40711
-  _globals['_DELPAYRESPONSE']._serialized_end=40766
-  _globals['_DELPAYPAYMENTS']._serialized_start=40769
-  _globals['_DELPAYPAYMENTS']._serialized_end=41484
-  _globals['_DELPAYPAYMENTS_DELPAYPAYMENTSSTATUS']._serialized_start=41247
-  _globals['_DELPAYPAYMENTS_DELPAYPAYMENTSSTATUS']._serialized_end=41308
-  _globals['_DELFORWARDREQUEST']._serialized_start=41487
-  _globals['_DELFORWARDREQUEST']._serialized_end=41666
-  _globals['_DELFORWARDREQUEST_DELFORWARDSTATUS']._serialized_start=41605
-  _globals['_DELFORWARDREQUEST_DELFORWARDSTATUS']._serialized_end=41666
-  _globals['_DELFORWARDRESPONSE']._serialized_start=41668
-  _globals['_DELFORWARDRESPONSE']._serialized_end=41688
-  _globals['_DISABLEOFFERREQUEST']._serialized_start=41690
-  _globals['_DISABLEOFFERREQUEST']._serialized_end=41729
-  _globals['_DISABLEOFFERRESPONSE']._serialized_start=41732
-  _globals['_DISABLEOFFERRESPONSE']._serialized_end=41868
-  _globals['_DISCONNECTREQUEST']._serialized_start=41870
-  _globals['_DISCONNECTREQUEST']._serialized_end=41931
-  _globals['_DISCONNECTRESPONSE']._serialized_start=41933
-  _globals['_DISCONNECTRESPONSE']._serialized_end=41953
-  _globals['_FEERATESREQUEST']._serialized_start=41955
-  _globals['_FEERATESREQUEST']._serialized_end=42062
-  _globals['_FEERATESREQUEST_FEERATESSTYLE']._serialized_start=42025
-  _globals['_FEERATESREQUEST_FEERATESSTYLE']._serialized_end=42062
-  _globals['_FEERATESRESPONSE']._serialized_start=42065
-  _globals['_FEERATESRESPONSE']._serialized_end=42349
-  _globals['_FEERATESPERKB']._serialized_start=42352
-  _globals['_FEERATESPERKB']._serialized_end=42819
-  _globals['_FEERATESPERKBESTIMATES']._serialized_start=42821
-  _globals['_FEERATESPERKBESTIMATES']._serialized_end=42908
-  _globals['_FEERATESPERKW']._serialized_start=42911
-  _globals['_FEERATESPERKW']._serialized_end=43378
-  _globals['_FEERATESPERKWESTIMATES']._serialized_start=43380
-  _globals['_FEERATESPERKWESTIMATES']._serialized_end=43467
-  _globals['_FEERATESONCHAIN_FEE_ESTIMATES']._serialized_start=43470
-  _globals['_FEERATESONCHAIN_FEE_ESTIMATES']._serialized_end=43753
-  _globals['_FETCHINVOICEREQUEST']._serialized_start=43756
-  _globals['_FETCHINVOICEREQUEST']._serialized_end=44165
-  _globals['_FETCHINVOICERESPONSE']._serialized_start=44168
-  _globals['_FETCHINVOICERESPONSE']._serialized_end=44322
-  _globals['_FETCHINVOICECHANGES']._serialized_start=44325
-  _globals['_FETCHINVOICECHANGES']._serialized_end=44583
-  _globals['_FETCHINVOICENEXT_PERIOD']._serialized_start=44585
-  _globals['_FETCHINVOICENEXT_PERIOD']._serialized_end=44711
-  _globals['_FUNDCHANNEL_CANCELREQUEST']._serialized_start=44713
-  _globals['_FUNDCHANNEL_CANCELREQUEST']._serialized_end=44752
-  _globals['_FUNDCHANNEL_CANCELRESPONSE']._serialized_start=44754
-  _globals['_FUNDCHANNEL_CANCELRESPONSE']._serialized_end=44801
-  _globals['_FUNDCHANNEL_COMPLETEREQUEST']._serialized_start=44803
-  _globals['_FUNDCHANNEL_COMPLETEREQUEST']._serialized_end=44858
-  _globals['_FUNDCHANNEL_COMPLETERESPONSE']._serialized_start=44860
-  _globals['_FUNDCHANNEL_COMPLETERESPONSE']._serialized_end=44939
-  _globals['_FUNDCHANNELREQUEST']._serialized_start=44942
-  _globals['_FUNDCHANNELREQUEST']._serialized_end=45449
-  _globals['_FUNDCHANNELRESPONSE']._serialized_start=45452
-  _globals['_FUNDCHANNELRESPONSE']._serialized_end=45681
-  _globals['_FUNDCHANNELCHANNEL_TYPE']._serialized_start=45683
-  _globals['_FUNDCHANNELCHANNEL_TYPE']._serialized_end=45759
-  _globals['_FUNDCHANNEL_STARTREQUEST']._serialized_start=45762
-  _globals['_FUNDCHANNEL_STARTREQUEST']._serialized_end=46105
-  _globals['_FUNDCHANNEL_STARTRESPONSE']._serialized_start=46108
-  _globals['_FUNDCHANNEL_STARTRESPONSE']._serialized_end=46357
-  _globals['_FUNDCHANNEL_STARTCHANNEL_TYPE']._serialized_start=46359
-  _globals['_FUNDCHANNEL_STARTCHANNEL_TYPE']._serialized_end=46441
-  _globals['_GETLOGREQUEST']._serialized_start=46444
-  _globals['_GETLOGREQUEST']._serialized_end=46601
-  _globals['_GETLOGREQUEST_GETLOGLEVEL']._serialized_start=46513
-  _globals['_GETLOGREQUEST_GETLOGLEVEL']._serialized_end=46591
-  _globals['_GETLOGRESPONSE']._serialized_start=46603
-  _globals['_GETLOGRESPONSE']._serialized_end=46707
-  _globals['_GETLOGLOG']._serialized_start=46710
-  _globals['_GETLOGLOG']._serialized_end=47070
-  _globals['_GETLOGLOG_GETLOGLOGTYPE']._serialized_start=46897
-  _globals['_GETLOGLOG_GETLOGLOGTYPE']._serialized_end=47005
-  _globals['_FUNDERUPDATEREQUEST']._serialized_start=47073
-  _globals['_FUNDERUPDATEREQUEST']._serialized_end=48186
-  _globals['_FUNDERUPDATEREQUEST_FUNDERUPDATEPOLICY']._serialized_start=47767
-  _globals['_FUNDERUPDATEREQUEST_FUNDERUPDATEPOLICY']._serialized_end=47824
-  _globals['_FUNDERUPDATERESPONSE']._serialized_start=48189
-  _globals['_FUNDERUPDATERESPONSE']._serialized_end=49052
-  _globals['_FUNDERUPDATERESPONSE_FUNDERUPDATEPOLICY']._serialized_start=47767
-  _globals['_FUNDERUPDATERESPONSE_FUNDERUPDATEPOLICY']._serialized_end=47824
-  _globals['_GETROUTEREQUEST']._serialized_start=49055
-  _globals['_GETROUTEREQUEST']._serialized_end=49291
-  _globals['_GETROUTERESPONSE']._serialized_start=49293
-  _globals['_GETROUTERESPONSE']._serialized_end=49346
-  _globals['_GETROUTEROUTE']._serialized_start=49349
-  _globals['_GETROUTEROUTE']._serialized_end=49546
-  _globals['_GETROUTEROUTE_GETROUTEROUTESTYLE']._serialized_start=49517
-  _globals['_GETROUTEROUTE_GETROUTEROUTESTYLE']._serialized_end=49546
-  _globals['_LISTFORWARDSREQUEST']._serialized_start=49549
-  _globals['_LISTFORWARDSREQUEST']._serialized_end=49988
-  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSSTATUS']._serialized_start=49793
-  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSSTATUS']._serialized_end=49869
-  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSINDEX']._serialized_start=49871
-  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSINDEX']._serialized_end=49916
-  _globals['_LISTFORWARDSRESPONSE']._serialized_start=49990
-  _globals['_LISTFORWARDSRESPONSE']._serialized_end=50057
-  _globals['_LISTFORWARDSFORWARDS']._serialized_start=50060
-  _globals['_LISTFORWARDSFORWARDS']._serialized_end=50880
-  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTATUS']._serialized_start=50581
-  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTATUS']._serialized_end=50665
-  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTYLE']._serialized_start=50667
-  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTYLE']._serialized_end=50715
-  _globals['_LISTOFFERSREQUEST']._serialized_start=50882
-  _globals['_LISTOFFERSREQUEST']._serialized_end=50979
-  _globals['_LISTOFFERSRESPONSE']._serialized_start=50981
-  _globals['_LISTOFFERSRESPONSE']._serialized_end=51040
-  _globals['_LISTOFFERSOFFERS']._serialized_start=51043
-  _globals['_LISTOFFERSOFFERS']._serialized_end=51175
-  _globals['_LISTPAYSREQUEST']._serialized_start=51178
-  _globals['_LISTPAYSREQUEST']._serialized_end=51566
-  _globals['_LISTPAYSREQUEST_LISTPAYSSTATUS']._serialized_start=51399
-  _globals['_LISTPAYSREQUEST_LISTPAYSSTATUS']._serialized_end=51454
-  _globals['_LISTPAYSREQUEST_LISTPAYSINDEX']._serialized_start=51456
-  _globals['_LISTPAYSREQUEST_LISTPAYSINDEX']._serialized_end=51497
-  _globals['_LISTPAYSRESPONSE']._serialized_start=51568
-  _globals['_LISTPAYSRESPONSE']._serialized_end=51619
-  _globals['_LISTPAYSPAYS']._serialized_start=51622
-  _globals['_LISTPAYSPAYS']._serialized_end=52353
-  _globals['_LISTPAYSPAYS_LISTPAYSPAYSSTATUS']._serialized_start=52092
-  _globals['_LISTPAYSPAYS_LISTPAYSPAYSSTATUS']._serialized_end=52151
-  _globals['_LISTHTLCSREQUEST']._serialized_start=52355
-  _globals['_LISTHTLCSREQUEST']._serialized_end=52397
-  _globals['_LISTHTLCSRESPONSE']._serialized_start=52399
-  _globals['_LISTHTLCSRESPONSE']._serialized_end=52454
-  _globals['_LISTHTLCSHTLCS']._serialized_start=52457
-  _globals['_LISTHTLCSHTLCS']._serialized_end=52722
-  _globals['_LISTHTLCSHTLCS_LISTHTLCSHTLCSDIRECTION']._serialized_start=52680
-  _globals['_LISTHTLCSHTLCS_LISTHTLCSHTLCSDIRECTION']._serialized_end=52722
-  _globals['_MULTIFUNDCHANNELREQUEST']._serialized_start=52725
-  _globals['_MULTIFUNDCHANNELREQUEST']._serialized_end=53031
-  _globals['_MULTIFUNDCHANNELRESPONSE']._serialized_start=53034
-  _globals['_MULTIFUNDCHANNELRESPONSE']._serialized_end=53186
-  _globals['_MULTIFUNDCHANNELDESTINATIONS']._serialized_start=53189
-  _globals['_MULTIFUNDCHANNELDESTINATIONS']._serialized_end=53572
-  _globals['_MULTIFUNDCHANNELCHANNEL_IDS']._serialized_start=53575
-  _globals['_MULTIFUNDCHANNELCHANNEL_IDS']._serialized_end=53778
-  _globals['_MULTIFUNDCHANNELCHANNEL_IDSCHANNEL_TYPE']._serialized_start=53780
-  _globals['_MULTIFUNDCHANNELCHANNEL_IDSCHANNEL_TYPE']._serialized_end=53872
-  _globals['_MULTIFUNDCHANNELFAILED']._serialized_start=53875
-  _globals['_MULTIFUNDCHANNELFAILED']._serialized_end=54150
-  _globals['_MULTIFUNDCHANNELFAILED_MULTIFUNDCHANNELFAILEDMETHOD']._serialized_start=54036
-  _globals['_MULTIFUNDCHANNELFAILED_MULTIFUNDCHANNELFAILEDMETHOD']._serialized_end=54150
-  _globals['_MULTIFUNDCHANNELFAILEDERROR']._serialized_start=54152
-  _globals['_MULTIFUNDCHANNELFAILEDERROR']._serialized_end=54212
-  _globals['_MULTIWITHDRAWREQUEST']._serialized_start=54215
-  _globals['_MULTIWITHDRAWREQUEST']._serialized_end=54383
-  _globals['_MULTIWITHDRAWRESPONSE']._serialized_start=54385
-  _globals['_MULTIWITHDRAWRESPONSE']._serialized_end=54434
-  _globals['_OFFERREQUEST']._serialized_start=54437
-  _globals['_OFFERREQUEST']._serialized_end=54981
-  _globals['_OFFERRESPONSE']._serialized_start=54984
-  _globals['_OFFERRESPONSE']._serialized_end=55130
-  _globals['_OPENCHANNEL_ABORTREQUEST']._serialized_start=55132
-  _globals['_OPENCHANNEL_ABORTREQUEST']._serialized_end=55178
-  _globals['_OPENCHANNEL_ABORTRESPONSE']._serialized_start=55180
-  _globals['_OPENCHANNEL_ABORTRESPONSE']._serialized_end=55269
-  _globals['_OPENCHANNEL_BUMPREQUEST']._serialized_start=55272
-  _globals['_OPENCHANNEL_BUMPREQUEST']._serialized_end=55431
-  _globals['_OPENCHANNEL_BUMPRESPONSE']._serialized_start=55434
-  _globals['_OPENCHANNEL_BUMPRESPONSE']._serialized_end=55696
-  _globals['_OPENCHANNEL_BUMPCHANNEL_TYPE']._serialized_start=55698
-  _globals['_OPENCHANNEL_BUMPCHANNEL_TYPE']._serialized_end=55779
-  _globals['_OPENCHANNEL_INITREQUEST']._serialized_start=55782
-  _globals['_OPENCHANNEL_INITREQUEST']._serialized_end=56198
-  _globals['_OPENCHANNEL_INITRESPONSE']._serialized_start=56201
-  _globals['_OPENCHANNEL_INITRESPONSE']._serialized_end=56463
-  _globals['_OPENCHANNEL_INITCHANNEL_TYPE']._serialized_start=56465
-  _globals['_OPENCHANNEL_INITCHANNEL_TYPE']._serialized_end=56546
-  _globals['_OPENCHANNEL_SIGNEDREQUEST']._serialized_start=56548
-  _globals['_OPENCHANNEL_SIGNEDREQUEST']._serialized_end=56616
-  _globals['_OPENCHANNEL_SIGNEDRESPONSE']._serialized_start=56618
-  _globals['_OPENCHANNEL_SIGNEDRESPONSE']._serialized_end=56692
-  _globals['_OPENCHANNEL_UPDATEREQUEST']._serialized_start=56694
-  _globals['_OPENCHANNEL_UPDATEREQUEST']._serialized_end=56755
-  _globals['_OPENCHANNEL_UPDATERESPONSE']._serialized_start=56758
-  _globals['_OPENCHANNEL_UPDATERESPONSE']._serialized_end=57060
-  _globals['_OPENCHANNEL_UPDATECHANNEL_TYPE']._serialized_start=57062
-  _globals['_OPENCHANNEL_UPDATECHANNEL_TYPE']._serialized_end=57145
-  _globals['_PINGREQUEST']._serialized_start=57147
-  _globals['_PINGREQUEST']._serialized_end=57236
-  _globals['_PINGRESPONSE']._serialized_start=57238
-  _globals['_PINGRESPONSE']._serialized_end=57268
-  _globals['_PLUGINREQUEST']._serialized_start=57271
-  _globals['_PLUGINREQUEST']._serialized_end=57416
-  _globals['_PLUGINRESPONSE']._serialized_start=57418
-  _globals['_PLUGINRESPONSE']._serialized_end=57543
-  _globals['_PLUGINPLUGINS']._serialized_start=57545
-  _globals['_PLUGINPLUGINS']._serialized_end=57607
-  _globals['_RENEPAYSTATUSREQUEST']._serialized_start=57609
-  _globals['_RENEPAYSTATUSREQUEST']._serialized_end=57669
-  _globals['_RENEPAYSTATUSRESPONSE']._serialized_start=57671
-  _globals['_RENEPAYSTATUSRESPONSE']._serialized_end=57742
-  _globals['_RENEPAYSTATUSPAYSTATUS']._serialized_start=57745
-  _globals['_RENEPAYSTATUSPAYSTATUS']._serialized_end=58227
-  _globals['_RENEPAYSTATUSPAYSTATUS_RENEPAYSTATUSPAYSTATUSSTATUS']._serialized_start=58090
-  _globals['_RENEPAYSTATUSPAYSTATUS_RENEPAYSTATUSPAYSTATUSSTATUS']._serialized_end=58159
-  _globals['_RENEPAYREQUEST']._serialized_start=58230
-  _globals['_RENEPAYREQUEST']._serialized_end=58576
-  _globals['_RENEPAYRESPONSE']._serialized_start=58579
-  _globals['_RENEPAYRESPONSE']._serialized_end=59000
-  _globals['_RENEPAYRESPONSE_RENEPAYSTATUS']._serialized_start=58896
-  _globals['_RENEPAYRESPONSE_RENEPAYSTATUS']._serialized_end=58950
-  _globals['_RESERVEINPUTSREQUEST']._serialized_start=59002
-  _globals['_RESERVEINPUTSREQUEST']._serialized_end=59110
-  _globals['_RESERVEINPUTSRESPONSE']._serialized_start=59112
-  _globals['_RESERVEINPUTSRESPONSE']._serialized_end=59189
-  _globals['_RESERVEINPUTSRESERVATIONS']._serialized_start=59191
-  _globals['_RESERVEINPUTSRESERVATIONS']._serialized_end=59313
-  _globals['_SENDCUSTOMMSGREQUEST']._serialized_start=59315
-  _globals['_SENDCUSTOMMSGREQUEST']._serialized_end=59367
-  _globals['_SENDCUSTOMMSGRESPONSE']._serialized_start=59369
-  _globals['_SENDCUSTOMMSGRESPONSE']._serialized_end=59408
-  _globals['_SENDINVOICEREQUEST']._serialized_start=59411
-  _globals['_SENDINVOICEREQUEST']._serialized_end=59587
-  _globals['_SENDINVOICERESPONSE']._serialized_start=59590
-  _globals['_SENDINVOICERESPONSE']._serialized_end=60181
-  _globals['_SENDINVOICERESPONSE_SENDINVOICESTATUS']._serialized_start=59992
-  _globals['_SENDINVOICERESPONSE_SENDINVOICESTATUS']._serialized_end=60046
-  _globals['_SETCHANNELREQUEST']._serialized_start=60184
-  _globals['_SETCHANNELREQUEST']._serialized_end=60482
-  _globals['_SETCHANNELRESPONSE']._serialized_start=60484
-  _globals['_SETCHANNELRESPONSE']._serialized_end=60547
-  _globals['_SETCHANNELCHANNELS']._serialized_start=60550
-  _globals['_SETCHANNELCHANNELS']._serialized_end=61008
-  _globals['_SETCONFIGREQUEST']._serialized_start=61010
-  _globals['_SETCONFIGREQUEST']._serialized_end=61070
-  _globals['_SETCONFIGRESPONSE']._serialized_start=61072
-  _globals['_SETCONFIGRESPONSE']._serialized_end=61129
-  _globals['_SETCONFIGCONFIG']._serialized_start=61132
-  _globals['_SETCONFIGCONFIG']._serialized_end=61425
-  _globals['_SETPSBTVERSIONREQUEST']._serialized_start=61427
-  _globals['_SETPSBTVERSIONREQUEST']._serialized_end=61481
-  _globals['_SETPSBTVERSIONRESPONSE']._serialized_start=61483
-  _globals['_SETPSBTVERSIONRESPONSE']._serialized_end=61521
-  _globals['_SIGNINVOICEREQUEST']._serialized_start=61523
-  _globals['_SIGNINVOICEREQUEST']._serialized_end=61562
-  _globals['_SIGNINVOICERESPONSE']._serialized_start=61564
-  _globals['_SIGNINVOICERESPONSE']._serialized_end=61601
-  _globals['_SIGNMESSAGEREQUEST']._serialized_start=61603
-  _globals['_SIGNMESSAGEREQUEST']._serialized_end=61640
-  _globals['_SIGNMESSAGERESPONSE']._serialized_start=61642
-  _globals['_SIGNMESSAGERESPONSE']._serialized_end=61712
-  _globals['_SPLICE_INITREQUEST']._serialized_start=61715
-  _globals['_SPLICE_INITREQUEST']._serialized_end=61916
-  _globals['_SPLICE_INITRESPONSE']._serialized_start=61918
-  _globals['_SPLICE_INITRESPONSE']._serialized_end=61953
-  _globals['_SPLICE_SIGNEDREQUEST']._serialized_start=61955
-  _globals['_SPLICE_SIGNEDREQUEST']._serialized_end=62051
-  _globals['_SPLICE_SIGNEDRESPONSE']._serialized_start=62053
-  _globals['_SPLICE_SIGNEDRESPONSE']._serialized_end=62148
-  _globals['_SPLICE_UPDATEREQUEST']._serialized_start=62150
-  _globals['_SPLICE_UPDATEREQUEST']._serialized_end=62206
-  _globals['_SPLICE_UPDATERESPONSE']._serialized_start=62208
-  _globals['_SPLICE_UPDATERESPONSE']._serialized_end=62330
-  _globals['_UNRESERVEINPUTSREQUEST']._serialized_start=62332
-  _globals['_UNRESERVEINPUTSREQUEST']._serialized_end=62404
-  _globals['_UNRESERVEINPUTSRESPONSE']._serialized_start=62406
-  _globals['_UNRESERVEINPUTSRESPONSE']._serialized_end=62487
-  _globals['_UNRESERVEINPUTSRESERVATIONS']._serialized_start=62490
-  _globals['_UNRESERVEINPUTSRESERVATIONS']._serialized_end=62641
-  _globals['_UPGRADEWALLETREQUEST']._serialized_start=62643
-  _globals['_UPGRADEWALLETREQUEST']._serialized_end=62753
-  _globals['_UPGRADEWALLETRESPONSE']._serialized_start=62756
-  _globals['_UPGRADEWALLETRESPONSE']._serialized_end=62905
-  _globals['_WAITBLOCKHEIGHTREQUEST']._serialized_start=62907
-  _globals['_WAITBLOCKHEIGHTREQUEST']._serialized_end=62986
-  _globals['_WAITBLOCKHEIGHTRESPONSE']._serialized_start=62988
-  _globals['_WAITBLOCKHEIGHTRESPONSE']._serialized_end=63034
-  _globals['_WAITREQUEST']._serialized_start=63037
-  _globals['_WAITREQUEST']._serialized_end=63286
-  _globals['_WAITREQUEST_WAITSUBSYSTEM']._serialized_start=63173
-  _globals['_WAITREQUEST_WAITSUBSYSTEM']._serialized_end=63230
-  _globals['_WAITREQUEST_WAITINDEXNAME']._serialized_start=63232
-  _globals['_WAITREQUEST_WAITINDEXNAME']._serialized_end=63286
-  _globals['_WAITRESPONSE']._serialized_start=63289
-  _globals['_WAITRESPONSE']._serialized_end=63568
-  _globals['_WAITRESPONSE_WAITSUBSYSTEM']._serialized_start=63173
-  _globals['_WAITRESPONSE_WAITSUBSYSTEM']._serialized_end=63230
-  _globals['_WAITDETAILS']._serialized_start=63571
-  _globals['_WAITDETAILS']._serialized_end=64207
-  _globals['_WAITDETAILS_WAITDETAILSSTATUS']._serialized_start=63913
-  _globals['_WAITDETAILS_WAITDETAILSSTATUS']._serialized_end=64050
-  _globals['_LISTCONFIGSREQUEST']._serialized_start=64209
-  _globals['_LISTCONFIGSREQUEST']._serialized_end=64261
-  _globals['_LISTCONFIGSRESPONSE']._serialized_start=64264
-  _globals['_LISTCONFIGSRESPONSE']._serialized_end=67883
-  _globals['_LISTCONFIGSCONFIGS']._serialized_start=67886
-  _globals['_LISTCONFIGSCONFIGS']._serialized_end=73984
-  _globals['_LISTCONFIGSCONFIGSCONF']._serialized_start=73987
-  _globals['_LISTCONFIGSCONFIGSCONF']._serialized_end=74149
-  _globals['_LISTCONFIGSCONFIGSCONF_LISTCONFIGSCONFIGSCONFSOURCE']._serialized_start=74106
-  _globals['_LISTCONFIGSCONFIGSCONF_LISTCONFIGSCONFIGSCONFSOURCE']._serialized_end=74149
-  _globals['_LISTCONFIGSCONFIGSDEVELOPER']._serialized_start=74151
-  _globals['_LISTCONFIGSCONFIGSDEVELOPER']._serialized_end=74209
-  _globals['_LISTCONFIGSCONFIGSCLEARPLUGINS']._serialized_start=74211
-  _globals['_LISTCONFIGSCONFIGSCLEARPLUGINS']._serialized_end=74272
-  _globals['_LISTCONFIGSCONFIGSDISABLEMPP']._serialized_start=74274
-  _globals['_LISTCONFIGSCONFIGSDISABLEMPP']._serialized_end=74365
-  _globals['_LISTCONFIGSCONFIGSMAINNET']._serialized_start=74367
-  _globals['_LISTCONFIGSCONFIGSMAINNET']._serialized_end=74423
-  _globals['_LISTCONFIGSCONFIGSREGTEST']._serialized_start=74425
-  _globals['_LISTCONFIGSCONFIGSREGTEST']._serialized_end=74481
-  _globals['_LISTCONFIGSCONFIGSSIGNET']._serialized_start=74483
-  _globals['_LISTCONFIGSCONFIGSSIGNET']._serialized_end=74538
-  _globals['_LISTCONFIGSCONFIGSTESTNET']._serialized_start=74540
-  _globals['_LISTCONFIGSCONFIGSTESTNET']._serialized_end=74596
-  _globals['_LISTCONFIGSCONFIGSIMPORTANTPLUGIN']._serialized_start=74598
-  _globals['_LISTCONFIGSCONFIGSIMPORTANTPLUGIN']._serialized_end=74670
-  _globals['_LISTCONFIGSCONFIGSPLUGIN']._serialized_start=74672
-  _globals['_LISTCONFIGSCONFIGSPLUGIN']._serialized_end=74735
-  _globals['_LISTCONFIGSCONFIGSPLUGINDIR']._serialized_start=74737
-  _globals['_LISTCONFIGSCONFIGSPLUGINDIR']._serialized_end=74803
-  _globals['_LISTCONFIGSCONFIGSLIGHTNINGDIR']._serialized_start=74805
-  _globals['_LISTCONFIGSCONFIGSLIGHTNINGDIR']._serialized_end=74872
-  _globals['_LISTCONFIGSCONFIGSNETWORK']._serialized_start=74874
-  _globals['_LISTCONFIGSCONFIGSNETWORK']._serialized_end=74936
-  _globals['_LISTCONFIGSCONFIGSALLOWDEPRECATEDAPIS']._serialized_start=74938
-  _globals['_LISTCONFIGSCONFIGSALLOWDEPRECATEDAPIS']._serialized_end=75013
-  _globals['_LISTCONFIGSCONFIGSRPCFILE']._serialized_start=75015
-  _globals['_LISTCONFIGSCONFIGSRPCFILE']._serialized_end=75077
-  _globals['_LISTCONFIGSCONFIGSDISABLEPLUGIN']._serialized_start=75079
-  _globals['_LISTCONFIGSCONFIGSDISABLEPLUGIN']._serialized_end=75149
-  _globals['_LISTCONFIGSCONFIGSALWAYSUSEPROXY']._serialized_start=75151
-  _globals['_LISTCONFIGSCONFIGSALWAYSUSEPROXY']._serialized_end=75221
-  _globals['_LISTCONFIGSCONFIGSDAEMON']._serialized_start=75223
-  _globals['_LISTCONFIGSCONFIGSDAEMON']._serialized_end=75278
-  _globals['_LISTCONFIGSCONFIGSWALLET']._serialized_start=75280
-  _globals['_LISTCONFIGSCONFIGSWALLET']._serialized_end=75341
-  _globals['_LISTCONFIGSCONFIGSLARGECHANNELS']._serialized_start=75343
-  _globals['_LISTCONFIGSCONFIGSLARGECHANNELS']._serialized_end=75405
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALDUALFUND']._serialized_start=75407
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALDUALFUND']._serialized_end=75476
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSPLICING']._serialized_start=75478
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSPLICING']._serialized_end=75547
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALONIONMESSAGES']._serialized_start=75549
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALONIONMESSAGES']._serialized_end=75623
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALOFFERS']._serialized_start=75625
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALOFFERS']._serialized_end=75692
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSHUTDOWNWRONGFUNDING']._serialized_start=75694
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSHUTDOWNWRONGFUNDING']._serialized_end=75775
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALPEERSTORAGE']._serialized_start=75777
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALPEERSTORAGE']._serialized_end=75849
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALANCHORS']._serialized_start=75851
-  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALANCHORS']._serialized_end=75919
-  _globals['_LISTCONFIGSCONFIGSDATABASEUPGRADE']._serialized_start=75921
-  _globals['_LISTCONFIGSCONFIGSDATABASEUPGRADE']._serialized_end=75992
-  _globals['_LISTCONFIGSCONFIGSRGB']._serialized_start=75994
-  _globals['_LISTCONFIGSCONFIGSRGB']._serialized_end=76052
-  _globals['_LISTCONFIGSCONFIGSALIAS']._serialized_start=76054
-  _globals['_LISTCONFIGSCONFIGSALIAS']._serialized_end=76114
-  _globals['_LISTCONFIGSCONFIGSPIDFILE']._serialized_start=76116
-  _globals['_LISTCONFIGSCONFIGSPIDFILE']._serialized_end=76178
-  _globals['_LISTCONFIGSCONFIGSIGNOREFEELIMITS']._serialized_start=76180
-  _globals['_LISTCONFIGSCONFIGSIGNOREFEELIMITS']._serialized_end=76251
-  _globals['_LISTCONFIGSCONFIGSWATCHTIMEBLOCKS']._serialized_start=76253
-  _globals['_LISTCONFIGSCONFIGSWATCHTIMEBLOCKS']._serialized_end=76323
-  _globals['_LISTCONFIGSCONFIGSMAXLOCKTIMEBLOCKS']._serialized_start=76325
-  _globals['_LISTCONFIGSCONFIGSMAXLOCKTIMEBLOCKS']._serialized_end=76397
-  _globals['_LISTCONFIGSCONFIGSFUNDINGCONFIRMS']._serialized_start=76399
-  _globals['_LISTCONFIGSCONFIGSFUNDINGCONFIRMS']._serialized_end=76469
-  _globals['_LISTCONFIGSCONFIGSCLTVDELTA']._serialized_start=76471
-  _globals['_LISTCONFIGSCONFIGSCLTVDELTA']._serialized_end=76535
-  _globals['_LISTCONFIGSCONFIGSCLTVFINAL']._serialized_start=76537
-  _globals['_LISTCONFIGSCONFIGSCLTVFINAL']._serialized_end=76601
-  _globals['_LISTCONFIGSCONFIGSCOMMITTIME']._serialized_start=76603
-  _globals['_LISTCONFIGSCONFIGSCOMMITTIME']._serialized_end=76668
-  _globals['_LISTCONFIGSCONFIGSFEEBASE']._serialized_start=76670
-  _globals['_LISTCONFIGSCONFIGSFEEBASE']._serialized_end=76732
-  _globals['_LISTCONFIGSCONFIGSRESCAN']._serialized_start=76734
-  _globals['_LISTCONFIGSCONFIGSRESCAN']._serialized_end=76795
-  _globals['_LISTCONFIGSCONFIGSFEEPERSATOSHI']._serialized_start=76797
-  _globals['_LISTCONFIGSCONFIGSFEEPERSATOSHI']._serialized_end=76865
-  _globals['_LISTCONFIGSCONFIGSMAXCONCURRENTHTLCS']._serialized_start=76867
-  _globals['_LISTCONFIGSCONFIGSMAXCONCURRENTHTLCS']._serialized_end=76940
-  _globals['_LISTCONFIGSCONFIGSHTLCMINIMUMMSAT']._serialized_start=76942
-  _globals['_LISTCONFIGSCONFIGSHTLCMINIMUMMSAT']._serialized_end=77026
-  _globals['_LISTCONFIGSCONFIGSHTLCMAXIMUMMSAT']._serialized_start=77028
-  _globals['_LISTCONFIGSCONFIGSHTLCMAXIMUMMSAT']._serialized_end=77112
-  _globals['_LISTCONFIGSCONFIGSMAXDUSTHTLCEXPOSUREMSAT']._serialized_start=77114
-  _globals['_LISTCONFIGSCONFIGSMAXDUSTHTLCEXPOSUREMSAT']._serialized_end=77206
-  _globals['_LISTCONFIGSCONFIGSMINCAPACITYSAT']._serialized_start=77208
-  _globals['_LISTCONFIGSCONFIGSMINCAPACITYSAT']._serialized_end=77311
-  _globals['_LISTCONFIGSCONFIGSADDR']._serialized_start=77313
-  _globals['_LISTCONFIGSCONFIGSADDR']._serialized_end=77374
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDR']._serialized_start=77376
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDR']._serialized_end=77445
-  _globals['_LISTCONFIGSCONFIGSBINDADDR']._serialized_start=77447
-  _globals['_LISTCONFIGSCONFIGSBINDADDR']._serialized_end=77512
-  _globals['_LISTCONFIGSCONFIGSOFFLINE']._serialized_start=77514
-  _globals['_LISTCONFIGSCONFIGSOFFLINE']._serialized_end=77570
-  _globals['_LISTCONFIGSCONFIGSAUTOLISTEN']._serialized_start=77572
-  _globals['_LISTCONFIGSCONFIGSAUTOLISTEN']._serialized_end=77638
-  _globals['_LISTCONFIGSCONFIGSPROXY']._serialized_start=77640
-  _globals['_LISTCONFIGSCONFIGSPROXY']._serialized_end=77700
-  _globals['_LISTCONFIGSCONFIGSDISABLEDNS']._serialized_start=77702
-  _globals['_LISTCONFIGSCONFIGSDISABLEDNS']._serialized_end=77761
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED']._serialized_start=77764
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED']._serialized_end=78022
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDVALUE_STR']._serialized_start=77940
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDVALUE_STR']._serialized_end=78022
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDPORT']._serialized_start=78024
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDPORT']._serialized_end=78105
-  _globals['_LISTCONFIGSCONFIGSENCRYPTEDHSM']._serialized_start=78107
-  _globals['_LISTCONFIGSCONFIGSENCRYPTEDHSM']._serialized_end=78168
-  _globals['_LISTCONFIGSCONFIGSRPCFILEMODE']._serialized_start=78170
-  _globals['_LISTCONFIGSCONFIGSRPCFILEMODE']._serialized_end=78236
-  _globals['_LISTCONFIGSCONFIGSLOGLEVEL']._serialized_start=78238
-  _globals['_LISTCONFIGSCONFIGSLOGLEVEL']._serialized_end=78301
-  _globals['_LISTCONFIGSCONFIGSLOGPREFIX']._serialized_start=78303
-  _globals['_LISTCONFIGSCONFIGSLOGPREFIX']._serialized_end=78367
-  _globals['_LISTCONFIGSCONFIGSLOGFILE']._serialized_start=78369
-  _globals['_LISTCONFIGSCONFIGSLOGFILE']._serialized_end=78433
-  _globals['_LISTCONFIGSCONFIGSLOGTIMESTAMPS']._serialized_start=78435
-  _globals['_LISTCONFIGSCONFIGSLOGTIMESTAMPS']._serialized_end=78504
-  _globals['_LISTCONFIGSCONFIGSFORCEFEERATES']._serialized_start=78506
-  _globals['_LISTCONFIGSCONFIGSFORCEFEERATES']._serialized_end=78574
-  _globals['_LISTCONFIGSCONFIGSSUBDAEMON']._serialized_start=78576
-  _globals['_LISTCONFIGSCONFIGSSUBDAEMON']._serialized_end=78642
-  _globals['_LISTCONFIGSCONFIGSFETCHINVOICENOCONNECT']._serialized_start=78644
-  _globals['_LISTCONFIGSCONFIGSFETCHINVOICENOCONNECT']._serialized_end=78746
-  _globals['_LISTCONFIGSCONFIGSACCEPTHTLCTLVTYPES']._serialized_start=78748
-  _globals['_LISTCONFIGSCONFIGSACCEPTHTLCTLVTYPES']._serialized_end=78821
-  _globals['_LISTCONFIGSCONFIGSTORSERVICEPASSWORD']._serialized_start=78823
-  _globals['_LISTCONFIGSCONFIGSTORSERVICEPASSWORD']._serialized_end=78896
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDNS']._serialized_start=78898
-  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDNS']._serialized_end=78969
-  _globals['_LISTCONFIGSCONFIGSREQUIRECONFIRMEDINPUTS']._serialized_start=78971
-  _globals['_LISTCONFIGSCONFIGSREQUIRECONFIRMEDINPUTS']._serialized_end=79049
-  _globals['_LISTCONFIGSCONFIGSCOMMITFEE']._serialized_start=79051
-  _globals['_LISTCONFIGSCONFIGSCOMMITFEE']._serialized_end=79115
-  _globals['_LISTCONFIGSCONFIGSCOMMITFEERATEOFFSET']._serialized_start=79117
-  _globals['_LISTCONFIGSCONFIGSCOMMITFEERATEOFFSET']._serialized_end=79191
-  _globals['_LISTCONFIGSCONFIGSAUTOCONNECTSEEKERPEERS']._serialized_start=79193
-  _globals['_LISTCONFIGSCONFIGSAUTOCONNECTSEEKERPEERS']._serialized_end=79270
-  _globals['_LISTCONFIGSPLUGINS']._serialized_start=79272
-  _globals['_LISTCONFIGSPLUGINS']._serialized_end=79386
-  _globals['_LISTCONFIGSPLUGINSOPTIONS']._serialized_start=79388
-  _globals['_LISTCONFIGSPLUGINSOPTIONS']._serialized_end=79415
-  _globals['_LISTCONFIGSIMPORTANTPLUGINS']._serialized_start=79418
-  _globals['_LISTCONFIGSIMPORTANTPLUGINS']._serialized_end=79550
-  _globals['_LISTCONFIGSIMPORTANTPLUGINSOPTIONS']._serialized_start=79552
-  _globals['_LISTCONFIGSIMPORTANTPLUGINSOPTIONS']._serialized_end=79588
-  _globals['_STOPREQUEST']._serialized_start=79590
-  _globals['_STOPREQUEST']._serialized_end=79603
-  _globals['_STOPRESPONSE']._serialized_start=79605
-  _globals['_STOPRESPONSE']._serialized_end=79718
-  _globals['_STOPRESPONSE_STOPRESULT']._serialized_start=79672
-  _globals['_STOPRESPONSE_STOPRESULT']._serialized_end=79707
-  _globals['_HELPREQUEST']._serialized_start=79720
-  _globals['_HELPREQUEST']._serialized_end=79767
-  _globals['_HELPRESPONSE']._serialized_start=79770
-  _globals['_HELPRESPONSE']._serialized_end=79919
-  _globals['_HELPRESPONSE_HELPFORMATHINT']._serialized_start=79875
-  _globals['_HELPRESPONSE_HELPFORMATHINT']._serialized_end=79903
-  _globals['_HELPHELP']._serialized_start=79921
-  _globals['_HELPHELP']._serialized_end=79948
-  _globals['_PREAPPROVEKEYSENDREQUEST']._serialized_start=79950
-  _globals['_PREAPPROVEKEYSENDREQUEST']._serialized_end=80053
-  _globals['_PREAPPROVEKEYSENDRESPONSE']._serialized_start=80055
-  _globals['_PREAPPROVEKEYSENDRESPONSE']._serialized_end=80082
-  _globals['_PREAPPROVEINVOICEREQUEST']._serialized_start=80084
-  _globals['_PREAPPROVEINVOICEREQUEST']._serialized_end=80126
-  _globals['_PREAPPROVEINVOICERESPONSE']._serialized_start=80128
-  _globals['_PREAPPROVEINVOICERESPONSE']._serialized_end=80155
-  _globals['_STATICBACKUPREQUEST']._serialized_start=80157
-  _globals['_STATICBACKUPREQUEST']._serialized_end=80178
-  _globals['_STATICBACKUPRESPONSE']._serialized_start=80180
-  _globals['_STATICBACKUPRESPONSE']._serialized_end=80215
-  _globals['_BKPRCHANNELSAPYREQUEST']._serialized_start=80217
-  _globals['_BKPRCHANNELSAPYREQUEST']._serialized_end=80317
-  _globals['_BKPRCHANNELSAPYRESPONSE']._serialized_start=80319
-  _globals['_BKPRCHANNELSAPYRESPONSE']._serialized_end=80400
-  _globals['_BKPRCHANNELSAPYCHANNELS_APY']._serialized_start=80403
-  _globals['_BKPRCHANNELSAPYCHANNELS_APY']._serialized_end=81293
-  _globals['_BKPRDUMPINCOMECSVREQUEST']._serialized_start=81296
-  _globals['_BKPRDUMPINCOMECSVREQUEST']._serialized_end=81506
-  _globals['_BKPRDUMPINCOMECSVRESPONSE']._serialized_start=81509
-  _globals['_BKPRDUMPINCOMECSVRESPONSE']._serialized_end=81723
-  _globals['_BKPRDUMPINCOMECSVRESPONSE_BKPRDUMPINCOMECSVCSV_FORMAT']._serialized_start=81636
-  _globals['_BKPRDUMPINCOMECSVRESPONSE_BKPRDUMPINCOMECSVCSV_FORMAT']._serialized_end=81723
-  _globals['_BKPRINSPECTREQUEST']._serialized_start=81725
-  _globals['_BKPRINSPECTREQUEST']._serialized_end=81762
-  _globals['_BKPRINSPECTRESPONSE']._serialized_start=81764
-  _globals['_BKPRINSPECTRESPONSE']._serialized_end=81819
-  _globals['_BKPRINSPECTTXS']._serialized_start=81822
-  _globals['_BKPRINSPECTTXS']._serialized_end=81976
-  _globals['_BKPRINSPECTTXSOUTPUTS']._serialized_start=81979
-  _globals['_BKPRINSPECTTXSOUTPUTS']._serialized_end=82423
-  _globals['_BKPRLISTACCOUNTEVENTSREQUEST']._serialized_start=82425
-  _globals['_BKPRLISTACCOUNTEVENTSREQUEST']._serialized_end=82529
-  _globals['_BKPRLISTACCOUNTEVENTSRESPONSE']._serialized_start=82531
-  _globals['_BKPRLISTACCOUNTEVENTSRESPONSE']._serialized_end=82612
-  _globals['_BKPRLISTACCOUNTEVENTSEVENTS']._serialized_start=82615
-  _globals['_BKPRLISTACCOUNTEVENTSEVENTS']._serialized_end=83288
-  _globals['_BKPRLISTACCOUNTEVENTSEVENTS_BKPRLISTACCOUNTEVENTSEVENTSTYPE']._serialized_start=83091
-  _globals['_BKPRLISTACCOUNTEVENTSEVENTS_BKPRLISTACCOUNTEVENTSEVENTSTYPE']._serialized_end=83165
-  _globals['_BKPRLISTBALANCESREQUEST']._serialized_start=83290
-  _globals['_BKPRLISTBALANCESREQUEST']._serialized_end=83315
-  _globals['_BKPRLISTBALANCESRESPONSE']._serialized_start=83317
-  _globals['_BKPRLISTBALANCESRESPONSE']._serialized_end=83392
-  _globals['_BKPRLISTBALANCESACCOUNTS']._serialized_start=83395
-  _globals['_BKPRLISTBALANCESACCOUNTS']._serialized_end=83721
-  _globals['_BKPRLISTBALANCESACCOUNTSBALANCES']._serialized_start=83723
-  _globals['_BKPRLISTBALANCESACCOUNTSBALANCES']._serialized_end=83811
-  _globals['_BKPRLISTINCOMEREQUEST']._serialized_start=83814
-  _globals['_BKPRLISTINCOMEREQUEST']._serialized_end=83965
-  _globals['_BKPRLISTINCOMERESPONSE']._serialized_start=83967
-  _globals['_BKPRLISTINCOMERESPONSE']._serialized_end=84048
-  _globals['_BKPRLISTINCOMEINCOME_EVENTS']._serialized_start=84051
-  _globals['_BKPRLISTINCOMEINCOME_EVENTS']._serialized_end=84360
-  _globals['_BLACKLISTRUNEREQUEST']._serialized_start=84362
-  _globals['_BLACKLISTRUNEREQUEST']._serialized_end=84440
-  _globals['_BLACKLISTRUNERESPONSE']._serialized_start=84442
-  _globals['_BLACKLISTRUNERESPONSE']._serialized_end=84513
-  _globals['_BLACKLISTRUNEBLACKLIST']._serialized_start=84515
-  _globals['_BLACKLISTRUNEBLACKLIST']._serialized_end=84567
-  _globals['_CHECKRUNEREQUEST']._serialized_start=84569
-  _globals['_CHECKRUNEREQUEST']._serialized_end=84681
-  _globals['_CHECKRUNERESPONSE']._serialized_start=84683
-  _globals['_CHECKRUNERESPONSE']._serialized_end=84717
-  _globals['_CREATERUNEREQUEST']._serialized_start=84719
-  _globals['_CREATERUNEREQUEST']._serialized_end=84788
-  _globals['_CREATERUNERESPONSE']._serialized_start=84790
-  _globals['_CREATERUNERESPONSE']._serialized_end=84913
-  _globals['_SHOWRUNESREQUEST']._serialized_start=84915
-  _globals['_SHOWRUNESREQUEST']._serialized_end=84961
-  _globals['_SHOWRUNESRESPONSE']._serialized_start=84963
-  _globals['_SHOWRUNESRESPONSE']._serialized_end=85018
-  _globals['_SHOWRUNESRUNES']._serialized_start=85021
-  _globals['_SHOWRUNESRUNES']._serialized_end=85306
-  _globals['_SHOWRUNESRUNESRESTRICTIONS']._serialized_start=85308
-  _globals['_SHOWRUNESRUNESRESTRICTIONS']._serialized_end=85420
-  _globals['_SHOWRUNESRUNESRESTRICTIONSALTERNATIVES']._serialized_start=85422
-  _globals['_SHOWRUNESRUNESRESTRICTIONSALTERNATIVES']._serialized_end=85532
-  _globals['_STREAMBLOCKADDEDREQUEST']._serialized_start=85534
-  _globals['_STREAMBLOCKADDEDREQUEST']._serialized_end=85559
-  _globals['_BLOCKADDEDNOTIFICATION']._serialized_start=85561
-  _globals['_BLOCKADDEDNOTIFICATION']._serialized_end=85615
-  _globals['_STREAMCHANNELOPENFAILEDREQUEST']._serialized_start=85617
-  _globals['_STREAMCHANNELOPENFAILEDREQUEST']._serialized_end=85649
-  _globals['_CHANNELOPENFAILEDNOTIFICATION']._serialized_start=85651
-  _globals['_CHANNELOPENFAILEDNOTIFICATION']._serialized_end=85702
-  _globals['_STREAMCHANNELOPENEDREQUEST']._serialized_start=85704
-  _globals['_STREAMCHANNELOPENEDREQUEST']._serialized_end=85732
-  _globals['_CHANNELOPENEDNOTIFICATION']._serialized_start=85734
-  _globals['_CHANNELOPENEDNOTIFICATION']._serialized_end=85853
-  _globals['_STREAMCONNECTREQUEST']._serialized_start=85855
-  _globals['_STREAMCONNECTREQUEST']._serialized_end=85877
-  _globals['_PEERCONNECTNOTIFICATION']._serialized_start=85880
-  _globals['_PEERCONNECTNOTIFICATION']._serialized_end=86070
-  _globals['_PEERCONNECTNOTIFICATION_PEERCONNECTDIRECTION']._serialized_start=86031
-  _globals['_PEERCONNECTNOTIFICATION_PEERCONNECTDIRECTION']._serialized_end=86070
-  _globals['_PEERCONNECTADDRESS']._serialized_start=86073
-  _globals['_PEERCONNECTADDRESS']._serialized_end=86340
-  _globals['_PEERCONNECTADDRESS_PEERCONNECTADDRESSTYPE']._serialized_start=86224
-  _globals['_PEERCONNECTADDRESS_PEERCONNECTADDRESSTYPE']._serialized_end=86308
-  _globals['_STREAMCUSTOMMSGREQUEST']._serialized_start=86342
-  _globals['_STREAMCUSTOMMSGREQUEST']._serialized_end=86366
-  _globals['_CUSTOMMSGNOTIFICATION']._serialized_start=86368
-  _globals['_CUSTOMMSGNOTIFICATION']._serialized_end=86425
-  _globals['_NODE']._serialized_start=86428
-  _globals['_NODE']._serialized_end=94567
+  _globals['_GETEMERGENCYRECOVERDATAREQUEST']._serialized_start=12193
+  _globals['_GETEMERGENCYRECOVERDATAREQUEST']._serialized_end=12225
+  _globals['_GETEMERGENCYRECOVERDATARESPONSE']._serialized_start=12227
+  _globals['_GETEMERGENCYRECOVERDATARESPONSE']._serialized_end=12278
+  _globals['_EXPOSESECRETREQUEST']._serialized_start=12280
+  _globals['_EXPOSESECRETREQUEST']._serialized_end=12361
+  _globals['_EXPOSESECRETRESPONSE']._serialized_start=12363
+  _globals['_EXPOSESECRETRESPONSE']._serialized_end=12422
+  _globals['_RECOVERREQUEST']._serialized_start=12424
+  _globals['_RECOVERREQUEST']._serialized_end=12459
+  _globals['_RECOVERRESPONSE']._serialized_start=12462
+  _globals['_RECOVERRESPONSE']._serialized_end=12598
+  _globals['_RECOVERRESPONSE_RECOVERRESULT']._serialized_start=12538
+  _globals['_RECOVERRESPONSE_RECOVERRESULT']._serialized_end=12587
+  _globals['_RECOVERCHANNELREQUEST']._serialized_start=12600
+  _globals['_RECOVERCHANNELREQUEST']._serialized_end=12636
+  _globals['_RECOVERCHANNELRESPONSE']._serialized_start=12638
+  _globals['_RECOVERCHANNELRESPONSE']._serialized_end=12677
+  _globals['_INVOICEREQUEST']._serialized_start=12680
+  _globals['_INVOICEREQUEST']._serialized_end=12961
+  _globals['_INVOICERESPONSE']._serialized_start=12964
+  _globals['_INVOICERESPONSE']._serialized_end=13369
+  _globals['_INVOICEREQUESTREQUEST']._serialized_start=13372
+  _globals['_INVOICEREQUESTREQUEST']._serialized_end=13597
+  _globals['_INVOICEREQUESTRESPONSE']._serialized_start=13600
+  _globals['_INVOICEREQUESTRESPONSE']._serialized_end=13739
+  _globals['_DISABLEINVOICEREQUESTREQUEST']._serialized_start=13741
+  _globals['_DISABLEINVOICEREQUESTREQUEST']._serialized_end=13790
+  _globals['_DISABLEINVOICEREQUESTRESPONSE']._serialized_start=13793
+  _globals['_DISABLEINVOICEREQUESTRESPONSE']._serialized_end=13939
+  _globals['_LISTINVOICEREQUESTSREQUEST']._serialized_start=13941
+  _globals['_LISTINVOICEREQUESTSREQUEST']._serialized_end=14049
+  _globals['_LISTINVOICEREQUESTSRESPONSE']._serialized_start=14051
+  _globals['_LISTINVOICEREQUESTSRESPONSE']._serialized_end=14146
+  _globals['_LISTINVOICEREQUESTSINVOICEREQUESTS']._serialized_start=14149
+  _globals['_LISTINVOICEREQUESTSINVOICEREQUESTS']._serialized_end=14300
+  _globals['_LISTDATASTOREREQUEST']._serialized_start=14302
+  _globals['_LISTDATASTOREREQUEST']._serialized_end=14337
+  _globals['_LISTDATASTORERESPONSE']._serialized_start=14339
+  _globals['_LISTDATASTORERESPONSE']._serialized_end=14410
+  _globals['_LISTDATASTOREDATASTORE']._serialized_start=14413
+  _globals['_LISTDATASTOREDATASTORE']._serialized_end=14548
+  _globals['_LISTINVOICESREQUEST']._serialized_start=14551
+  _globals['_LISTINVOICESREQUEST']._serialized_end=14901
+  _globals['_LISTINVOICESREQUEST_LISTINVOICESINDEX']._serialized_start=14772
+  _globals['_LISTINVOICESREQUEST_LISTINVOICESINDEX']._serialized_end=14817
+  _globals['_LISTINVOICESRESPONSE']._serialized_start=14903
+  _globals['_LISTINVOICESRESPONSE']._serialized_end=14970
+  _globals['_LISTINVOICESINVOICES']._serialized_start=14973
+  _globals['_LISTINVOICESINVOICES']._serialized_end=15825
+  _globals['_LISTINVOICESINVOICES_LISTINVOICESINVOICESSTATUS']._serialized_start=15541
+  _globals['_LISTINVOICESINVOICES_LISTINVOICESINVOICESSTATUS']._serialized_end=15604
+  _globals['_LISTINVOICESINVOICESPAID_OUTPOINT']._serialized_start=15827
+  _globals['_LISTINVOICESINVOICESPAID_OUTPOINT']._serialized_end=15892
+  _globals['_SENDONIONREQUEST']._serialized_start=15895
+  _globals['_SENDONIONREQUEST']._serialized_end=16331
+  _globals['_SENDONIONRESPONSE']._serialized_start=16334
+  _globals['_SENDONIONRESPONSE']._serialized_end=16949
+  _globals['_SENDONIONRESPONSE_SENDONIONSTATUS']._serialized_start=16761
+  _globals['_SENDONIONRESPONSE_SENDONIONSTATUS']._serialized_end=16805
+  _globals['_SENDONIONFIRST_HOP']._serialized_start=16951
+  _globals['_SENDONIONFIRST_HOP']._serialized_end=17032
+  _globals['_LISTSENDPAYSREQUEST']._serialized_start=17035
+  _globals['_LISTSENDPAYSREQUEST']._serialized_end=17451
+  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSSTATUS']._serialized_start=17276
+  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSSTATUS']._serialized_end=17335
+  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSINDEX']._serialized_start=17337
+  _globals['_LISTSENDPAYSREQUEST_LISTSENDPAYSINDEX']._serialized_end=17382
+  _globals['_LISTSENDPAYSRESPONSE']._serialized_start=17453
+  _globals['_LISTSENDPAYSRESPONSE']._serialized_end=17520
+  _globals['_LISTSENDPAYSPAYMENTS']._serialized_start=17523
+  _globals['_LISTSENDPAYSPAYMENTS']._serialized_end=18287
+  _globals['_LISTSENDPAYSPAYMENTS_LISTSENDPAYSPAYMENTSSTATUS']._serialized_start=18040
+  _globals['_LISTSENDPAYSPAYMENTS_LISTSENDPAYSPAYMENTSSTATUS']._serialized_end=18107
+  _globals['_LISTTRANSACTIONSREQUEST']._serialized_start=18289
+  _globals['_LISTTRANSACTIONSREQUEST']._serialized_end=18314
+  _globals['_LISTTRANSACTIONSRESPONSE']._serialized_start=18316
+  _globals['_LISTTRANSACTIONSRESPONSE']._serialized_end=18399
+  _globals['_LISTTRANSACTIONSTRANSACTIONS']._serialized_start=18402
+  _globals['_LISTTRANSACTIONSTRANSACTIONS']._serialized_end=18650
+  _globals['_LISTTRANSACTIONSTRANSACTIONSINPUTS']._serialized_start=18652
+  _globals['_LISTTRANSACTIONSTRANSACTIONSINPUTS']._serialized_end=18735
+  _globals['_LISTTRANSACTIONSTRANSACTIONSOUTPUTS']._serialized_start=18737
+  _globals['_LISTTRANSACTIONSTRANSACTIONSOUTPUTS']._serialized_end=18845
+  _globals['_MAKESECRETREQUEST']._serialized_start=18847
+  _globals['_MAKESECRETREQUEST']._serialized_end=18924
+  _globals['_MAKESECRETRESPONSE']._serialized_start=18926
+  _globals['_MAKESECRETRESPONSE']._serialized_end=18962
+  _globals['_PAYREQUEST']._serialized_start=18965
+  _globals['_PAYREQUEST']._serialized_end=19496
+  _globals['_PAYRESPONSE']._serialized_start=19499
+  _globals['_PAYRESPONSE']._serialized_end=19878
+  _globals['_PAYRESPONSE_PAYSTATUS']._serialized_start=19781
+  _globals['_PAYRESPONSE_PAYSTATUS']._serialized_end=19831
+  _globals['_LISTNODESREQUEST']._serialized_start=19880
+  _globals['_LISTNODESREQUEST']._serialized_end=19922
+  _globals['_LISTNODESRESPONSE']._serialized_start=19924
+  _globals['_LISTNODESRESPONSE']._serialized_end=19979
+  _globals['_LISTNODESNODES']._serialized_start=19982
+  _globals['_LISTNODESNODES']._serialized_end=20296
+  _globals['_LISTNODESNODESOPTION_WILL_FUND']._serialized_start=20299
+  _globals['_LISTNODESNODESOPTION_WILL_FUND']._serialized_end=20543
+  _globals['_LISTNODESNODESADDRESSES']._serialized_start=20546
+  _globals['_LISTNODESNODESADDRESSES']._serialized_end=20778
+  _globals['_LISTNODESNODESADDRESSES_LISTNODESNODESADDRESSESTYPE']._serialized_start=20686
+  _globals['_LISTNODESNODESADDRESSES_LISTNODESNODESADDRESSESTYPE']._serialized_end=20766
+  _globals['_WAITANYINVOICEREQUEST']._serialized_start=20780
+  _globals['_WAITANYINVOICEREQUEST']._serialized_end=20883
+  _globals['_WAITANYINVOICERESPONSE']._serialized_start=20886
+  _globals['_WAITANYINVOICERESPONSE']._serialized_end=21610
+  _globals['_WAITANYINVOICERESPONSE_WAITANYINVOICESTATUS']._serialized_start=21385
+  _globals['_WAITANYINVOICERESPONSE_WAITANYINVOICESTATUS']._serialized_end=21430
+  _globals['_WAITANYINVOICEPAID_OUTPOINT']._serialized_start=21612
+  _globals['_WAITANYINVOICEPAID_OUTPOINT']._serialized_end=21671
+  _globals['_WAITINVOICEREQUEST']._serialized_start=21673
+  _globals['_WAITINVOICEREQUEST']._serialized_end=21708
+  _globals['_WAITINVOICERESPONSE']._serialized_start=21711
+  _globals['_WAITINVOICERESPONSE']._serialized_end=22420
+  _globals['_WAITINVOICERESPONSE_WAITINVOICESTATUS']._serialized_start=22198
+  _globals['_WAITINVOICERESPONSE_WAITINVOICESTATUS']._serialized_end=22240
+  _globals['_WAITINVOICEPAID_OUTPOINT']._serialized_start=22422
+  _globals['_WAITINVOICEPAID_OUTPOINT']._serialized_end=22478
+  _globals['_WAITSENDPAYREQUEST']._serialized_start=22481
+  _globals['_WAITSENDPAYREQUEST']._serialized_end=22623
+  _globals['_WAITSENDPAYRESPONSE']._serialized_start=22626
+  _globals['_WAITSENDPAYRESPONSE']._serialized_end=23280
+  _globals['_WAITSENDPAYRESPONSE_WAITSENDPAYSTATUS']._serialized_start=23086
+  _globals['_WAITSENDPAYRESPONSE_WAITSENDPAYSTATUS']._serialized_end=23119
+  _globals['_NEWADDRREQUEST']._serialized_start=23283
+  _globals['_NEWADDRREQUEST']._serialized_end=23434
+  _globals['_NEWADDRREQUEST_NEWADDRADDRESSTYPE']._serialized_start=23367
+  _globals['_NEWADDRREQUEST_NEWADDRADDRESSTYPE']._serialized_end=23418
+  _globals['_NEWADDRRESPONSE']._serialized_start=23436
+  _globals['_NEWADDRRESPONSE']._serialized_end=23513
+  _globals['_WITHDRAWREQUEST']._serialized_start=23516
+  _globals['_WITHDRAWREQUEST']._serialized_end=23701
+  _globals['_WITHDRAWRESPONSE']._serialized_start=23703
+  _globals['_WITHDRAWRESPONSE']._serialized_end=23761
+  _globals['_KEYSENDREQUEST']._serialized_start=23764
+  _globals['_KEYSENDREQUEST']._serialized_end=24195
+  _globals['_KEYSENDRESPONSE']._serialized_start=24198
+  _globals['_KEYSENDRESPONSE']._serialized_end=24568
+  _globals['_KEYSENDRESPONSE_KEYSENDSTATUS']._serialized_start=24492
+  _globals['_KEYSENDRESPONSE_KEYSENDSTATUS']._serialized_end=24521
+  _globals['_FUNDPSBTREQUEST']._serialized_start=24571
+  _globals['_FUNDPSBTREQUEST']._serialized_end=24991
+  _globals['_FUNDPSBTRESPONSE']._serialized_start=24994
+  _globals['_FUNDPSBTRESPONSE']._serialized_end=25211
+  _globals['_FUNDPSBTRESERVATIONS']._serialized_start=25213
+  _globals['_FUNDPSBTRESERVATIONS']._serialized_end=25330
+  _globals['_SENDPSBTREQUEST']._serialized_start=25332
+  _globals['_SENDPSBTREQUEST']._serialized_end=25397
+  _globals['_SENDPSBTRESPONSE']._serialized_start=25399
+  _globals['_SENDPSBTRESPONSE']._serialized_end=25443
+  _globals['_SIGNPSBTREQUEST']._serialized_start=25445
+  _globals['_SIGNPSBTREQUEST']._serialized_end=25494
+  _globals['_SIGNPSBTRESPONSE']._serialized_start=25496
+  _globals['_SIGNPSBTRESPONSE']._serialized_end=25535
+  _globals['_UTXOPSBTREQUEST']._serialized_start=25538
+  _globals['_UTXOPSBTREQUEST']._serialized_end=25954
+  _globals['_UTXOPSBTRESPONSE']._serialized_start=25957
+  _globals['_UTXOPSBTRESPONSE']._serialized_end=26174
+  _globals['_UTXOPSBTRESERVATIONS']._serialized_start=26176
+  _globals['_UTXOPSBTRESERVATIONS']._serialized_end=26293
+  _globals['_TXDISCARDREQUEST']._serialized_start=26295
+  _globals['_TXDISCARDREQUEST']._serialized_end=26327
+  _globals['_TXDISCARDRESPONSE']._serialized_start=26329
+  _globals['_TXDISCARDRESPONSE']._serialized_end=26383
+  _globals['_TXPREPAREREQUEST']._serialized_start=26386
+  _globals['_TXPREPAREREQUEST']._serialized_end=26550
+  _globals['_TXPREPARERESPONSE']._serialized_start=26552
+  _globals['_TXPREPARERESPONSE']._serialized_end=26620
+  _globals['_TXSENDREQUEST']._serialized_start=26622
+  _globals['_TXSENDREQUEST']._serialized_end=26651
+  _globals['_TXSENDRESPONSE']._serialized_start=26653
+  _globals['_TXSENDRESPONSE']._serialized_end=26709
+  _globals['_LISTPEERCHANNELSREQUEST']._serialized_start=26711
+  _globals['_LISTPEERCHANNELSREQUEST']._serialized_end=26760
+  _globals['_LISTPEERCHANNELSRESPONSE']._serialized_start=26762
+  _globals['_LISTPEERCHANNELSRESPONSE']._serialized_end=26837
+  _globals['_LISTPEERCHANNELSCHANNELS']._serialized_start=26840
+  _globals['_LISTPEERCHANNELSCHANNELS']._serialized_end=30383
+  _globals['_LISTPEERCHANNELSCHANNELS_LISTPEERCHANNELSCHANNELSSTATE']._serialized_start=29029
+  _globals['_LISTPEERCHANNELSCHANNELS_LISTPEERCHANNELSCHANNELSSTATE']._serialized_end=29413
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATES']._serialized_start=30386
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATES']._serialized_end=30553
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATESLOCAL']._serialized_start=30556
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATESLOCAL']._serialized_end=30774
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATESREMOTE']._serialized_start=30777
+  _globals['_LISTPEERCHANNELSCHANNELSUPDATESREMOTE']._serialized_end=30996
+  _globals['_LISTPEERCHANNELSCHANNELSFEERATE']._serialized_start=30998
+  _globals['_LISTPEERCHANNELSCHANNELSFEERATE']._serialized_end=31061
+  _globals['_LISTPEERCHANNELSCHANNELSINFLIGHT']._serialized_start=31064
+  _globals['_LISTPEERCHANNELSCHANNELSINFLIGHT']._serialized_end=31331
+  _globals['_LISTPEERCHANNELSCHANNELSFUNDING']._serialized_start=31334
+  _globals['_LISTPEERCHANNELSCHANNELSFUNDING']._serialized_end=31619
+  _globals['_LISTPEERCHANNELSCHANNELSALIAS']._serialized_start=31621
+  _globals['_LISTPEERCHANNELSCHANNELSALIAS']._serialized_end=31714
+  _globals['_LISTPEERCHANNELSCHANNELSHTLCS']._serialized_start=31717
+  _globals['_LISTPEERCHANNELSCHANNELSHTLCS']._serialized_end=32094
+  _globals['_LISTPEERCHANNELSCHANNELSHTLCS_LISTPEERCHANNELSCHANNELSHTLCSDIRECTION']._serialized_start=32008
+  _globals['_LISTPEERCHANNELSCHANNELSHTLCS_LISTPEERCHANNELSCHANNELSHTLCSDIRECTION']._serialized_end=32065
+  _globals['_LISTCLOSEDCHANNELSREQUEST']._serialized_start=32096
+  _globals['_LISTCLOSEDCHANNELSREQUEST']._serialized_end=32147
+  _globals['_LISTCLOSEDCHANNELSRESPONSE']._serialized_start=32149
+  _globals['_LISTCLOSEDCHANNELSRESPONSE']._serialized_end=32240
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS']._serialized_start=32243
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS']._serialized_end=33509
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS_LISTCLOSEDCHANNELSCLOSEDCHANNELSCLOSE_CAUSE']._serialized_start=33180
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELS_LISTCLOSEDCHANNELSCLOSEDCHANNELSCLOSE_CAUSE']._serialized_end=33298
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELSALIAS']._serialized_start=33511
+  _globals['_LISTCLOSEDCHANNELSCLOSEDCHANNELSALIAS']._serialized_end=33612
+  _globals['_DECODEPAYREQUEST']._serialized_start=33614
+  _globals['_DECODEPAYREQUEST']._serialized_end=33690
+  _globals['_DECODEPAYRESPONSE']._serialized_start=33693
+  _globals['_DECODEPAYRESPONSE']._serialized_end=34276
+  _globals['_DECODEPAYFALLBACKS']._serialized_start=34279
+  _globals['_DECODEPAYFALLBACKS']._serialized_end=34487
+  _globals['_DECODEPAYFALLBACKS_DECODEPAYFALLBACKSTYPE']._serialized_start=34400
+  _globals['_DECODEPAYFALLBACKS_DECODEPAYFALLBACKSTYPE']._serialized_end=34478
+  _globals['_DECODEPAYEXTRA']._serialized_start=34489
+  _globals['_DECODEPAYEXTRA']._serialized_end=34532
+  _globals['_DECODEREQUEST']._serialized_start=34534
+  _globals['_DECODEREQUEST']._serialized_end=34565
+  _globals['_DECODERESPONSE']._serialized_start=34568
+  _globals['_DECODERESPONSE']._serialized_end=39412
+  _globals['_DECODERESPONSE_DECODETYPE']._serialized_start=37507
+  _globals['_DECODERESPONSE_DECODETYPE']._serialized_end=37638
+  _globals['_DECODEOFFER_PATHS']._serialized_start=39415
+  _globals['_DECODEOFFER_PATHS']._serialized_end=39652
+  _globals['_DECODEOFFER_RECURRENCEPAYWINDOW']._serialized_start=39655
+  _globals['_DECODEOFFER_RECURRENCEPAYWINDOW']._serialized_end=39793
+  _globals['_DECODEINVREQ_PATHS']._serialized_start=39796
+  _globals['_DECODEINVREQ_PATHS']._serialized_end=40077
+  _globals['_DECODEINVREQ_PATHSPATH']._serialized_start=40079
+  _globals['_DECODEINVREQ_PATHSPATH']._serialized_end=40162
+  _globals['_DECODEINVOICE_PATHSPATH']._serialized_start=40164
+  _globals['_DECODEINVOICE_PATHSPATH']._serialized_end=40248
+  _globals['_DECODEINVOICE_FALLBACKS']._serialized_start=40250
+  _globals['_DECODEINVOICE_FALLBACKS']._serialized_end=40339
+  _globals['_DECODEFALLBACKS']._serialized_start=40342
+  _globals['_DECODEFALLBACKS']._serialized_end=40640
+  _globals['_DECODEFALLBACKS_DECODEFALLBACKSTYPE']._serialized_start=40510
+  _globals['_DECODEFALLBACKS_DECODEFALLBACKSTYPE']._serialized_end=40585
+  _globals['_DECODEEXTRA']._serialized_start=40642
+  _globals['_DECODEEXTRA']._serialized_end=40682
+  _globals['_DECODERESTRICTIONS']._serialized_start=40684
+  _globals['_DECODERESTRICTIONS']._serialized_end=40743
+  _globals['_DELPAYREQUEST']._serialized_start=40746
+  _globals['_DELPAYREQUEST']._serialized_end=40940
+  _globals['_DELPAYREQUEST_DELPAYSTATUS']._serialized_start=40877
+  _globals['_DELPAYREQUEST_DELPAYSTATUS']._serialized_end=40917
+  _globals['_DELPAYRESPONSE']._serialized_start=40942
+  _globals['_DELPAYRESPONSE']._serialized_end=40997
+  _globals['_DELPAYPAYMENTS']._serialized_start=41000
+  _globals['_DELPAYPAYMENTS']._serialized_end=41715
+  _globals['_DELPAYPAYMENTS_DELPAYPAYMENTSSTATUS']._serialized_start=41478
+  _globals['_DELPAYPAYMENTS_DELPAYPAYMENTSSTATUS']._serialized_end=41539
+  _globals['_DELFORWARDREQUEST']._serialized_start=41718
+  _globals['_DELFORWARDREQUEST']._serialized_end=41897
+  _globals['_DELFORWARDREQUEST_DELFORWARDSTATUS']._serialized_start=41836
+  _globals['_DELFORWARDREQUEST_DELFORWARDSTATUS']._serialized_end=41897
+  _globals['_DELFORWARDRESPONSE']._serialized_start=41899
+  _globals['_DELFORWARDRESPONSE']._serialized_end=41919
+  _globals['_DISABLEOFFERREQUEST']._serialized_start=41921
+  _globals['_DISABLEOFFERREQUEST']._serialized_end=41960
+  _globals['_DISABLEOFFERRESPONSE']._serialized_start=41963
+  _globals['_DISABLEOFFERRESPONSE']._serialized_end=42099
+  _globals['_ENABLEOFFERREQUEST']._serialized_start=42101
+  _globals['_ENABLEOFFERREQUEST']._serialized_end=42139
+  _globals['_ENABLEOFFERRESPONSE']._serialized_start=42142
+  _globals['_ENABLEOFFERRESPONSE']._serialized_end=42277
+  _globals['_DISCONNECTREQUEST']._serialized_start=42279
+  _globals['_DISCONNECTREQUEST']._serialized_end=42340
+  _globals['_DISCONNECTRESPONSE']._serialized_start=42342
+  _globals['_DISCONNECTRESPONSE']._serialized_end=42362
+  _globals['_FEERATESREQUEST']._serialized_start=42364
+  _globals['_FEERATESREQUEST']._serialized_end=42471
+  _globals['_FEERATESREQUEST_FEERATESSTYLE']._serialized_start=42434
+  _globals['_FEERATESREQUEST_FEERATESSTYLE']._serialized_end=42471
+  _globals['_FEERATESRESPONSE']._serialized_start=42474
+  _globals['_FEERATESRESPONSE']._serialized_end=42758
+  _globals['_FEERATESPERKB']._serialized_start=42761
+  _globals['_FEERATESPERKB']._serialized_end=43228
+  _globals['_FEERATESPERKBESTIMATES']._serialized_start=43230
+  _globals['_FEERATESPERKBESTIMATES']._serialized_end=43317
+  _globals['_FEERATESPERKW']._serialized_start=43320
+  _globals['_FEERATESPERKW']._serialized_end=43787
+  _globals['_FEERATESPERKWESTIMATES']._serialized_start=43789
+  _globals['_FEERATESPERKWESTIMATES']._serialized_end=43876
+  _globals['_FEERATESONCHAIN_FEE_ESTIMATES']._serialized_start=43879
+  _globals['_FEERATESONCHAIN_FEE_ESTIMATES']._serialized_end=44162
+  _globals['_FETCHINVOICEREQUEST']._serialized_start=44165
+  _globals['_FETCHINVOICEREQUEST']._serialized_end=44574
+  _globals['_FETCHINVOICERESPONSE']._serialized_start=44577
+  _globals['_FETCHINVOICERESPONSE']._serialized_end=44731
+  _globals['_FETCHINVOICECHANGES']._serialized_start=44734
+  _globals['_FETCHINVOICECHANGES']._serialized_end=44992
+  _globals['_FETCHINVOICENEXT_PERIOD']._serialized_start=44994
+  _globals['_FETCHINVOICENEXT_PERIOD']._serialized_end=45120
+  _globals['_FUNDCHANNEL_CANCELREQUEST']._serialized_start=45122
+  _globals['_FUNDCHANNEL_CANCELREQUEST']._serialized_end=45161
+  _globals['_FUNDCHANNEL_CANCELRESPONSE']._serialized_start=45163
+  _globals['_FUNDCHANNEL_CANCELRESPONSE']._serialized_end=45210
+  _globals['_FUNDCHANNEL_COMPLETEREQUEST']._serialized_start=45212
+  _globals['_FUNDCHANNEL_COMPLETEREQUEST']._serialized_end=45267
+  _globals['_FUNDCHANNEL_COMPLETERESPONSE']._serialized_start=45269
+  _globals['_FUNDCHANNEL_COMPLETERESPONSE']._serialized_end=45348
+  _globals['_FUNDCHANNELREQUEST']._serialized_start=45351
+  _globals['_FUNDCHANNELREQUEST']._serialized_end=45858
+  _globals['_FUNDCHANNELRESPONSE']._serialized_start=45861
+  _globals['_FUNDCHANNELRESPONSE']._serialized_end=46090
+  _globals['_FUNDCHANNELCHANNEL_TYPE']._serialized_start=46092
+  _globals['_FUNDCHANNELCHANNEL_TYPE']._serialized_end=46168
+  _globals['_FUNDCHANNEL_STARTREQUEST']._serialized_start=46171
+  _globals['_FUNDCHANNEL_STARTREQUEST']._serialized_end=46514
+  _globals['_FUNDCHANNEL_STARTRESPONSE']._serialized_start=46517
+  _globals['_FUNDCHANNEL_STARTRESPONSE']._serialized_end=46766
+  _globals['_FUNDCHANNEL_STARTCHANNEL_TYPE']._serialized_start=46768
+  _globals['_FUNDCHANNEL_STARTCHANNEL_TYPE']._serialized_end=46850
+  _globals['_GETLOGREQUEST']._serialized_start=46853
+  _globals['_GETLOGREQUEST']._serialized_end=47010
+  _globals['_GETLOGREQUEST_GETLOGLEVEL']._serialized_start=46922
+  _globals['_GETLOGREQUEST_GETLOGLEVEL']._serialized_end=47000
+  _globals['_GETLOGRESPONSE']._serialized_start=47012
+  _globals['_GETLOGRESPONSE']._serialized_end=47116
+  _globals['_GETLOGLOG']._serialized_start=47119
+  _globals['_GETLOGLOG']._serialized_end=47479
+  _globals['_GETLOGLOG_GETLOGLOGTYPE']._serialized_start=47306
+  _globals['_GETLOGLOG_GETLOGLOGTYPE']._serialized_end=47414
+  _globals['_FUNDERUPDATEREQUEST']._serialized_start=47482
+  _globals['_FUNDERUPDATEREQUEST']._serialized_end=48595
+  _globals['_FUNDERUPDATEREQUEST_FUNDERUPDATEPOLICY']._serialized_start=48176
+  _globals['_FUNDERUPDATEREQUEST_FUNDERUPDATEPOLICY']._serialized_end=48233
+  _globals['_FUNDERUPDATERESPONSE']._serialized_start=48598
+  _globals['_FUNDERUPDATERESPONSE']._serialized_end=49461
+  _globals['_FUNDERUPDATERESPONSE_FUNDERUPDATEPOLICY']._serialized_start=48176
+  _globals['_FUNDERUPDATERESPONSE_FUNDERUPDATEPOLICY']._serialized_end=48233
+  _globals['_GETROUTEREQUEST']._serialized_start=49464
+  _globals['_GETROUTEREQUEST']._serialized_end=49700
+  _globals['_GETROUTERESPONSE']._serialized_start=49702
+  _globals['_GETROUTERESPONSE']._serialized_end=49755
+  _globals['_GETROUTEROUTE']._serialized_start=49758
+  _globals['_GETROUTEROUTE']._serialized_end=49955
+  _globals['_GETROUTEROUTE_GETROUTEROUTESTYLE']._serialized_start=49926
+  _globals['_GETROUTEROUTE_GETROUTEROUTESTYLE']._serialized_end=49955
+  _globals['_LISTADDRESSESREQUEST']._serialized_start=49957
+  _globals['_LISTADDRESSESREQUEST']._serialized_end=50073
+  _globals['_LISTADDRESSESRESPONSE']._serialized_start=50075
+  _globals['_LISTADDRESSESRESPONSE']._serialized_end=50146
+  _globals['_LISTADDRESSESADDRESSES']._serialized_start=50148
+  _globals['_LISTADDRESSESADDRESSES']._serialized_end=50248
+  _globals['_LISTFORWARDSREQUEST']._serialized_start=50251
+  _globals['_LISTFORWARDSREQUEST']._serialized_end=50690
+  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSSTATUS']._serialized_start=50495
+  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSSTATUS']._serialized_end=50571
+  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSINDEX']._serialized_start=50573
+  _globals['_LISTFORWARDSREQUEST_LISTFORWARDSINDEX']._serialized_end=50618
+  _globals['_LISTFORWARDSRESPONSE']._serialized_start=50692
+  _globals['_LISTFORWARDSRESPONSE']._serialized_end=50759
+  _globals['_LISTFORWARDSFORWARDS']._serialized_start=50762
+  _globals['_LISTFORWARDSFORWARDS']._serialized_end=51582
+  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTATUS']._serialized_start=51283
+  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTATUS']._serialized_end=51367
+  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTYLE']._serialized_start=51369
+  _globals['_LISTFORWARDSFORWARDS_LISTFORWARDSFORWARDSSTYLE']._serialized_end=51417
+  _globals['_LISTOFFERSREQUEST']._serialized_start=51584
+  _globals['_LISTOFFERSREQUEST']._serialized_end=51681
+  _globals['_LISTOFFERSRESPONSE']._serialized_start=51683
+  _globals['_LISTOFFERSRESPONSE']._serialized_end=51742
+  _globals['_LISTOFFERSOFFERS']._serialized_start=51745
+  _globals['_LISTOFFERSOFFERS']._serialized_end=51877
+  _globals['_LISTPAYSREQUEST']._serialized_start=51880
+  _globals['_LISTPAYSREQUEST']._serialized_end=52268
+  _globals['_LISTPAYSREQUEST_LISTPAYSSTATUS']._serialized_start=52101
+  _globals['_LISTPAYSREQUEST_LISTPAYSSTATUS']._serialized_end=52156
+  _globals['_LISTPAYSREQUEST_LISTPAYSINDEX']._serialized_start=52158
+  _globals['_LISTPAYSREQUEST_LISTPAYSINDEX']._serialized_end=52199
+  _globals['_LISTPAYSRESPONSE']._serialized_start=52270
+  _globals['_LISTPAYSRESPONSE']._serialized_end=52321
+  _globals['_LISTPAYSPAYS']._serialized_start=52324
+  _globals['_LISTPAYSPAYS']._serialized_end=53055
+  _globals['_LISTPAYSPAYS_LISTPAYSPAYSSTATUS']._serialized_start=52794
+  _globals['_LISTPAYSPAYS_LISTPAYSPAYSSTATUS']._serialized_end=52853
+  _globals['_LISTHTLCSREQUEST']._serialized_start=53057
+  _globals['_LISTHTLCSREQUEST']._serialized_end=53099
+  _globals['_LISTHTLCSRESPONSE']._serialized_start=53101
+  _globals['_LISTHTLCSRESPONSE']._serialized_end=53156
+  _globals['_LISTHTLCSHTLCS']._serialized_start=53159
+  _globals['_LISTHTLCSHTLCS']._serialized_end=53424
+  _globals['_LISTHTLCSHTLCS_LISTHTLCSHTLCSDIRECTION']._serialized_start=53382
+  _globals['_LISTHTLCSHTLCS_LISTHTLCSHTLCSDIRECTION']._serialized_end=53424
+  _globals['_MULTIFUNDCHANNELREQUEST']._serialized_start=53427
+  _globals['_MULTIFUNDCHANNELREQUEST']._serialized_end=53733
+  _globals['_MULTIFUNDCHANNELRESPONSE']._serialized_start=53736
+  _globals['_MULTIFUNDCHANNELRESPONSE']._serialized_end=53888
+  _globals['_MULTIFUNDCHANNELDESTINATIONS']._serialized_start=53891
+  _globals['_MULTIFUNDCHANNELDESTINATIONS']._serialized_end=54274
+  _globals['_MULTIFUNDCHANNELCHANNEL_IDS']._serialized_start=54277
+  _globals['_MULTIFUNDCHANNELCHANNEL_IDS']._serialized_end=54480
+  _globals['_MULTIFUNDCHANNELCHANNEL_IDSCHANNEL_TYPE']._serialized_start=54482
+  _globals['_MULTIFUNDCHANNELCHANNEL_IDSCHANNEL_TYPE']._serialized_end=54574
+  _globals['_MULTIFUNDCHANNELFAILED']._serialized_start=54577
+  _globals['_MULTIFUNDCHANNELFAILED']._serialized_end=54852
+  _globals['_MULTIFUNDCHANNELFAILED_MULTIFUNDCHANNELFAILEDMETHOD']._serialized_start=54738
+  _globals['_MULTIFUNDCHANNELFAILED_MULTIFUNDCHANNELFAILEDMETHOD']._serialized_end=54852
+  _globals['_MULTIFUNDCHANNELFAILEDERROR']._serialized_start=54854
+  _globals['_MULTIFUNDCHANNELFAILEDERROR']._serialized_end=54914
+  _globals['_MULTIWITHDRAWREQUEST']._serialized_start=54917
+  _globals['_MULTIWITHDRAWREQUEST']._serialized_end=55085
+  _globals['_MULTIWITHDRAWRESPONSE']._serialized_start=55087
+  _globals['_MULTIWITHDRAWRESPONSE']._serialized_end=55136
+  _globals['_OFFERREQUEST']._serialized_start=55139
+  _globals['_OFFERREQUEST']._serialized_end=55683
+  _globals['_OFFERRESPONSE']._serialized_start=55686
+  _globals['_OFFERRESPONSE']._serialized_end=55832
+  _globals['_OPENCHANNEL_ABORTREQUEST']._serialized_start=55834
+  _globals['_OPENCHANNEL_ABORTREQUEST']._serialized_end=55880
+  _globals['_OPENCHANNEL_ABORTRESPONSE']._serialized_start=55882
+  _globals['_OPENCHANNEL_ABORTRESPONSE']._serialized_end=55971
+  _globals['_OPENCHANNEL_BUMPREQUEST']._serialized_start=55974
+  _globals['_OPENCHANNEL_BUMPREQUEST']._serialized_end=56133
+  _globals['_OPENCHANNEL_BUMPRESPONSE']._serialized_start=56136
+  _globals['_OPENCHANNEL_BUMPRESPONSE']._serialized_end=56398
+  _globals['_OPENCHANNEL_BUMPCHANNEL_TYPE']._serialized_start=56400
+  _globals['_OPENCHANNEL_BUMPCHANNEL_TYPE']._serialized_end=56481
+  _globals['_OPENCHANNEL_INITREQUEST']._serialized_start=56484
+  _globals['_OPENCHANNEL_INITREQUEST']._serialized_end=56900
+  _globals['_OPENCHANNEL_INITRESPONSE']._serialized_start=56903
+  _globals['_OPENCHANNEL_INITRESPONSE']._serialized_end=57165
+  _globals['_OPENCHANNEL_INITCHANNEL_TYPE']._serialized_start=57167
+  _globals['_OPENCHANNEL_INITCHANNEL_TYPE']._serialized_end=57248
+  _globals['_OPENCHANNEL_SIGNEDREQUEST']._serialized_start=57250
+  _globals['_OPENCHANNEL_SIGNEDREQUEST']._serialized_end=57318
+  _globals['_OPENCHANNEL_SIGNEDRESPONSE']._serialized_start=57320
+  _globals['_OPENCHANNEL_SIGNEDRESPONSE']._serialized_end=57394
+  _globals['_OPENCHANNEL_UPDATEREQUEST']._serialized_start=57396
+  _globals['_OPENCHANNEL_UPDATEREQUEST']._serialized_end=57457
+  _globals['_OPENCHANNEL_UPDATERESPONSE']._serialized_start=57460
+  _globals['_OPENCHANNEL_UPDATERESPONSE']._serialized_end=57762
+  _globals['_OPENCHANNEL_UPDATECHANNEL_TYPE']._serialized_start=57764
+  _globals['_OPENCHANNEL_UPDATECHANNEL_TYPE']._serialized_end=57847
+  _globals['_PINGREQUEST']._serialized_start=57849
+  _globals['_PINGREQUEST']._serialized_end=57938
+  _globals['_PINGRESPONSE']._serialized_start=57940
+  _globals['_PINGRESPONSE']._serialized_end=57970
+  _globals['_PLUGINREQUEST']._serialized_start=57973
+  _globals['_PLUGINREQUEST']._serialized_end=58118
+  _globals['_PLUGINRESPONSE']._serialized_start=58120
+  _globals['_PLUGINRESPONSE']._serialized_end=58245
+  _globals['_PLUGINPLUGINS']._serialized_start=58247
+  _globals['_PLUGINPLUGINS']._serialized_end=58309
+  _globals['_RENEPAYSTATUSREQUEST']._serialized_start=58311
+  _globals['_RENEPAYSTATUSREQUEST']._serialized_end=58371
+  _globals['_RENEPAYSTATUSRESPONSE']._serialized_start=58373
+  _globals['_RENEPAYSTATUSRESPONSE']._serialized_end=58444
+  _globals['_RENEPAYSTATUSPAYSTATUS']._serialized_start=58447
+  _globals['_RENEPAYSTATUSPAYSTATUS']._serialized_end=58929
+  _globals['_RENEPAYSTATUSPAYSTATUS_RENEPAYSTATUSPAYSTATUSSTATUS']._serialized_start=58792
+  _globals['_RENEPAYSTATUSPAYSTATUS_RENEPAYSTATUSPAYSTATUSSTATUS']._serialized_end=58861
+  _globals['_RENEPAYREQUEST']._serialized_start=58932
+  _globals['_RENEPAYREQUEST']._serialized_end=59278
+  _globals['_RENEPAYRESPONSE']._serialized_start=59281
+  _globals['_RENEPAYRESPONSE']._serialized_end=59702
+  _globals['_RENEPAYRESPONSE_RENEPAYSTATUS']._serialized_start=59598
+  _globals['_RENEPAYRESPONSE_RENEPAYSTATUS']._serialized_end=59652
+  _globals['_RESERVEINPUTSREQUEST']._serialized_start=59704
+  _globals['_RESERVEINPUTSREQUEST']._serialized_end=59812
+  _globals['_RESERVEINPUTSRESPONSE']._serialized_start=59814
+  _globals['_RESERVEINPUTSRESPONSE']._serialized_end=59891
+  _globals['_RESERVEINPUTSRESERVATIONS']._serialized_start=59893
+  _globals['_RESERVEINPUTSRESERVATIONS']._serialized_end=60015
+  _globals['_SENDCUSTOMMSGREQUEST']._serialized_start=60017
+  _globals['_SENDCUSTOMMSGREQUEST']._serialized_end=60069
+  _globals['_SENDCUSTOMMSGRESPONSE']._serialized_start=60071
+  _globals['_SENDCUSTOMMSGRESPONSE']._serialized_end=60110
+  _globals['_SENDINVOICEREQUEST']._serialized_start=60113
+  _globals['_SENDINVOICEREQUEST']._serialized_end=60289
+  _globals['_SENDINVOICERESPONSE']._serialized_start=60292
+  _globals['_SENDINVOICERESPONSE']._serialized_end=60883
+  _globals['_SENDINVOICERESPONSE_SENDINVOICESTATUS']._serialized_start=60694
+  _globals['_SENDINVOICERESPONSE_SENDINVOICESTATUS']._serialized_end=60748
+  _globals['_SETCHANNELREQUEST']._serialized_start=60886
+  _globals['_SETCHANNELREQUEST']._serialized_end=61184
+  _globals['_SETCHANNELRESPONSE']._serialized_start=61186
+  _globals['_SETCHANNELRESPONSE']._serialized_end=61249
+  _globals['_SETCHANNELCHANNELS']._serialized_start=61252
+  _globals['_SETCHANNELCHANNELS']._serialized_end=61710
+  _globals['_SETCONFIGREQUEST']._serialized_start=61712
+  _globals['_SETCONFIGREQUEST']._serialized_end=61772
+  _globals['_SETCONFIGRESPONSE']._serialized_start=61774
+  _globals['_SETCONFIGRESPONSE']._serialized_end=61831
+  _globals['_SETCONFIGCONFIG']._serialized_start=61834
+  _globals['_SETCONFIGCONFIG']._serialized_end=62127
+  _globals['_SETPSBTVERSIONREQUEST']._serialized_start=62129
+  _globals['_SETPSBTVERSIONREQUEST']._serialized_end=62183
+  _globals['_SETPSBTVERSIONRESPONSE']._serialized_start=62185
+  _globals['_SETPSBTVERSIONRESPONSE']._serialized_end=62223
+  _globals['_SIGNINVOICEREQUEST']._serialized_start=62225
+  _globals['_SIGNINVOICEREQUEST']._serialized_end=62264
+  _globals['_SIGNINVOICERESPONSE']._serialized_start=62266
+  _globals['_SIGNINVOICERESPONSE']._serialized_end=62303
+  _globals['_SIGNMESSAGEREQUEST']._serialized_start=62305
+  _globals['_SIGNMESSAGEREQUEST']._serialized_end=62342
+  _globals['_SIGNMESSAGERESPONSE']._serialized_start=62344
+  _globals['_SIGNMESSAGERESPONSE']._serialized_end=62414
+  _globals['_SPLICE_INITREQUEST']._serialized_start=62417
+  _globals['_SPLICE_INITREQUEST']._serialized_end=62618
+  _globals['_SPLICE_INITRESPONSE']._serialized_start=62620
+  _globals['_SPLICE_INITRESPONSE']._serialized_end=62655
+  _globals['_SPLICE_SIGNEDREQUEST']._serialized_start=62657
+  _globals['_SPLICE_SIGNEDREQUEST']._serialized_end=62753
+  _globals['_SPLICE_SIGNEDRESPONSE']._serialized_start=62755
+  _globals['_SPLICE_SIGNEDRESPONSE']._serialized_end=62850
+  _globals['_SPLICE_UPDATEREQUEST']._serialized_start=62852
+  _globals['_SPLICE_UPDATEREQUEST']._serialized_end=62908
+  _globals['_SPLICE_UPDATERESPONSE']._serialized_start=62910
+  _globals['_SPLICE_UPDATERESPONSE']._serialized_end=63032
+  _globals['_DEVSPLICEREQUEST']._serialized_start=63035
+  _globals['_DEVSPLICEREQUEST']._serialized_end=63233
+  _globals['_DEVSPLICERESPONSE']._serialized_start=63236
+  _globals['_DEVSPLICERESPONSE']._serialized_end=63364
+  _globals['_UNRESERVEINPUTSREQUEST']._serialized_start=63366
+  _globals['_UNRESERVEINPUTSREQUEST']._serialized_end=63438
+  _globals['_UNRESERVEINPUTSRESPONSE']._serialized_start=63440
+  _globals['_UNRESERVEINPUTSRESPONSE']._serialized_end=63521
+  _globals['_UNRESERVEINPUTSRESERVATIONS']._serialized_start=63524
+  _globals['_UNRESERVEINPUTSRESERVATIONS']._serialized_end=63675
+  _globals['_UPGRADEWALLETREQUEST']._serialized_start=63677
+  _globals['_UPGRADEWALLETREQUEST']._serialized_end=63787
+  _globals['_UPGRADEWALLETRESPONSE']._serialized_start=63790
+  _globals['_UPGRADEWALLETRESPONSE']._serialized_end=63939
+  _globals['_WAITBLOCKHEIGHTREQUEST']._serialized_start=63941
+  _globals['_WAITBLOCKHEIGHTREQUEST']._serialized_end=64020
+  _globals['_WAITBLOCKHEIGHTRESPONSE']._serialized_start=64022
+  _globals['_WAITBLOCKHEIGHTRESPONSE']._serialized_end=64068
+  _globals['_WAITREQUEST']._serialized_start=64071
+  _globals['_WAITREQUEST']._serialized_end=64320
+  _globals['_WAITREQUEST_WAITSUBSYSTEM']._serialized_start=64207
+  _globals['_WAITREQUEST_WAITSUBSYSTEM']._serialized_end=64264
+  _globals['_WAITREQUEST_WAITINDEXNAME']._serialized_start=64266
+  _globals['_WAITREQUEST_WAITINDEXNAME']._serialized_end=64320
+  _globals['_WAITRESPONSE']._serialized_start=64323
+  _globals['_WAITRESPONSE']._serialized_end=64602
+  _globals['_WAITRESPONSE_WAITSUBSYSTEM']._serialized_start=64207
+  _globals['_WAITRESPONSE_WAITSUBSYSTEM']._serialized_end=64264
+  _globals['_WAITDETAILS']._serialized_start=64605
+  _globals['_WAITDETAILS']._serialized_end=65241
+  _globals['_WAITDETAILS_WAITDETAILSSTATUS']._serialized_start=64947
+  _globals['_WAITDETAILS_WAITDETAILSSTATUS']._serialized_end=65084
+  _globals['_LISTCONFIGSREQUEST']._serialized_start=65243
+  _globals['_LISTCONFIGSREQUEST']._serialized_end=65295
+  _globals['_LISTCONFIGSRESPONSE']._serialized_start=65298
+  _globals['_LISTCONFIGSRESPONSE']._serialized_end=68917
+  _globals['_LISTCONFIGSCONFIGS']._serialized_start=68920
+  _globals['_LISTCONFIGSCONFIGS']._serialized_end=75018
+  _globals['_LISTCONFIGSCONFIGSCONF']._serialized_start=75021
+  _globals['_LISTCONFIGSCONFIGSCONF']._serialized_end=75183
+  _globals['_LISTCONFIGSCONFIGSCONF_LISTCONFIGSCONFIGSCONFSOURCE']._serialized_start=75140
+  _globals['_LISTCONFIGSCONFIGSCONF_LISTCONFIGSCONFIGSCONFSOURCE']._serialized_end=75183
+  _globals['_LISTCONFIGSCONFIGSDEVELOPER']._serialized_start=75185
+  _globals['_LISTCONFIGSCONFIGSDEVELOPER']._serialized_end=75243
+  _globals['_LISTCONFIGSCONFIGSCLEARPLUGINS']._serialized_start=75245
+  _globals['_LISTCONFIGSCONFIGSCLEARPLUGINS']._serialized_end=75306
+  _globals['_LISTCONFIGSCONFIGSDISABLEMPP']._serialized_start=75308
+  _globals['_LISTCONFIGSCONFIGSDISABLEMPP']._serialized_end=75399
+  _globals['_LISTCONFIGSCONFIGSMAINNET']._serialized_start=75401
+  _globals['_LISTCONFIGSCONFIGSMAINNET']._serialized_end=75457
+  _globals['_LISTCONFIGSCONFIGSREGTEST']._serialized_start=75459
+  _globals['_LISTCONFIGSCONFIGSREGTEST']._serialized_end=75515
+  _globals['_LISTCONFIGSCONFIGSSIGNET']._serialized_start=75517
+  _globals['_LISTCONFIGSCONFIGSSIGNET']._serialized_end=75572
+  _globals['_LISTCONFIGSCONFIGSTESTNET']._serialized_start=75574
+  _globals['_LISTCONFIGSCONFIGSTESTNET']._serialized_end=75630
+  _globals['_LISTCONFIGSCONFIGSIMPORTANTPLUGIN']._serialized_start=75632
+  _globals['_LISTCONFIGSCONFIGSIMPORTANTPLUGIN']._serialized_end=75704
+  _globals['_LISTCONFIGSCONFIGSPLUGIN']._serialized_start=75706
+  _globals['_LISTCONFIGSCONFIGSPLUGIN']._serialized_end=75769
+  _globals['_LISTCONFIGSCONFIGSPLUGINDIR']._serialized_start=75771
+  _globals['_LISTCONFIGSCONFIGSPLUGINDIR']._serialized_end=75837
+  _globals['_LISTCONFIGSCONFIGSLIGHTNINGDIR']._serialized_start=75839
+  _globals['_LISTCONFIGSCONFIGSLIGHTNINGDIR']._serialized_end=75906
+  _globals['_LISTCONFIGSCONFIGSNETWORK']._serialized_start=75908
+  _globals['_LISTCONFIGSCONFIGSNETWORK']._serialized_end=75970
+  _globals['_LISTCONFIGSCONFIGSALLOWDEPRECATEDAPIS']._serialized_start=75972
+  _globals['_LISTCONFIGSCONFIGSALLOWDEPRECATEDAPIS']._serialized_end=76047
+  _globals['_LISTCONFIGSCONFIGSRPCFILE']._serialized_start=76049
+  _globals['_LISTCONFIGSCONFIGSRPCFILE']._serialized_end=76111
+  _globals['_LISTCONFIGSCONFIGSDISABLEPLUGIN']._serialized_start=76113
+  _globals['_LISTCONFIGSCONFIGSDISABLEPLUGIN']._serialized_end=76183
+  _globals['_LISTCONFIGSCONFIGSALWAYSUSEPROXY']._serialized_start=76185
+  _globals['_LISTCONFIGSCONFIGSALWAYSUSEPROXY']._serialized_end=76255
+  _globals['_LISTCONFIGSCONFIGSDAEMON']._serialized_start=76257
+  _globals['_LISTCONFIGSCONFIGSDAEMON']._serialized_end=76312
+  _globals['_LISTCONFIGSCONFIGSWALLET']._serialized_start=76314
+  _globals['_LISTCONFIGSCONFIGSWALLET']._serialized_end=76375
+  _globals['_LISTCONFIGSCONFIGSLARGECHANNELS']._serialized_start=76377
+  _globals['_LISTCONFIGSCONFIGSLARGECHANNELS']._serialized_end=76439
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALDUALFUND']._serialized_start=76441
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALDUALFUND']._serialized_end=76510
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSPLICING']._serialized_start=76512
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSPLICING']._serialized_end=76581
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALONIONMESSAGES']._serialized_start=76583
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALONIONMESSAGES']._serialized_end=76657
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALOFFERS']._serialized_start=76659
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALOFFERS']._serialized_end=76726
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSHUTDOWNWRONGFUNDING']._serialized_start=76728
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALSHUTDOWNWRONGFUNDING']._serialized_end=76809
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALPEERSTORAGE']._serialized_start=76811
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALPEERSTORAGE']._serialized_end=76883
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALANCHORS']._serialized_start=76885
+  _globals['_LISTCONFIGSCONFIGSEXPERIMENTALANCHORS']._serialized_end=76953
+  _globals['_LISTCONFIGSCONFIGSDATABASEUPGRADE']._serialized_start=76955
+  _globals['_LISTCONFIGSCONFIGSDATABASEUPGRADE']._serialized_end=77026
+  _globals['_LISTCONFIGSCONFIGSRGB']._serialized_start=77028
+  _globals['_LISTCONFIGSCONFIGSRGB']._serialized_end=77086
+  _globals['_LISTCONFIGSCONFIGSALIAS']._serialized_start=77088
+  _globals['_LISTCONFIGSCONFIGSALIAS']._serialized_end=77148
+  _globals['_LISTCONFIGSCONFIGSPIDFILE']._serialized_start=77150
+  _globals['_LISTCONFIGSCONFIGSPIDFILE']._serialized_end=77212
+  _globals['_LISTCONFIGSCONFIGSIGNOREFEELIMITS']._serialized_start=77214
+  _globals['_LISTCONFIGSCONFIGSIGNOREFEELIMITS']._serialized_end=77285
+  _globals['_LISTCONFIGSCONFIGSWATCHTIMEBLOCKS']._serialized_start=77287
+  _globals['_LISTCONFIGSCONFIGSWATCHTIMEBLOCKS']._serialized_end=77357
+  _globals['_LISTCONFIGSCONFIGSMAXLOCKTIMEBLOCKS']._serialized_start=77359
+  _globals['_LISTCONFIGSCONFIGSMAXLOCKTIMEBLOCKS']._serialized_end=77431
+  _globals['_LISTCONFIGSCONFIGSFUNDINGCONFIRMS']._serialized_start=77433
+  _globals['_LISTCONFIGSCONFIGSFUNDINGCONFIRMS']._serialized_end=77503
+  _globals['_LISTCONFIGSCONFIGSCLTVDELTA']._serialized_start=77505
+  _globals['_LISTCONFIGSCONFIGSCLTVDELTA']._serialized_end=77569
+  _globals['_LISTCONFIGSCONFIGSCLTVFINAL']._serialized_start=77571
+  _globals['_LISTCONFIGSCONFIGSCLTVFINAL']._serialized_end=77635
+  _globals['_LISTCONFIGSCONFIGSCOMMITTIME']._serialized_start=77637
+  _globals['_LISTCONFIGSCONFIGSCOMMITTIME']._serialized_end=77702
+  _globals['_LISTCONFIGSCONFIGSFEEBASE']._serialized_start=77704
+  _globals['_LISTCONFIGSCONFIGSFEEBASE']._serialized_end=77766
+  _globals['_LISTCONFIGSCONFIGSRESCAN']._serialized_start=77768
+  _globals['_LISTCONFIGSCONFIGSRESCAN']._serialized_end=77829
+  _globals['_LISTCONFIGSCONFIGSFEEPERSATOSHI']._serialized_start=77831
+  _globals['_LISTCONFIGSCONFIGSFEEPERSATOSHI']._serialized_end=77899
+  _globals['_LISTCONFIGSCONFIGSMAXCONCURRENTHTLCS']._serialized_start=77901
+  _globals['_LISTCONFIGSCONFIGSMAXCONCURRENTHTLCS']._serialized_end=77974
+  _globals['_LISTCONFIGSCONFIGSHTLCMINIMUMMSAT']._serialized_start=77976
+  _globals['_LISTCONFIGSCONFIGSHTLCMINIMUMMSAT']._serialized_end=78060
+  _globals['_LISTCONFIGSCONFIGSHTLCMAXIMUMMSAT']._serialized_start=78062
+  _globals['_LISTCONFIGSCONFIGSHTLCMAXIMUMMSAT']._serialized_end=78146
+  _globals['_LISTCONFIGSCONFIGSMAXDUSTHTLCEXPOSUREMSAT']._serialized_start=78148
+  _globals['_LISTCONFIGSCONFIGSMAXDUSTHTLCEXPOSUREMSAT']._serialized_end=78240
+  _globals['_LISTCONFIGSCONFIGSMINCAPACITYSAT']._serialized_start=78242
+  _globals['_LISTCONFIGSCONFIGSMINCAPACITYSAT']._serialized_end=78345
+  _globals['_LISTCONFIGSCONFIGSADDR']._serialized_start=78347
+  _globals['_LISTCONFIGSCONFIGSADDR']._serialized_end=78408
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDR']._serialized_start=78410
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDR']._serialized_end=78479
+  _globals['_LISTCONFIGSCONFIGSBINDADDR']._serialized_start=78481
+  _globals['_LISTCONFIGSCONFIGSBINDADDR']._serialized_end=78546
+  _globals['_LISTCONFIGSCONFIGSOFFLINE']._serialized_start=78548
+  _globals['_LISTCONFIGSCONFIGSOFFLINE']._serialized_end=78604
+  _globals['_LISTCONFIGSCONFIGSAUTOLISTEN']._serialized_start=78606
+  _globals['_LISTCONFIGSCONFIGSAUTOLISTEN']._serialized_end=78672
+  _globals['_LISTCONFIGSCONFIGSPROXY']._serialized_start=78674
+  _globals['_LISTCONFIGSCONFIGSPROXY']._serialized_end=78734
+  _globals['_LISTCONFIGSCONFIGSDISABLEDNS']._serialized_start=78736
+  _globals['_LISTCONFIGSCONFIGSDISABLEDNS']._serialized_end=78795
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED']._serialized_start=78798
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED']._serialized_end=79056
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDVALUE_STR']._serialized_start=78974
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVERED_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDVALUE_STR']._serialized_end=79056
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDPORT']._serialized_start=79058
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDISCOVEREDPORT']._serialized_end=79139
+  _globals['_LISTCONFIGSCONFIGSENCRYPTEDHSM']._serialized_start=79141
+  _globals['_LISTCONFIGSCONFIGSENCRYPTEDHSM']._serialized_end=79202
+  _globals['_LISTCONFIGSCONFIGSRPCFILEMODE']._serialized_start=79204
+  _globals['_LISTCONFIGSCONFIGSRPCFILEMODE']._serialized_end=79270
+  _globals['_LISTCONFIGSCONFIGSLOGLEVEL']._serialized_start=79272
+  _globals['_LISTCONFIGSCONFIGSLOGLEVEL']._serialized_end=79335
+  _globals['_LISTCONFIGSCONFIGSLOGPREFIX']._serialized_start=79337
+  _globals['_LISTCONFIGSCONFIGSLOGPREFIX']._serialized_end=79401
+  _globals['_LISTCONFIGSCONFIGSLOGFILE']._serialized_start=79403
+  _globals['_LISTCONFIGSCONFIGSLOGFILE']._serialized_end=79467
+  _globals['_LISTCONFIGSCONFIGSLOGTIMESTAMPS']._serialized_start=79469
+  _globals['_LISTCONFIGSCONFIGSLOGTIMESTAMPS']._serialized_end=79538
+  _globals['_LISTCONFIGSCONFIGSFORCEFEERATES']._serialized_start=79540
+  _globals['_LISTCONFIGSCONFIGSFORCEFEERATES']._serialized_end=79608
+  _globals['_LISTCONFIGSCONFIGSSUBDAEMON']._serialized_start=79610
+  _globals['_LISTCONFIGSCONFIGSSUBDAEMON']._serialized_end=79676
+  _globals['_LISTCONFIGSCONFIGSFETCHINVOICENOCONNECT']._serialized_start=79678
+  _globals['_LISTCONFIGSCONFIGSFETCHINVOICENOCONNECT']._serialized_end=79780
+  _globals['_LISTCONFIGSCONFIGSACCEPTHTLCTLVTYPES']._serialized_start=79782
+  _globals['_LISTCONFIGSCONFIGSACCEPTHTLCTLVTYPES']._serialized_end=79855
+  _globals['_LISTCONFIGSCONFIGSTORSERVICEPASSWORD']._serialized_start=79857
+  _globals['_LISTCONFIGSCONFIGSTORSERVICEPASSWORD']._serialized_end=79930
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDNS']._serialized_start=79932
+  _globals['_LISTCONFIGSCONFIGSANNOUNCEADDRDNS']._serialized_end=80003
+  _globals['_LISTCONFIGSCONFIGSREQUIRECONFIRMEDINPUTS']._serialized_start=80005
+  _globals['_LISTCONFIGSCONFIGSREQUIRECONFIRMEDINPUTS']._serialized_end=80083
+  _globals['_LISTCONFIGSCONFIGSCOMMITFEE']._serialized_start=80085
+  _globals['_LISTCONFIGSCONFIGSCOMMITFEE']._serialized_end=80149
+  _globals['_LISTCONFIGSCONFIGSCOMMITFEERATEOFFSET']._serialized_start=80151
+  _globals['_LISTCONFIGSCONFIGSCOMMITFEERATEOFFSET']._serialized_end=80225
+  _globals['_LISTCONFIGSCONFIGSAUTOCONNECTSEEKERPEERS']._serialized_start=80227
+  _globals['_LISTCONFIGSCONFIGSAUTOCONNECTSEEKERPEERS']._serialized_end=80304
+  _globals['_LISTCONFIGSPLUGINS']._serialized_start=80306
+  _globals['_LISTCONFIGSPLUGINS']._serialized_end=80420
+  _globals['_LISTCONFIGSPLUGINSOPTIONS']._serialized_start=80422
+  _globals['_LISTCONFIGSPLUGINSOPTIONS']._serialized_end=80449
+  _globals['_LISTCONFIGSIMPORTANTPLUGINS']._serialized_start=80452
+  _globals['_LISTCONFIGSIMPORTANTPLUGINS']._serialized_end=80584
+  _globals['_LISTCONFIGSIMPORTANTPLUGINSOPTIONS']._serialized_start=80586
+  _globals['_LISTCONFIGSIMPORTANTPLUGINSOPTIONS']._serialized_end=80622
+  _globals['_STOPREQUEST']._serialized_start=80624
+  _globals['_STOPREQUEST']._serialized_end=80637
+  _globals['_STOPRESPONSE']._serialized_start=80639
+  _globals['_STOPRESPONSE']._serialized_end=80752
+  _globals['_STOPRESPONSE_STOPRESULT']._serialized_start=80706
+  _globals['_STOPRESPONSE_STOPRESULT']._serialized_end=80741
+  _globals['_HELPREQUEST']._serialized_start=80754
+  _globals['_HELPREQUEST']._serialized_end=80801
+  _globals['_HELPRESPONSE']._serialized_start=80804
+  _globals['_HELPRESPONSE']._serialized_end=80953
+  _globals['_HELPRESPONSE_HELPFORMATHINT']._serialized_start=80909
+  _globals['_HELPRESPONSE_HELPFORMATHINT']._serialized_end=80937
+  _globals['_HELPHELP']._serialized_start=80955
+  _globals['_HELPHELP']._serialized_end=80982
+  _globals['_PREAPPROVEKEYSENDREQUEST']._serialized_start=80984
+  _globals['_PREAPPROVEKEYSENDREQUEST']._serialized_end=81087
+  _globals['_PREAPPROVEKEYSENDRESPONSE']._serialized_start=81089
+  _globals['_PREAPPROVEKEYSENDRESPONSE']._serialized_end=81116
+  _globals['_PREAPPROVEINVOICEREQUEST']._serialized_start=81118
+  _globals['_PREAPPROVEINVOICEREQUEST']._serialized_end=81160
+  _globals['_PREAPPROVEINVOICERESPONSE']._serialized_start=81162
+  _globals['_PREAPPROVEINVOICERESPONSE']._serialized_end=81189
+  _globals['_STATICBACKUPREQUEST']._serialized_start=81191
+  _globals['_STATICBACKUPREQUEST']._serialized_end=81212
+  _globals['_STATICBACKUPRESPONSE']._serialized_start=81214
+  _globals['_STATICBACKUPRESPONSE']._serialized_end=81249
+  _globals['_BKPRCHANNELSAPYREQUEST']._serialized_start=81251
+  _globals['_BKPRCHANNELSAPYREQUEST']._serialized_end=81351
+  _globals['_BKPRCHANNELSAPYRESPONSE']._serialized_start=81353
+  _globals['_BKPRCHANNELSAPYRESPONSE']._serialized_end=81434
+  _globals['_BKPRCHANNELSAPYCHANNELS_APY']._serialized_start=81437
+  _globals['_BKPRCHANNELSAPYCHANNELS_APY']._serialized_end=82327
+  _globals['_BKPRDUMPINCOMECSVREQUEST']._serialized_start=82330
+  _globals['_BKPRDUMPINCOMECSVREQUEST']._serialized_end=82540
+  _globals['_BKPRDUMPINCOMECSVRESPONSE']._serialized_start=82543
+  _globals['_BKPRDUMPINCOMECSVRESPONSE']._serialized_end=82757
+  _globals['_BKPRDUMPINCOMECSVRESPONSE_BKPRDUMPINCOMECSVCSV_FORMAT']._serialized_start=82670
+  _globals['_BKPRDUMPINCOMECSVRESPONSE_BKPRDUMPINCOMECSVCSV_FORMAT']._serialized_end=82757
+  _globals['_BKPRINSPECTREQUEST']._serialized_start=82759
+  _globals['_BKPRINSPECTREQUEST']._serialized_end=82796
+  _globals['_BKPRINSPECTRESPONSE']._serialized_start=82798
+  _globals['_BKPRINSPECTRESPONSE']._serialized_end=82853
+  _globals['_BKPRINSPECTTXS']._serialized_start=82856
+  _globals['_BKPRINSPECTTXS']._serialized_end=83010
+  _globals['_BKPRINSPECTTXSOUTPUTS']._serialized_start=83013
+  _globals['_BKPRINSPECTTXSOUTPUTS']._serialized_end=83457
+  _globals['_BKPRLISTACCOUNTEVENTSREQUEST']._serialized_start=83459
+  _globals['_BKPRLISTACCOUNTEVENTSREQUEST']._serialized_end=83563
+  _globals['_BKPRLISTACCOUNTEVENTSRESPONSE']._serialized_start=83565
+  _globals['_BKPRLISTACCOUNTEVENTSRESPONSE']._serialized_end=83646
+  _globals['_BKPRLISTACCOUNTEVENTSEVENTS']._serialized_start=83649
+  _globals['_BKPRLISTACCOUNTEVENTSEVENTS']._serialized_end=84322
+  _globals['_BKPRLISTACCOUNTEVENTSEVENTS_BKPRLISTACCOUNTEVENTSEVENTSTYPE']._serialized_start=84125
+  _globals['_BKPRLISTACCOUNTEVENTSEVENTS_BKPRLISTACCOUNTEVENTSEVENTSTYPE']._serialized_end=84199
+  _globals['_BKPRLISTBALANCESREQUEST']._serialized_start=84324
+  _globals['_BKPRLISTBALANCESREQUEST']._serialized_end=84349
+  _globals['_BKPRLISTBALANCESRESPONSE']._serialized_start=84351
+  _globals['_BKPRLISTBALANCESRESPONSE']._serialized_end=84426
+  _globals['_BKPRLISTBALANCESACCOUNTS']._serialized_start=84429
+  _globals['_BKPRLISTBALANCESACCOUNTS']._serialized_end=84755
+  _globals['_BKPRLISTBALANCESACCOUNTSBALANCES']._serialized_start=84757
+  _globals['_BKPRLISTBALANCESACCOUNTSBALANCES']._serialized_end=84845
+  _globals['_BKPRLISTINCOMEREQUEST']._serialized_start=84848
+  _globals['_BKPRLISTINCOMEREQUEST']._serialized_end=84999
+  _globals['_BKPRLISTINCOMERESPONSE']._serialized_start=85001
+  _globals['_BKPRLISTINCOMERESPONSE']._serialized_end=85082
+  _globals['_BKPRLISTINCOMEINCOME_EVENTS']._serialized_start=85085
+  _globals['_BKPRLISTINCOMEINCOME_EVENTS']._serialized_end=85394
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDREQUEST']._serialized_start=85396
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDREQUEST']._serialized_end=85476
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDRESPONSE']._serialized_start=85478
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDRESPONSE']._serialized_end=85579
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATED']._serialized_start=85582
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATED']._serialized_end=86257
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATED_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATEDTYPE']._serialized_start=86083
+  _globals['_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATED_BKPREDITDESCRIPTIONBYPAYMENTIDUPDATEDTYPE']._serialized_end=86150
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTREQUEST']._serialized_start=86259
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTREQUEST']._serialized_end=86336
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTRESPONSE']._serialized_start=86338
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTRESPONSE']._serialized_end=86437
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTUPDATED']._serialized_start=86440
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTUPDATED']._serialized_end=87111
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTUPDATED_BKPREDITDESCRIPTIONBYOUTPOINTUPDATEDTYPE']._serialized_start=86938
+  _globals['_BKPREDITDESCRIPTIONBYOUTPOINTUPDATED_BKPREDITDESCRIPTIONBYOUTPOINTUPDATEDTYPE']._serialized_end=87004
+  _globals['_BLACKLISTRUNEREQUEST']._serialized_start=87113
+  _globals['_BLACKLISTRUNEREQUEST']._serialized_end=87191
+  _globals['_BLACKLISTRUNERESPONSE']._serialized_start=87193
+  _globals['_BLACKLISTRUNERESPONSE']._serialized_end=87264
+  _globals['_BLACKLISTRUNEBLACKLIST']._serialized_start=87266
+  _globals['_BLACKLISTRUNEBLACKLIST']._serialized_end=87318
+  _globals['_CHECKRUNEREQUEST']._serialized_start=87320
+  _globals['_CHECKRUNEREQUEST']._serialized_end=87432
+  _globals['_CHECKRUNERESPONSE']._serialized_start=87434
+  _globals['_CHECKRUNERESPONSE']._serialized_end=87468
+  _globals['_CREATERUNEREQUEST']._serialized_start=87470
+  _globals['_CREATERUNEREQUEST']._serialized_end=87539
+  _globals['_CREATERUNERESPONSE']._serialized_start=87541
+  _globals['_CREATERUNERESPONSE']._serialized_end=87664
+  _globals['_SHOWRUNESREQUEST']._serialized_start=87666
+  _globals['_SHOWRUNESREQUEST']._serialized_end=87712
+  _globals['_SHOWRUNESRESPONSE']._serialized_start=87714
+  _globals['_SHOWRUNESRESPONSE']._serialized_end=87769
+  _globals['_SHOWRUNESRUNES']._serialized_start=87772
+  _globals['_SHOWRUNESRUNES']._serialized_end=88057
+  _globals['_SHOWRUNESRUNESRESTRICTIONS']._serialized_start=88059
+  _globals['_SHOWRUNESRUNESRESTRICTIONS']._serialized_end=88171
+  _globals['_SHOWRUNESRUNESRESTRICTIONSALTERNATIVES']._serialized_start=88173
+  _globals['_SHOWRUNESRUNESRESTRICTIONSALTERNATIVES']._serialized_end=88283
+  _globals['_ASKRENEUNRESERVEREQUEST']._serialized_start=88285
+  _globals['_ASKRENEUNRESERVEREQUEST']._serialized_end=88351
+  _globals['_ASKRENEUNRESERVERESPONSE']._serialized_start=88353
+  _globals['_ASKRENEUNRESERVERESPONSE']._serialized_end=88379
+  _globals['_ASKRENEUNRESERVEPATH']._serialized_start=88381
+  _globals['_ASKRENEUNRESERVEPATH']._serialized_end=88497
+  _globals['_ASKRENELISTLAYERSREQUEST']._serialized_start=88499
+  _globals['_ASKRENELISTLAYERSREQUEST']._serialized_end=88555
+  _globals['_ASKRENELISTLAYERSRESPONSE']._serialized_start=88557
+  _globals['_ASKRENELISTLAYERSRESPONSE']._serialized_end=88630
+  _globals['_ASKRENELISTLAYERSLAYERS']._serialized_start=88633
+  _globals['_ASKRENELISTLAYERSLAYERS']._serialized_end=89020
+  _globals['_ASKRENELISTLAYERSLAYERSCREATED_CHANNELS']._serialized_start=89023
+  _globals['_ASKRENELISTLAYERSLAYERSCREATED_CHANNELS']._serialized_end=89163
+  _globals['_ASKRENELISTLAYERSLAYERSCHANNEL_UPDATES']._serialized_start=89166
+  _globals['_ASKRENELISTLAYERSLAYERSCHANNEL_UPDATES']._serialized_end=89591
+  _globals['_ASKRENELISTLAYERSLAYERSCONSTRAINTS']._serialized_start=89594
+  _globals['_ASKRENELISTLAYERSLAYERSCONSTRAINTS']._serialized_end=89842
+  _globals['_ASKRENELISTLAYERSLAYERSBIASES']._serialized_start=89844
+  _globals['_ASKRENELISTLAYERSLAYERSBIASES']._serialized_end=89961
+  _globals['_ASKRENECREATELAYERREQUEST']._serialized_start=89963
+  _globals['_ASKRENECREATELAYERREQUEST']._serialized_end=90045
+  _globals['_ASKRENECREATELAYERRESPONSE']._serialized_start=90047
+  _globals['_ASKRENECREATELAYERRESPONSE']._serialized_end=90122
+  _globals['_ASKRENECREATELAYERLAYERS']._serialized_start=90125
+  _globals['_ASKRENECREATELAYERLAYERS']._serialized_end=90497
+  _globals['_ASKRENECREATELAYERLAYERSCREATED_CHANNELS']._serialized_start=90500
+  _globals['_ASKRENECREATELAYERLAYERSCREATED_CHANNELS']._serialized_end=90641
+  _globals['_ASKRENECREATELAYERLAYERSCHANNEL_UPDATES']._serialized_start=90644
+  _globals['_ASKRENECREATELAYERLAYERSCHANNEL_UPDATES']._serialized_end=90982
+  _globals['_ASKRENECREATELAYERLAYERSCONSTRAINTS']._serialized_start=90985
+  _globals['_ASKRENECREATELAYERLAYERSCONSTRAINTS']._serialized_end=91181
+  _globals['_ASKRENECREATELAYERLAYERSBIASES']._serialized_start=91183
+  _globals['_ASKRENECREATELAYERLAYERSBIASES']._serialized_end=91301
+  _globals['_ASKRENEREMOVELAYERREQUEST']._serialized_start=91303
+  _globals['_ASKRENEREMOVELAYERREQUEST']._serialized_end=91345
+  _globals['_ASKRENEREMOVELAYERRESPONSE']._serialized_start=91347
+  _globals['_ASKRENEREMOVELAYERRESPONSE']._serialized_end=91375
+  _globals['_ASKRENERESERVEREQUEST']._serialized_start=91377
+  _globals['_ASKRENERESERVEREQUEST']._serialized_end=91439
+  _globals['_ASKRENERESERVERESPONSE']._serialized_start=91441
+  _globals['_ASKRENERESERVERESPONSE']._serialized_end=91465
+  _globals['_ASKRENERESERVEPATH']._serialized_start=91467
+  _globals['_ASKRENERESERVEPATH']._serialized_end=91581
+  _globals['_ASKRENEAGEREQUEST']._serialized_start=91583
+  _globals['_ASKRENEAGEREQUEST']._serialized_end=91633
+  _globals['_ASKRENEAGERESPONSE']._serialized_start=91635
+  _globals['_ASKRENEAGERESPONSE']._serialized_end=91691
+  _globals['_GETROUTESREQUEST']._serialized_start=91694
+  _globals['_GETROUTESREQUEST']._serialized_end=91873
+  _globals['_GETROUTESRESPONSE']._serialized_start=91875
+  _globals['_GETROUTESRESPONSE']._serialized_end=91957
+  _globals['_GETROUTESROUTES']._serialized_start=91960
+  _globals['_GETROUTESROUTES']._serialized_end=92116
+  _globals['_GETROUTESROUTESPATH']._serialized_start=92119
+  _globals['_GETROUTESROUTESPATH']._serialized_end=92271
+  _globals['_ASKRENEDISABLENODEREQUEST']._serialized_start=92273
+  _globals['_ASKRENEDISABLENODEREQUEST']._serialized_end=92329
+  _globals['_ASKRENEDISABLENODERESPONSE']._serialized_start=92331
+  _globals['_ASKRENEDISABLENODERESPONSE']._serialized_end=92359
+  _globals['_ASKRENEINFORMCHANNELREQUEST']._serialized_start=92362
+  _globals['_ASKRENEINFORMCHANNELREQUEST']._serialized_end=92695
+  _globals['_ASKRENEINFORMCHANNELREQUEST_ASKRENEINFORMCHANNELINFORM']._serialized_start=92564
+  _globals['_ASKRENEINFORMCHANNELREQUEST_ASKRENEINFORMCHANNELINFORM']._serialized_end=92643
+  _globals['_ASKRENEINFORMCHANNELRESPONSE']._serialized_start=92697
+  _globals['_ASKRENEINFORMCHANNELRESPONSE']._serialized_end=92786
+  _globals['_ASKRENEINFORMCHANNELCONSTRAINTS']._serialized_start=92789
+  _globals['_ASKRENEINFORMCHANNELCONSTRAINTS']._serialized_end=93000
+  _globals['_ASKRENECREATECHANNELREQUEST']._serialized_start=93003
+  _globals['_ASKRENECREATECHANNELREQUEST']._serialized_end=93146
+  _globals['_ASKRENECREATECHANNELRESPONSE']._serialized_start=93148
+  _globals['_ASKRENECREATECHANNELRESPONSE']._serialized_end=93178
+  _globals['_ASKRENEUPDATECHANNELREQUEST']._serialized_start=93181
+  _globals['_ASKRENEUPDATECHANNELREQUEST']._serialized_end=93610
+  _globals['_ASKRENEUPDATECHANNELRESPONSE']._serialized_start=93612
+  _globals['_ASKRENEUPDATECHANNELRESPONSE']._serialized_end=93642
+  _globals['_ASKRENEBIASCHANNELREQUEST']._serialized_start=93645
+  _globals['_ASKRENEBIASCHANNELREQUEST']._serialized_end=93773
+  _globals['_ASKRENEBIASCHANNELRESPONSE']._serialized_start=93775
+  _globals['_ASKRENEBIASCHANNELRESPONSE']._serialized_end=93850
+  _globals['_ASKRENEBIASCHANNELBIASES']._serialized_start=93852
+  _globals['_ASKRENEBIASCHANNELBIASES']._serialized_end=93979
+  _globals['_ASKRENELISTRESERVATIONSREQUEST']._serialized_start=93981
+  _globals['_ASKRENELISTRESERVATIONSREQUEST']._serialized_end=94013
+  _globals['_ASKRENELISTRESERVATIONSRESPONSE']._serialized_start=94015
+  _globals['_ASKRENELISTRESERVATIONSRESPONSE']._serialized_end=94112
+  _globals['_ASKRENELISTRESERVATIONSRESERVATIONS']._serialized_start=94115
+  _globals['_ASKRENELISTRESERVATIONSRESERVATIONS']._serialized_end=94260
+  _globals['_INJECTPAYMENTONIONREQUEST']._serialized_start=94263
+  _globals['_INJECTPAYMENTONIONREQUEST']._serialized_end=94529
+  _globals['_INJECTPAYMENTONIONRESPONSE']._serialized_start=94531
+  _globals['_INJECTPAYMENTONIONRESPONSE']._serialized_end=94624
+  _globals['_XPAYREQUEST']._serialized_start=94627
+  _globals['_XPAYREQUEST']._serialized_end=94870
+  _globals['_XPAYRESPONSE']._serialized_start=94873
+  _globals['_XPAYRESPONSE']._serialized_end=95034
+  _globals['_STREAMBLOCKADDEDREQUEST']._serialized_start=95036
+  _globals['_STREAMBLOCKADDEDREQUEST']._serialized_end=95061
+  _globals['_BLOCKADDEDNOTIFICATION']._serialized_start=95063
+  _globals['_BLOCKADDEDNOTIFICATION']._serialized_end=95117
+  _globals['_STREAMCHANNELOPENFAILEDREQUEST']._serialized_start=95119
+  _globals['_STREAMCHANNELOPENFAILEDREQUEST']._serialized_end=95151
+  _globals['_CHANNELOPENFAILEDNOTIFICATION']._serialized_start=95153
+  _globals['_CHANNELOPENFAILEDNOTIFICATION']._serialized_end=95204
+  _globals['_STREAMCHANNELOPENEDREQUEST']._serialized_start=95206
+  _globals['_STREAMCHANNELOPENEDREQUEST']._serialized_end=95234
+  _globals['_CHANNELOPENEDNOTIFICATION']._serialized_start=95236
+  _globals['_CHANNELOPENEDNOTIFICATION']._serialized_end=95355
+  _globals['_STREAMCONNECTREQUEST']._serialized_start=95357
+  _globals['_STREAMCONNECTREQUEST']._serialized_end=95379
+  _globals['_PEERCONNECTNOTIFICATION']._serialized_start=95382
+  _globals['_PEERCONNECTNOTIFICATION']._serialized_end=95572
+  _globals['_PEERCONNECTNOTIFICATION_PEERCONNECTDIRECTION']._serialized_start=95533
+  _globals['_PEERCONNECTNOTIFICATION_PEERCONNECTDIRECTION']._serialized_end=95572
+  _globals['_PEERCONNECTADDRESS']._serialized_start=95575
+  _globals['_PEERCONNECTADDRESS']._serialized_end=95842
+  _globals['_PEERCONNECTADDRESS_PEERCONNECTADDRESSTYPE']._serialized_start=95726
+  _globals['_PEERCONNECTADDRESS_PEERCONNECTADDRESSTYPE']._serialized_end=95810
+  _globals['_STREAMCUSTOMMSGREQUEST']._serialized_start=95844
+  _globals['_STREAMCUSTOMMSGREQUEST']._serialized_end=95868
+  _globals['_CUSTOMMSGNOTIFICATION']._serialized_start=95870
+  _globals['_CUSTOMMSGNOTIFICATION']._serialized_end=95927
+  _globals['_NODE']._serialized_start=95930
+  _globals['_NODE']._serialized_end=105949
 # @@protoc_insertion_point(module_scope)
diff --git a/contrib/pyln-grpc-proto/pyln/grpc/node_pb2_grpc.py b/contrib/pyln-grpc-proto/pyln/grpc/node_pb2_grpc.py
index c595011c3..2da539b4b 100644
--- a/contrib/pyln-grpc-proto/pyln/grpc/node_pb2_grpc.py
+++ b/contrib/pyln-grpc-proto/pyln/grpc/node_pb2_grpc.py
@@ -114,6 +114,16 @@ class NodeStub(object):
                 request_serializer=node__pb2.EmergencyrecoverRequest.SerializeToString,
                 response_deserializer=node__pb2.EmergencyrecoverResponse.FromString,
                 )
+        self.GetEmergencyRecoverData = channel.unary_unary(
+                '/cln.Node/GetEmergencyRecoverData',
+                request_serializer=node__pb2.GetemergencyrecoverdataRequest.SerializeToString,
+                response_deserializer=node__pb2.GetemergencyrecoverdataResponse.FromString,
+                )
+        self.ExposeSecret = channel.unary_unary(
+                '/cln.Node/ExposeSecret',
+                request_serializer=node__pb2.ExposesecretRequest.SerializeToString,
+                response_deserializer=node__pb2.ExposesecretResponse.FromString,
+                )
         self.Recover = channel.unary_unary(
                 '/cln.Node/Recover',
                 request_serializer=node__pb2.RecoverRequest.SerializeToString,
@@ -284,6 +294,11 @@ class NodeStub(object):
                 request_serializer=node__pb2.DisableofferRequest.SerializeToString,
                 response_deserializer=node__pb2.DisableofferResponse.FromString,
                 )
+        self.EnableOffer = channel.unary_unary(
+                '/cln.Node/EnableOffer',
+                request_serializer=node__pb2.EnableofferRequest.SerializeToString,
+                response_deserializer=node__pb2.EnableofferResponse.FromString,
+                )
         self.Disconnect = channel.unary_unary(
                 '/cln.Node/Disconnect',
                 request_serializer=node__pb2.DisconnectRequest.SerializeToString,
@@ -334,6 +349,11 @@ class NodeStub(object):
                 request_serializer=node__pb2.GetrouteRequest.SerializeToString,
                 response_deserializer=node__pb2.GetrouteResponse.FromString,
                 )
+        self.ListAddresses = channel.unary_unary(
+                '/cln.Node/ListAddresses',
+                request_serializer=node__pb2.ListaddressesRequest.SerializeToString,
+                response_deserializer=node__pb2.ListaddressesResponse.FromString,
+                )
         self.ListForwards = channel.unary_unary(
                 '/cln.Node/ListForwards',
                 request_serializer=node__pb2.ListforwardsRequest.SerializeToString,
@@ -469,6 +489,11 @@ class NodeStub(object):
                 request_serializer=node__pb2.Splice_updateRequest.SerializeToString,
                 response_deserializer=node__pb2.Splice_updateResponse.FromString,
                 )
+        self.DevSplice = channel.unary_unary(
+                '/cln.Node/DevSplice',
+                request_serializer=node__pb2.DevspliceRequest.SerializeToString,
+                response_deserializer=node__pb2.DevspliceResponse.FromString,
+                )
         self.UnreserveInputs = channel.unary_unary(
                 '/cln.Node/UnreserveInputs',
                 request_serializer=node__pb2.UnreserveinputsRequest.SerializeToString,
@@ -549,6 +574,16 @@ class NodeStub(object):
                 request_serializer=node__pb2.BkprlistincomeRequest.SerializeToString,
                 response_deserializer=node__pb2.BkprlistincomeResponse.FromString,
                 )
+        self.BkprEditDescriptionByPaymentId = channel.unary_unary(
+                '/cln.Node/BkprEditDescriptionByPaymentId',
+                request_serializer=node__pb2.BkpreditdescriptionbypaymentidRequest.SerializeToString,
+                response_deserializer=node__pb2.BkpreditdescriptionbypaymentidResponse.FromString,
+                )
+        self.BkprEditDescriptionByOutpoint = channel.unary_unary(
+                '/cln.Node/BkprEditDescriptionByOutpoint',
+                request_serializer=node__pb2.BkpreditdescriptionbyoutpointRequest.SerializeToString,
+                response_deserializer=node__pb2.BkpreditdescriptionbyoutpointResponse.FromString,
+                )
         self.BlacklistRune = channel.unary_unary(
                 '/cln.Node/BlacklistRune',
                 request_serializer=node__pb2.BlacklistruneRequest.SerializeToString,
@@ -569,6 +604,81 @@ class NodeStub(object):
                 request_serializer=node__pb2.ShowrunesRequest.SerializeToString,
                 response_deserializer=node__pb2.ShowrunesResponse.FromString,
                 )
+        self.AskReneUnreserve = channel.unary_unary(
+                '/cln.Node/AskReneUnreserve',
+                request_serializer=node__pb2.AskreneunreserveRequest.SerializeToString,
+                response_deserializer=node__pb2.AskreneunreserveResponse.FromString,
+                )
+        self.AskReneListLayers = channel.unary_unary(
+                '/cln.Node/AskReneListLayers',
+                request_serializer=node__pb2.AskrenelistlayersRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenelistlayersResponse.FromString,
+                )
+        self.AskReneCreateLayer = channel.unary_unary(
+                '/cln.Node/AskReneCreateLayer',
+                request_serializer=node__pb2.AskrenecreatelayerRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenecreatelayerResponse.FromString,
+                )
+        self.AskReneRemoveLayer = channel.unary_unary(
+                '/cln.Node/AskReneRemoveLayer',
+                request_serializer=node__pb2.AskreneremovelayerRequest.SerializeToString,
+                response_deserializer=node__pb2.AskreneremovelayerResponse.FromString,
+                )
+        self.AskReneReserve = channel.unary_unary(
+                '/cln.Node/AskReneReserve',
+                request_serializer=node__pb2.AskrenereserveRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenereserveResponse.FromString,
+                )
+        self.AskReneAge = channel.unary_unary(
+                '/cln.Node/AskReneAge',
+                request_serializer=node__pb2.AskreneageRequest.SerializeToString,
+                response_deserializer=node__pb2.AskreneageResponse.FromString,
+                )
+        self.GetRoutes = channel.unary_unary(
+                '/cln.Node/GetRoutes',
+                request_serializer=node__pb2.GetroutesRequest.SerializeToString,
+                response_deserializer=node__pb2.GetroutesResponse.FromString,
+                )
+        self.AskReneDisableNode = channel.unary_unary(
+                '/cln.Node/AskReneDisableNode',
+                request_serializer=node__pb2.AskrenedisablenodeRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenedisablenodeResponse.FromString,
+                )
+        self.AskReneInformChannel = channel.unary_unary(
+                '/cln.Node/AskReneInformChannel',
+                request_serializer=node__pb2.AskreneinformchannelRequest.SerializeToString,
+                response_deserializer=node__pb2.AskreneinformchannelResponse.FromString,
+                )
+        self.AskReneCreateChannel = channel.unary_unary(
+                '/cln.Node/AskReneCreateChannel',
+                request_serializer=node__pb2.AskrenecreatechannelRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenecreatechannelResponse.FromString,
+                )
+        self.AskReneUpdateChannel = channel.unary_unary(
+                '/cln.Node/AskReneUpdateChannel',
+                request_serializer=node__pb2.AskreneupdatechannelRequest.SerializeToString,
+                response_deserializer=node__pb2.AskreneupdatechannelResponse.FromString,
+                )
+        self.AskReneBiasChannel = channel.unary_unary(
+                '/cln.Node/AskReneBiasChannel',
+                request_serializer=node__pb2.AskrenebiaschannelRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenebiaschannelResponse.FromString,
+                )
+        self.AskReneListReservations = channel.unary_unary(
+                '/cln.Node/AskReneListReservations',
+                request_serializer=node__pb2.AskrenelistreservationsRequest.SerializeToString,
+                response_deserializer=node__pb2.AskrenelistreservationsResponse.FromString,
+                )
+        self.InjectPaymentOnion = channel.unary_unary(
+                '/cln.Node/InjectPaymentOnion',
+                request_serializer=node__pb2.InjectpaymentonionRequest.SerializeToString,
+                response_deserializer=node__pb2.InjectpaymentonionResponse.FromString,
+                )
+        self.Xpay = channel.unary_unary(
+                '/cln.Node/Xpay',
+                request_serializer=node__pb2.XpayRequest.SerializeToString,
+                response_deserializer=node__pb2.XpayResponse.FromString,
+                )
         self.SubscribeBlockAdded = channel.unary_stream(
                 '/cln.Node/SubscribeBlockAdded',
                 request_serializer=node__pb2.StreamBlockAddedRequest.SerializeToString,
@@ -719,6 +829,18 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def GetEmergencyRecoverData(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def ExposeSecret(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def Recover(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -923,6 +1045,12 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def EnableOffer(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def Disconnect(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -983,6 +1111,12 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def ListAddresses(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def ListForwards(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -1145,6 +1279,12 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def DevSplice(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def UnreserveInputs(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -1241,6 +1381,18 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def BkprEditDescriptionByPaymentId(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def BkprEditDescriptionByOutpoint(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def BlacklistRune(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -1265,6 +1417,96 @@ class NodeServicer(object):
         context.set_details('Method not implemented!')
         raise NotImplementedError('Method not implemented!')
 
+    def AskReneUnreserve(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneListLayers(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneCreateLayer(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneRemoveLayer(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneReserve(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneAge(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def GetRoutes(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneDisableNode(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneInformChannel(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneCreateChannel(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneUpdateChannel(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneBiasChannel(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def AskReneListReservations(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def InjectPaymentOnion(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
+    def Xpay(self, request, context):
+        """Missing associated documentation comment in .proto file."""
+        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
+        context.set_details('Method not implemented!')
+        raise NotImplementedError('Method not implemented!')
+
     def SubscribeBlockAdded(self, request, context):
         """Missing associated documentation comment in .proto file."""
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -1398,6 +1640,16 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.EmergencyrecoverRequest.FromString,
                     response_serializer=node__pb2.EmergencyrecoverResponse.SerializeToString,
             ),
+            'GetEmergencyRecoverData': grpc.unary_unary_rpc_method_handler(
+                    servicer.GetEmergencyRecoverData,
+                    request_deserializer=node__pb2.GetemergencyrecoverdataRequest.FromString,
+                    response_serializer=node__pb2.GetemergencyrecoverdataResponse.SerializeToString,
+            ),
+            'ExposeSecret': grpc.unary_unary_rpc_method_handler(
+                    servicer.ExposeSecret,
+                    request_deserializer=node__pb2.ExposesecretRequest.FromString,
+                    response_serializer=node__pb2.ExposesecretResponse.SerializeToString,
+            ),
             'Recover': grpc.unary_unary_rpc_method_handler(
                     servicer.Recover,
                     request_deserializer=node__pb2.RecoverRequest.FromString,
@@ -1568,6 +1820,11 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.DisableofferRequest.FromString,
                     response_serializer=node__pb2.DisableofferResponse.SerializeToString,
             ),
+            'EnableOffer': grpc.unary_unary_rpc_method_handler(
+                    servicer.EnableOffer,
+                    request_deserializer=node__pb2.EnableofferRequest.FromString,
+                    response_serializer=node__pb2.EnableofferResponse.SerializeToString,
+            ),
             'Disconnect': grpc.unary_unary_rpc_method_handler(
                     servicer.Disconnect,
                     request_deserializer=node__pb2.DisconnectRequest.FromString,
@@ -1618,6 +1875,11 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.GetrouteRequest.FromString,
                     response_serializer=node__pb2.GetrouteResponse.SerializeToString,
             ),
+            'ListAddresses': grpc.unary_unary_rpc_method_handler(
+                    servicer.ListAddresses,
+                    request_deserializer=node__pb2.ListaddressesRequest.FromString,
+                    response_serializer=node__pb2.ListaddressesResponse.SerializeToString,
+            ),
             'ListForwards': grpc.unary_unary_rpc_method_handler(
                     servicer.ListForwards,
                     request_deserializer=node__pb2.ListforwardsRequest.FromString,
@@ -1753,6 +2015,11 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.Splice_updateRequest.FromString,
                     response_serializer=node__pb2.Splice_updateResponse.SerializeToString,
             ),
+            'DevSplice': grpc.unary_unary_rpc_method_handler(
+                    servicer.DevSplice,
+                    request_deserializer=node__pb2.DevspliceRequest.FromString,
+                    response_serializer=node__pb2.DevspliceResponse.SerializeToString,
+            ),
             'UnreserveInputs': grpc.unary_unary_rpc_method_handler(
                     servicer.UnreserveInputs,
                     request_deserializer=node__pb2.UnreserveinputsRequest.FromString,
@@ -1833,6 +2100,16 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.BkprlistincomeRequest.FromString,
                     response_serializer=node__pb2.BkprlistincomeResponse.SerializeToString,
             ),
+            'BkprEditDescriptionByPaymentId': grpc.unary_unary_rpc_method_handler(
+                    servicer.BkprEditDescriptionByPaymentId,
+                    request_deserializer=node__pb2.BkpreditdescriptionbypaymentidRequest.FromString,
+                    response_serializer=node__pb2.BkpreditdescriptionbypaymentidResponse.SerializeToString,
+            ),
+            'BkprEditDescriptionByOutpoint': grpc.unary_unary_rpc_method_handler(
+                    servicer.BkprEditDescriptionByOutpoint,
+                    request_deserializer=node__pb2.BkpreditdescriptionbyoutpointRequest.FromString,
+                    response_serializer=node__pb2.BkpreditdescriptionbyoutpointResponse.SerializeToString,
+            ),
             'BlacklistRune': grpc.unary_unary_rpc_method_handler(
                     servicer.BlacklistRune,
                     request_deserializer=node__pb2.BlacklistruneRequest.FromString,
@@ -1853,6 +2130,81 @@ def add_NodeServicer_to_server(servicer, server):
                     request_deserializer=node__pb2.ShowrunesRequest.FromString,
                     response_serializer=node__pb2.ShowrunesResponse.SerializeToString,
             ),
+            'AskReneUnreserve': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneUnreserve,
+                    request_deserializer=node__pb2.AskreneunreserveRequest.FromString,
+                    response_serializer=node__pb2.AskreneunreserveResponse.SerializeToString,
+            ),
+            'AskReneListLayers': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneListLayers,
+                    request_deserializer=node__pb2.AskrenelistlayersRequest.FromString,
+                    response_serializer=node__pb2.AskrenelistlayersResponse.SerializeToString,
+            ),
+            'AskReneCreateLayer': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneCreateLayer,
+                    request_deserializer=node__pb2.AskrenecreatelayerRequest.FromString,
+                    response_serializer=node__pb2.AskrenecreatelayerResponse.SerializeToString,
+            ),
+            'AskReneRemoveLayer': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneRemoveLayer,
+                    request_deserializer=node__pb2.AskreneremovelayerRequest.FromString,
+                    response_serializer=node__pb2.AskreneremovelayerResponse.SerializeToString,
+            ),
+            'AskReneReserve': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneReserve,
+                    request_deserializer=node__pb2.AskrenereserveRequest.FromString,
+                    response_serializer=node__pb2.AskrenereserveResponse.SerializeToString,
+            ),
+            'AskReneAge': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneAge,
+                    request_deserializer=node__pb2.AskreneageRequest.FromString,
+                    response_serializer=node__pb2.AskreneageResponse.SerializeToString,
+            ),
+            'GetRoutes': grpc.unary_unary_rpc_method_handler(
+                    servicer.GetRoutes,
+                    request_deserializer=node__pb2.GetroutesRequest.FromString,
+                    response_serializer=node__pb2.GetroutesResponse.SerializeToString,
+            ),
+            'AskReneDisableNode': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneDisableNode,
+                    request_deserializer=node__pb2.AskrenedisablenodeRequest.FromString,
+                    response_serializer=node__pb2.AskrenedisablenodeResponse.SerializeToString,
+            ),
+            'AskReneInformChannel': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneInformChannel,
+                    request_deserializer=node__pb2.AskreneinformchannelRequest.FromString,
+                    response_serializer=node__pb2.AskreneinformchannelResponse.SerializeToString,
+            ),
+            'AskReneCreateChannel': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneCreateChannel,
+                    request_deserializer=node__pb2.AskrenecreatechannelRequest.FromString,
+                    response_serializer=node__pb2.AskrenecreatechannelResponse.SerializeToString,
+            ),
+            'AskReneUpdateChannel': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneUpdateChannel,
+                    request_deserializer=node__pb2.AskreneupdatechannelRequest.FromString,
+                    response_serializer=node__pb2.AskreneupdatechannelResponse.SerializeToString,
+            ),
+            'AskReneBiasChannel': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneBiasChannel,
+                    request_deserializer=node__pb2.AskrenebiaschannelRequest.FromString,
+                    response_serializer=node__pb2.AskrenebiaschannelResponse.SerializeToString,
+            ),
+            'AskReneListReservations': grpc.unary_unary_rpc_method_handler(
+                    servicer.AskReneListReservations,
+                    request_deserializer=node__pb2.AskrenelistreservationsRequest.FromString,
+                    response_serializer=node__pb2.AskrenelistreservationsResponse.SerializeToString,
+            ),
+            'InjectPaymentOnion': grpc.unary_unary_rpc_method_handler(
+                    servicer.InjectPaymentOnion,
+                    request_deserializer=node__pb2.InjectpaymentonionRequest.FromString,
+                    response_serializer=node__pb2.InjectpaymentonionResponse.SerializeToString,
+            ),
+            'Xpay': grpc.unary_unary_rpc_method_handler(
+                    servicer.Xpay,
+                    request_deserializer=node__pb2.XpayRequest.FromString,
+                    response_serializer=node__pb2.XpayResponse.SerializeToString,
+            ),
             'SubscribeBlockAdded': grpc.unary_stream_rpc_method_handler(
                     servicer.SubscribeBlockAdded,
                     request_deserializer=node__pb2.StreamBlockAddedRequest.FromString,
@@ -2228,6 +2580,40 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def GetEmergencyRecoverData(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/GetEmergencyRecoverData',
+            node__pb2.GetemergencyrecoverdataRequest.SerializeToString,
+            node__pb2.GetemergencyrecoverdataResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def ExposeSecret(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/ExposeSecret',
+            node__pb2.ExposesecretRequest.SerializeToString,
+            node__pb2.ExposesecretResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def Recover(request,
             target,
@@ -2806,6 +3192,23 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def EnableOffer(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/EnableOffer',
+            node__pb2.EnableofferRequest.SerializeToString,
+            node__pb2.EnableofferResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def Disconnect(request,
             target,
@@ -2976,6 +3379,23 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def ListAddresses(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/ListAddresses',
+            node__pb2.ListaddressesRequest.SerializeToString,
+            node__pb2.ListaddressesResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def ListForwards(request,
             target,
@@ -3435,6 +3855,23 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def DevSplice(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/DevSplice',
+            node__pb2.DevspliceRequest.SerializeToString,
+            node__pb2.DevspliceResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def UnreserveInputs(request,
             target,
@@ -3707,6 +4144,40 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def BkprEditDescriptionByPaymentId(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/BkprEditDescriptionByPaymentId',
+            node__pb2.BkpreditdescriptionbypaymentidRequest.SerializeToString,
+            node__pb2.BkpreditdescriptionbypaymentidResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def BkprEditDescriptionByOutpoint(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/BkprEditDescriptionByOutpoint',
+            node__pb2.BkpreditdescriptionbyoutpointRequest.SerializeToString,
+            node__pb2.BkpreditdescriptionbyoutpointResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def BlacklistRune(request,
             target,
@@ -3775,6 +4246,261 @@ class Node(object):
             options, channel_credentials,
             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
 
+    @staticmethod
+    def AskReneUnreserve(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneUnreserve',
+            node__pb2.AskreneunreserveRequest.SerializeToString,
+            node__pb2.AskreneunreserveResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneListLayers(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneListLayers',
+            node__pb2.AskrenelistlayersRequest.SerializeToString,
+            node__pb2.AskrenelistlayersResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneCreateLayer(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneCreateLayer',
+            node__pb2.AskrenecreatelayerRequest.SerializeToString,
+            node__pb2.AskrenecreatelayerResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneRemoveLayer(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneRemoveLayer',
+            node__pb2.AskreneremovelayerRequest.SerializeToString,
+            node__pb2.AskreneremovelayerResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneReserve(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneReserve',
+            node__pb2.AskrenereserveRequest.SerializeToString,
+            node__pb2.AskrenereserveResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneAge(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneAge',
+            node__pb2.AskreneageRequest.SerializeToString,
+            node__pb2.AskreneageResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def GetRoutes(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/GetRoutes',
+            node__pb2.GetroutesRequest.SerializeToString,
+            node__pb2.GetroutesResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneDisableNode(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneDisableNode',
+            node__pb2.AskrenedisablenodeRequest.SerializeToString,
+            node__pb2.AskrenedisablenodeResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneInformChannel(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneInformChannel',
+            node__pb2.AskreneinformchannelRequest.SerializeToString,
+            node__pb2.AskreneinformchannelResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneCreateChannel(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneCreateChannel',
+            node__pb2.AskrenecreatechannelRequest.SerializeToString,
+            node__pb2.AskrenecreatechannelResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneUpdateChannel(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneUpdateChannel',
+            node__pb2.AskreneupdatechannelRequest.SerializeToString,
+            node__pb2.AskreneupdatechannelResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneBiasChannel(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneBiasChannel',
+            node__pb2.AskrenebiaschannelRequest.SerializeToString,
+            node__pb2.AskrenebiaschannelResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def AskReneListReservations(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/AskReneListReservations',
+            node__pb2.AskrenelistreservationsRequest.SerializeToString,
+            node__pb2.AskrenelistreservationsResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def InjectPaymentOnion(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/InjectPaymentOnion',
+            node__pb2.InjectpaymentonionRequest.SerializeToString,
+            node__pb2.InjectpaymentonionResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
+    @staticmethod
+    def Xpay(request,
+            target,
+            options=(),
+            channel_credentials=None,
+            call_credentials=None,
+            insecure=False,
+            compression=None,
+            wait_for_ready=None,
+            timeout=None,
+            metadata=None):
+        return grpc.experimental.unary_unary(request, target, '/cln.Node/Xpay',
+            node__pb2.XpayRequest.SerializeToString,
+            node__pb2.XpayResponse.FromString,
+            options, channel_credentials,
+            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
+
     @staticmethod
     def SubscribeBlockAdded(request,
             target,
diff --git a/contrib/pyln-testing/pyln/testing/grpc2py.py b/contrib/pyln-testing/pyln/testing/grpc2py.py
index f6e8de909..c44bc65d7 100644
--- a/contrib/pyln-testing/pyln/testing/grpc2py.py
+++ b/contrib/pyln-testing/pyln/testing/grpc2py.py
@@ -441,6 +441,19 @@ def emergencyrecover2py(m):
     })
 
 
+def getemergencyrecoverdata2py(m):
+    return remove_default({
+        "filedata": hexlify(m.filedata),  # PrimitiveField in generate_composite
+    })
+
+
+def exposesecret2py(m):
+    return remove_default({
+        "codex32": m.codex32,  # PrimitiveField in generate_composite
+        "identifier": m.identifier,  # PrimitiveField in generate_composite
+    })
+
+
 def recover2py(m):
     return remove_default({
         "result": str(m.result),  # EnumField in generate_composite
@@ -1387,6 +1400,17 @@ def disableoffer2py(m):
     })
 
 
+def enableoffer2py(m):
+    return remove_default({
+        "active": m.active,  # PrimitiveField in generate_composite
+        "bolt12": m.bolt12,  # PrimitiveField in generate_composite
+        "label": m.label,  # PrimitiveField in generate_composite
+        "offer_id": hexlify(m.offer_id),  # PrimitiveField in generate_composite
+        "single_use": m.single_use,  # PrimitiveField in generate_composite
+        "used": m.used,  # PrimitiveField in generate_composite
+    })
+
+
 def disconnect2py(m):
     return remove_default({
     })
@@ -1591,6 +1615,20 @@ def getroute2py(m):
     })
 
 
+def listaddresses_addresses2py(m):
+    return remove_default({
+        "bech32": m.bech32,  # PrimitiveField in generate_composite
+        "keyidx": m.keyidx,  # PrimitiveField in generate_composite
+        "p2tr": m.p2tr,  # PrimitiveField in generate_composite
+    })
+
+
+def listaddresses2py(m):
+    return remove_default({
+        "addresses": [listaddresses_addresses2py(i) for i in m.addresses],  # ArrayField[composite] in generate_composite
+    })
+
+
 def listforwards_forwards2py(m):
     return remove_default({
         "status": str(m.status),  # EnumField in generate_composite
@@ -1988,6 +2026,16 @@ def splice_update2py(m):
     })
 
 
+def dev_splice2py(m):
+    return remove_default({
+        "dryrun": [m.dryrun for i in m.dryrun], # ArrayField[primitive] in generate_composite
+        "log": [m.log for i in m.log], # ArrayField[primitive] in generate_composite
+        "psbt": m.psbt,  # PrimitiveField in generate_composite
+        "tx": m.tx,  # PrimitiveField in generate_composite
+        "txid": m.txid,  # PrimitiveField in generate_composite
+    })
+
+
 def unreserveinputs_reservations2py(m):
     return remove_default({
         "reserved": m.reserved,  # PrimitiveField in generate_composite
@@ -2829,6 +2877,60 @@ def bkpr_listincome2py(m):
     })
 
 
+def bkpr_editdescriptionbypaymentid_updated2py(m):
+    return remove_default({
+        "type": str(m.item_type),  # EnumField in generate_composite
+        "account": m.account,  # PrimitiveField in generate_composite
+        "blockheight": m.blockheight,  # PrimitiveField in generate_composite
+        "credit_msat": amount2msat(m.credit_msat),  # PrimitiveField in generate_composite
+        "currency": m.currency,  # PrimitiveField in generate_composite
+        "debit_msat": amount2msat(m.debit_msat),  # PrimitiveField in generate_composite
+        "description": m.description,  # PrimitiveField in generate_composite
+        "fees_msat": amount2msat(m.fees_msat),  # PrimitiveField in generate_composite
+        "is_rebalance": m.is_rebalance,  # PrimitiveField in generate_composite
+        "origin": m.origin,  # PrimitiveField in generate_composite
+        "outpoint": m.outpoint,  # PrimitiveField in generate_composite
+        "part_id": m.part_id,  # PrimitiveField in generate_composite
+        "payment_id": hexlify(m.payment_id),  # PrimitiveField in generate_composite
+        "tag": m.tag,  # PrimitiveField in generate_composite
+        "timestamp": m.timestamp,  # PrimitiveField in generate_composite
+        "txid": hexlify(m.txid),  # PrimitiveField in generate_composite
+    })
+
+
+def bkpr_editdescriptionbypaymentid2py(m):
+    return remove_default({
+        "updated": [bkpr_editdescriptionbypaymentid_updated2py(i) for i in m.updated],  # ArrayField[composite] in generate_composite
+    })
+
+
+def bkpr_editdescriptionbyoutpoint_updated2py(m):
+    return remove_default({
+        "type": str(m.item_type),  # EnumField in generate_composite
+        "account": m.account,  # PrimitiveField in generate_composite
+        "blockheight": m.blockheight,  # PrimitiveField in generate_composite
+        "credit_msat": amount2msat(m.credit_msat),  # PrimitiveField in generate_composite
+        "currency": m.currency,  # PrimitiveField in generate_composite
+        "debit_msat": amount2msat(m.debit_msat),  # PrimitiveField in generate_composite
+        "description": m.description,  # PrimitiveField in generate_composite
+        "fees_msat": amount2msat(m.fees_msat),  # PrimitiveField in generate_composite
+        "is_rebalance": m.is_rebalance,  # PrimitiveField in generate_composite
+        "origin": m.origin,  # PrimitiveField in generate_composite
+        "outpoint": m.outpoint,  # PrimitiveField in generate_composite
+        "part_id": m.part_id,  # PrimitiveField in generate_composite
+        "payment_id": hexlify(m.payment_id),  # PrimitiveField in generate_composite
+        "tag": m.tag,  # PrimitiveField in generate_composite
+        "timestamp": m.timestamp,  # PrimitiveField in generate_composite
+        "txid": hexlify(m.txid),  # PrimitiveField in generate_composite
+    })
+
+
+def bkpr_editdescriptionbyoutpoint2py(m):
+    return remove_default({
+        "updated": [bkpr_editdescriptionbyoutpoint_updated2py(i) for i in m.updated],  # ArrayField[composite] in generate_composite
+    })
+
+
 def blacklistrune_blacklist2py(m):
     return remove_default({
         "end": m.end,  # PrimitiveField in generate_composite
@@ -2891,6 +2993,244 @@ def showrunes2py(m):
     })
 
 
+def askrene_unreserve2py(m):
+    return remove_default({
+    })
+
+
+def askrene_listlayers_layers_biases2py(m):
+    return remove_default({
+        "bias": m.bias,  # PrimitiveField in generate_composite
+        "description": m.description,  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listlayers_layers_channel_updates2py(m):
+    return remove_default({
+        "cltv_expiry_delta": m.cltv_expiry_delta,  # PrimitiveField in generate_composite
+        "enabled": m.enabled,  # PrimitiveField in generate_composite
+        "fee_base_msat": amount2msat(m.fee_base_msat),  # PrimitiveField in generate_composite
+        "fee_proportional_millionths": m.fee_proportional_millionths,  # PrimitiveField in generate_composite
+        "htlc_maximum_msat": amount2msat(m.htlc_maximum_msat),  # PrimitiveField in generate_composite
+        "htlc_minimum_msat": amount2msat(m.htlc_minimum_msat),  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listlayers_layers_constraints2py(m):
+    return remove_default({
+        "maximum_msat": amount2msat(m.maximum_msat),  # PrimitiveField in generate_composite
+        "minimum_msat": amount2msat(m.minimum_msat),  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+        "timestamp": m.timestamp,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listlayers_layers_created_channels2py(m):
+    return remove_default({
+        "capacity_msat": amount2msat(m.capacity_msat),  # PrimitiveField in generate_composite
+        "destination": hexlify(m.destination),  # PrimitiveField in generate_composite
+        "short_channel_id": m.short_channel_id,  # PrimitiveField in generate_composite
+        "source": hexlify(m.source),  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listlayers_layers2py(m):
+    return remove_default({
+        "biases": [askrene_listlayers_layers_biases2py(i) for i in m.biases],  # ArrayField[composite] in generate_composite
+        "channel_updates": [askrene_listlayers_layers_channel_updates2py(i) for i in m.channel_updates],  # ArrayField[composite] in generate_composite
+        "constraints": [askrene_listlayers_layers_constraints2py(i) for i in m.constraints],  # ArrayField[composite] in generate_composite
+        "created_channels": [askrene_listlayers_layers_created_channels2py(i) for i in m.created_channels],  # ArrayField[composite] in generate_composite
+        "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite
+        "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite
+        "layer": m.layer,  # PrimitiveField in generate_composite
+        "persistent": m.persistent,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listlayers2py(m):
+    return remove_default({
+        "layers": [askrene_listlayers_layers2py(i) for i in m.layers],  # ArrayField[composite] in generate_composite
+    })
+
+
+def askrene_create_layer_layers_biases2py(m):
+    return remove_default({
+        "bias": m.bias,  # PrimitiveField in generate_composite
+        "description": m.description,  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_create_layer_layers_channel_updates2py(m):
+    return remove_default({
+        "delay": m.delay,  # PrimitiveField in generate_composite
+        "fee_base_msat": amount2msat(m.fee_base_msat),  # PrimitiveField in generate_composite
+        "fee_proportional_millionths": m.fee_proportional_millionths,  # PrimitiveField in generate_composite
+        "htlc_maximum_msat": amount2msat(m.htlc_maximum_msat),  # PrimitiveField in generate_composite
+        "htlc_minimum_msat": amount2msat(m.htlc_minimum_msat),  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_create_layer_layers_constraints2py(m):
+    return remove_default({
+        "direction": m.direction,  # PrimitiveField in generate_composite
+        "maximum_msat": amount2msat(m.maximum_msat),  # PrimitiveField in generate_composite
+        "minimum_msat": amount2msat(m.minimum_msat),  # PrimitiveField in generate_composite
+        "short_channel_id": m.short_channel_id,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_create_layer_layers_created_channels2py(m):
+    return remove_default({
+        "capacity_msat": amount2msat(m.capacity_msat),  # PrimitiveField in generate_composite
+        "destination": hexlify(m.destination),  # PrimitiveField in generate_composite
+        "short_channel_id": m.short_channel_id,  # PrimitiveField in generate_composite
+        "source": hexlify(m.source),  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_create_layer_layers2py(m):
+    return remove_default({
+        "biases": [askrene_create_layer_layers_biases2py(i) for i in m.biases],  # ArrayField[composite] in generate_composite
+        "channel_updates": [askrene_create_layer_layers_channel_updates2py(i) for i in m.channel_updates],  # ArrayField[composite] in generate_composite
+        "constraints": [askrene_create_layer_layers_constraints2py(i) for i in m.constraints],  # ArrayField[composite] in generate_composite
+        "created_channels": [askrene_create_layer_layers_created_channels2py(i) for i in m.created_channels],  # ArrayField[composite] in generate_composite
+        "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite
+        "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite
+        "layer": m.layer,  # PrimitiveField in generate_composite
+        "persistent": m.persistent,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_create_layer2py(m):
+    return remove_default({
+        "layers": [askrene_create_layer_layers2py(i) for i in m.layers],  # ArrayField[composite] in generate_composite
+    })
+
+
+def askrene_remove_layer2py(m):
+    return remove_default({
+    })
+
+
+def askrene_reserve2py(m):
+    return remove_default({
+    })
+
+
+def askrene_age2py(m):
+    return remove_default({
+        "layer": m.layer,  # PrimitiveField in generate_composite
+        "num_removed": m.num_removed,  # PrimitiveField in generate_composite
+    })
+
+
+def getroutes_routes_path2py(m):
+    return remove_default({
+        "amount_msat": amount2msat(m.amount_msat),  # PrimitiveField in generate_composite
+        "delay": m.delay,  # PrimitiveField in generate_composite
+        "next_node_id": hexlify(m.next_node_id),  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def getroutes_routes2py(m):
+    return remove_default({
+        "path": [getroutes_routes_path2py(i) for i in m.path],  # ArrayField[composite] in generate_composite
+        "amount_msat": amount2msat(m.amount_msat),  # PrimitiveField in generate_composite
+        "final_cltv": m.final_cltv,  # PrimitiveField in generate_composite
+        "probability_ppm": m.probability_ppm,  # PrimitiveField in generate_composite
+    })
+
+
+def getroutes2py(m):
+    return remove_default({
+        "routes": [getroutes_routes2py(i) for i in m.routes],  # ArrayField[composite] in generate_composite
+        "probability_ppm": m.probability_ppm,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_disable_node2py(m):
+    return remove_default({
+    })
+
+
+def askrene_inform_channel_constraints2py(m):
+    return remove_default({
+        "layer": m.layer,  # PrimitiveField in generate_composite
+        "maximum_msat": amount2msat(m.maximum_msat),  # PrimitiveField in generate_composite
+        "minimum_msat": amount2msat(m.minimum_msat),  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+        "timestamp": m.timestamp,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_inform_channel2py(m):
+    return remove_default({
+        "constraints": [askrene_inform_channel_constraints2py(i) for i in m.constraints],  # ArrayField[composite] in generate_composite
+    })
+
+
+def askrene_create_channel2py(m):
+    return remove_default({
+    })
+
+
+def askrene_update_channel2py(m):
+    return remove_default({
+    })
+
+
+def askrene_bias_channel_biases2py(m):
+    return remove_default({
+        "bias": m.bias,  # PrimitiveField in generate_composite
+        "description": m.description,  # PrimitiveField in generate_composite
+        "layer": m.layer,  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_bias_channel2py(m):
+    return remove_default({
+        "biases": [askrene_bias_channel_biases2py(i) for i in m.biases],  # ArrayField[composite] in generate_composite
+    })
+
+
+def askrene_listreservations_reservations2py(m):
+    return remove_default({
+        "age_in_seconds": m.age_in_seconds,  # PrimitiveField in generate_composite
+        "amount_msat": amount2msat(m.amount_msat),  # PrimitiveField in generate_composite
+        "command_id": m.command_id,  # PrimitiveField in generate_composite
+        "short_channel_id_dir": m.short_channel_id_dir,  # PrimitiveField in generate_composite
+    })
+
+
+def askrene_listreservations2py(m):
+    return remove_default({
+        "reservations": [askrene_listreservations_reservations2py(i) for i in m.reservations],  # ArrayField[composite] in generate_composite
+    })
+
+
+def injectpaymentonion2py(m):
+    return remove_default({
+        "completed_at": m.completed_at,  # PrimitiveField in generate_composite
+        "created_at": m.created_at,  # PrimitiveField in generate_composite
+        "created_index": m.created_index,  # PrimitiveField in generate_composite
+    })
+
+
+def xpay2py(m):
+    return remove_default({
+        "amount_msat": amount2msat(m.amount_msat),  # PrimitiveField in generate_composite
+        "amount_sent_msat": amount2msat(m.amount_sent_msat),  # PrimitiveField in generate_composite
+        "failed_parts": m.failed_parts,  # PrimitiveField in generate_composite
+        "payment_preimage": hexlify(m.payment_preimage),  # PrimitiveField in generate_composite
+        "successful_parts": m.successful_parts,  # PrimitiveField in generate_composite
+    })
+
+
 def decodekeysend_routes2py(m): # manual override
     return remove_default({
         "expirydelta": m.expirydelta,