From 35c8c20802d2e73849a69859200f4566839c688f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Wed, 17 Sep 2025 19:37:35 +0200 Subject: [PATCH 01/12] feat: upgrade Go to 1.24 and update core dependencies - Upgrade Go version from 1.20 to 1.24 - Pin LND to v0.19.0-beta with replace directive - Update Loop from v0.27.1-beta to v0.31.2-beta with pinning - Upgrade OpenTelemetry packages to v1.38.0 - Update gRPC to v1.64.1 - Add new dependencies for Docker testing and database migrations - Update various indirect dependencies for compatibility --- go.mod | 181 +++++--- go.sum | 1354 ++++++++++---------------------------------------------- 2 files changed, 344 insertions(+), 1191 deletions(-) diff --git a/go.mod b/go.mod index f61add2..bd65056 100644 --- a/go.mod +++ b/go.mod @@ -1,56 +1,98 @@ module github.com/Elenpay/liquidator -go 1.20 +go 1.24 replace google.golang.org/protobuf => github.com/lightninglabs/protobuf-go-hex-display v1.30.0-hex-display +//pinned to lnd v0.19.0-beta +replace github.com/lightningnetwork/lnd => github.com/lightningnetwork/lnd v0.19.0-beta + +//pinned to loop v0.31.2-beta +replace github.com/lightninglabs/loop => github.com/lightninglabs/loop v0.31.2-beta + require ( github.com/btcsuite/btcd/btcutil v1.1.5 - github.com/lightninglabs/loop v0.27.1-beta - github.com/lightningnetwork/lnd v0.17.4-beta - go.opentelemetry.io/otel v1.21.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0 + github.com/lightningnetwork/lnd v0.19.0-beta + go.opentelemetry.io/otel v1.38.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0 - go.opentelemetry.io/otel/sdk v1.21.0 - google.golang.org/grpc v1.60.1 + go.opentelemetry.io/otel/sdk v1.38.0 + google.golang.org/grpc v1.64.1 ) require ( github.com/joho/godotenv v1.5.1 + github.com/lightninglabs/loop/looprpc v1.0.7 go.uber.org/goleak v1.3.0 go.uber.org/mock v0.4.0 ) require ( + dario.cat/mergo v1.0.1 // indirect + github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect github.com/Masterminds/semver/v3 v3.2.0 // indirect + github.com/Microsoft/go-winio v0.6.2 // indirect + github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect + github.com/btcsuite/btclog/v2 v2.0.1-0.20250110154127-3ae4bf1cb318 // indirect + github.com/containerd/continuity v0.3.0 // indirect + github.com/distribution/reference v0.6.0 // indirect + github.com/docker/cli v28.0.1+incompatible // indirect + github.com/docker/docker v28.0.1+incompatible // indirect + github.com/docker/go-connections v0.5.0 // indirect + github.com/docker/go-units v0.5.0 // indirect + github.com/go-viper/mapstructure/v2 v2.2.1 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect - github.com/jackc/pgerrcode v0.0.0-20220416144525-469b46aa5efa // indirect - github.com/lightningnetwork/lnd/fn v1.0.1 // indirect + github.com/golang-migrate/migrate/v4 v4.17.0 // indirect + github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/jackc/pgerrcode v0.0.0-20240316143900-6e2875d9b438 // indirect + github.com/jackc/pgx/v5 v5.6.0 // indirect + github.com/jackc/puddle/v2 v2.2.1 // indirect + github.com/klauspost/compress v1.17.9 // indirect + github.com/lightningnetwork/lnd/fn/v2 v2.0.8 // indirect + github.com/lightningnetwork/lnd/sqldb v1.0.9 // indirect github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect - github.com/onsi/ginkgo v1.16.4 // indirect + github.com/moby/docker-image-spec v1.3.1 // indirect + github.com/moby/sys/user v0.3.0 // indirect + github.com/moby/term v0.5.0 // indirect + github.com/ncruces/go-strftime v0.1.9 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect + github.com/opencontainers/image-spec v1.1.0 // indirect + github.com/opencontainers/runc v1.2.0 // indirect + github.com/ory/dockertest/v3 v3.10.0 // indirect + github.com/pkg/errors v0.9.1 // indirect github.com/sagikazarmark/locafero v0.4.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/shopspring/decimal v1.3.1 // indirect github.com/sourcegraph/conc v0.3.0 // indirect - golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240108191215-35c7eff3a6b1 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240108191215-35c7eff3a6b1 // indirect + github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect + github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect + github.com/xeipuuv/gojsonschema v1.2.0 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 // indirect + go.uber.org/atomic v1.10.0 // indirect + golang.org/x/exp v0.0.0-20240325151524-a685a6edb6d8 // indirect + golang.org/x/sync v0.12.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240730163845-b1a4ccb954bf // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf // indirect + pgregory.net/rapid v1.2.0 // indirect ) require ( github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect github.com/aead/siphash v1.0.1 // indirect - github.com/btcsuite/btcd v0.24.1-0.20240123000108-62e6af035ec5 // indirect - github.com/btcsuite/btcd/btcec/v2 v2.3.2 // indirect - github.com/btcsuite/btcd/btcutil/psbt v1.1.9 // indirect + github.com/btcsuite/btcd v0.24.3-0.20250318170759-4f4ea81776d6 // indirect + github.com/btcsuite/btcd/btcec/v2 v2.3.4 // indirect + github.com/btcsuite/btcd/btcutil/psbt v1.1.10 // indirect github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect - github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f // indirect - github.com/btcsuite/btcwallet v0.16.10-0.20240127010340-16b422a2e8bf // indirect - github.com/btcsuite/btcwallet/wallet/txauthor v1.3.3 // indirect - github.com/btcsuite/btcwallet/wallet/txrules v1.2.0 // indirect - github.com/btcsuite/btcwallet/wallet/txsizes v1.2.3 // indirect - github.com/btcsuite/btcwallet/walletdb v1.4.0 // indirect - github.com/btcsuite/btcwallet/wtxmgr v1.5.0 // indirect + github.com/btcsuite/btclog v0.0.0-20241003133417-09c4e92e319c // indirect + github.com/btcsuite/btcwallet v0.16.13 // indirect + github.com/btcsuite/btcwallet/wallet/txauthor v1.3.5 // indirect + github.com/btcsuite/btcwallet/wallet/txrules v1.2.2 // indirect + github.com/btcsuite/btcwallet/wallet/txsizes v1.2.5 // indirect + github.com/btcsuite/btcwallet/walletdb v1.5.1 // indirect + github.com/btcsuite/btcwallet/wtxmgr v1.5.6 // indirect github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd // indirect github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792 // indirect github.com/btcsuite/winsvc v1.0.0 // indirect @@ -59,51 +101,50 @@ require ( github.com/coreos/go-systemd/v22 v22.5.0 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/decred/dcrd/crypto/blake256 v1.0.1 // indirect - github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 // indirect + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 // indirect github.com/decred/dcrd/lru v1.1.2 // indirect github.com/dustin/go-humanize v1.0.1 // indirect github.com/fergusstrange/embedded-postgres v1.25.0 // indirect github.com/go-errors/errors v1.5.1 // indirect - github.com/go-logr/logr v1.4.1 // indirect + github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-macaroon-bakery/macaroonpb v1.0.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v4 v4.5.0 // indirect + github.com/golang-jwt/jwt/v4 v4.5.2 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/google/btree v1.1.2 // indirect - github.com/google/uuid v1.5.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/gorilla/websocket v1.5.1 // indirect github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect github.com/jackc/chunkreader/v2 v2.0.1 // indirect - github.com/jackc/pgconn v1.14.1 // indirect + github.com/jackc/pgconn v1.14.3 // indirect github.com/jackc/pgio v1.0.0 // indirect github.com/jackc/pgpassfile v1.0.0 // indirect - github.com/jackc/pgproto3/v2 v2.3.2 // indirect + github.com/jackc/pgproto3/v2 v2.3.3 // indirect github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 // indirect github.com/jackc/pgtype v1.14.0 // indirect - github.com/jackc/pgx/v4 v4.18.1 // indirect + github.com/jackc/pgx/v4 v4.18.2 // indirect github.com/jessevdk/go-flags v1.5.0 // indirect github.com/jonboulle/clockwork v0.4.0 // indirect - github.com/jrick/logrotate v1.0.0 // indirect + github.com/jrick/logrotate v1.1.2 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect github.com/kkdai/bstream v1.0.0 // indirect github.com/lib/pq v1.10.9 // indirect github.com/lightninglabs/gozmq v0.0.0-20191113021534-d20a764486bf // indirect - github.com/lightninglabs/loop/swapserverrpc v1.0.5 // indirect - github.com/lightninglabs/neutrino v0.16.0 // indirect + github.com/lightninglabs/loop/swapserverrpc v1.0.14 // indirect + github.com/lightninglabs/neutrino v0.16.1 // indirect github.com/lightninglabs/neutrino/cache v1.1.2 // indirect - github.com/lightningnetwork/lightning-onion v1.2.1-0.20230823005744-06182b1d7d2f // indirect + github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb // indirect github.com/lightningnetwork/lnd/clock v1.1.1 // indirect - github.com/lightningnetwork/lnd/healthcheck v1.2.3 // indirect - github.com/lightningnetwork/lnd/kvdb v1.4.4 // indirect + github.com/lightningnetwork/lnd/healthcheck v1.2.6 // indirect + github.com/lightningnetwork/lnd/kvdb v1.4.16 // indirect github.com/lightningnetwork/lnd/queue v1.1.1 // indirect github.com/lightningnetwork/lnd/ticker v1.1.1 // indirect - github.com/lightningnetwork/lnd/tlv v1.2.1 // indirect - github.com/lightningnetwork/lnd/tor v1.1.3 // indirect + github.com/lightningnetwork/lnd/tlv v1.3.1 // indirect + github.com/lightningnetwork/lnd/tor v1.1.6 // indirect github.com/ltcsuite/ltcd v0.22.1-beta // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/miekg/dns v1.1.57 // indirect @@ -113,45 +154,39 @@ require ( github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect github.com/rogpeppe/fastuuid v1.2.0 // indirect github.com/soheilhy/cmux v0.1.5 // indirect - github.com/stretchr/objx v0.5.1 // indirect - github.com/stretchr/testify v1.8.4 // indirect + github.com/stretchr/objx v0.5.2 // indirect + github.com/stretchr/testify v1.11.1 // indirect github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 // indirect github.com/tmc/grpc-websocket-proxy v0.0.0-20220101234140-673ab2c3ae75 // indirect github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510 // indirect - go.etcd.io/bbolt v1.3.8 // indirect - go.etcd.io/etcd/api/v3 v3.5.11 // indirect - go.etcd.io/etcd/client/pkg/v3 v3.5.11 // indirect - go.etcd.io/etcd/client/v2 v2.305.11 // indirect - go.etcd.io/etcd/client/v3 v3.5.11 // indirect - go.etcd.io/etcd/pkg/v3 v3.5.11 // indirect - go.etcd.io/etcd/raft/v3 v3.5.11 // indirect - go.etcd.io/etcd/server/v3 v3.5.11 // indirect - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 - go.opentelemetry.io/otel/metric v1.21.0 // indirect - go.opentelemetry.io/otel/trace v1.21.0 - go.opentelemetry.io/proto/otlp v1.0.0 // indirect + go.etcd.io/bbolt v1.3.11 // indirect + go.etcd.io/etcd/api/v3 v3.5.12 // indirect + go.etcd.io/etcd/client/pkg/v3 v3.5.12 // indirect + go.etcd.io/etcd/client/v2 v2.305.12 // indirect + go.etcd.io/etcd/client/v3 v3.5.12 // indirect + go.etcd.io/etcd/pkg/v3 v3.5.12 // indirect + go.etcd.io/etcd/raft/v3 v3.5.12 // indirect + go.etcd.io/etcd/server/v3 v3.5.12 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 + go.opentelemetry.io/otel/metric v1.38.0 // indirect + go.opentelemetry.io/otel/trace v1.38.0 + go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.26.0 // indirect - golang.org/x/crypto v0.21.0 // indirect - golang.org/x/mod v0.14.0 // indirect - golang.org/x/term v0.18.0 // indirect + golang.org/x/crypto v0.36.0 // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/term v0.30.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.17.0 // indirect + golang.org/x/tools v0.24.0 // indirect gopkg.in/errgo.v1 v1.0.1 // indirect gopkg.in/macaroon-bakery.v2 v2.3.0 // indirect gopkg.in/macaroon.v2 v2.1.0 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect - lukechampine.com/uint128 v1.3.0 // indirect - modernc.org/cc/v3 v3.41.0 // indirect - modernc.org/ccgo/v3 v3.16.15 // indirect - modernc.org/libc v1.40.1 // indirect + modernc.org/libc v1.55.3 // indirect modernc.org/mathutil v1.6.0 // indirect - modernc.org/memory v1.7.2 // indirect - modernc.org/opt v0.1.3 // indirect - modernc.org/sqlite v1.28.0 // indirect - modernc.org/strutil v1.2.0 // indirect - modernc.org/token v1.1.0 // indirect + modernc.org/memory v1.8.0 // indirect + modernc.org/sqlite v1.34.5 // indirect sigs.k8s.io/yaml v1.4.0 // indirect ) @@ -160,7 +195,7 @@ require ( github.com/beorn7/perks v1.0.1 // indirect github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect - github.com/golang/protobuf v1.5.3 // indirect + github.com/golang/protobuf v1.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/magiconair/properties v1.8.7 // indirect @@ -177,11 +212,11 @@ require ( github.com/spf13/pflag v1.0.5 // indirect github.com/spf13/viper v1.18.2 github.com/subosito/gotenv v1.6.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/sys v0.18.0 // indirect - golang.org/x/text v0.14.0 // indirect - google.golang.org/genproto v0.0.0-20240108191215-35c7eff3a6b1 // indirect - google.golang.org/protobuf v1.32.0 + golang.org/x/net v0.38.0 // indirect + golang.org/x/sys v0.35.0 // indirect + golang.org/x/text v0.23.0 // indirect + google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 // indirect + google.golang.org/protobuf v1.34.2 gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 3ce1efd..8ba8e6a 100644 --- a/go.sum +++ b/go.sum @@ -1,399 +1,17 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= -cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= -cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= -cloud.google.com/go v0.44.3/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= -cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= -cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= -cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= -cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= -cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= -cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= -cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= -cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= -cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= -cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= -cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= -cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= -cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= -cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= -cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= -cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= -cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= -cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= -cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= -cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= -cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= -cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= -cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc= -cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA= -cloud.google.com/go v0.100.1/go.mod h1:fs4QogzfH5n2pBXBP9vRiU+eCny7lD2vmFZy79Iuw1U= -cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A= -cloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc= -cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU= -cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA= -cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM= -cloud.google.com/go v0.107.0/go.mod h1:wpc2eNrD7hXUTy8EKS10jkxpZBjASrORK7goS+3YX2I= -cloud.google.com/go v0.111.0 h1:YHLKNupSD1KqjDbQ3+LVdQ81h/UJbJyZG203cEfnQgM= -cloud.google.com/go/accessapproval v1.4.0/go.mod h1:zybIuC3KpDOvotz59lFe5qxRZx6C75OtwbisN56xYB4= -cloud.google.com/go/accessapproval v1.5.0/go.mod h1:HFy3tuiGvMdcd/u+Cu5b9NkO1pEICJ46IR82PoUdplw= -cloud.google.com/go/accesscontextmanager v1.3.0/go.mod h1:TgCBehyr5gNMz7ZaH9xubp+CE8dkrszb4oK9CWyvD4o= -cloud.google.com/go/accesscontextmanager v1.4.0/go.mod h1:/Kjh7BBu/Gh83sv+K60vN9QE5NJcd80sU33vIe2IFPE= -cloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw= -cloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY= -cloud.google.com/go/aiplatform v1.27.0/go.mod h1:Bvxqtl40l0WImSb04d0hXFU7gDOiq9jQmorivIiWcKg= -cloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI= -cloud.google.com/go/analytics v0.12.0/go.mod h1:gkfj9h6XRf9+TS4bmuhPEShsh3hH8PAZzm/41OOhQd4= -cloud.google.com/go/apigateway v1.3.0/go.mod h1:89Z8Bhpmxu6AmUxuVRg/ECRGReEdiP3vQtk4Z1J9rJk= -cloud.google.com/go/apigateway v1.4.0/go.mod h1:pHVY9MKGaH9PQ3pJ4YLzoj6U5FUDeDFBllIz7WmzJoc= -cloud.google.com/go/apigeeconnect v1.3.0/go.mod h1:G/AwXFAKo0gIXkPTVfZDd2qA1TxBXJ3MgMRBQkIi9jc= -cloud.google.com/go/apigeeconnect v1.4.0/go.mod h1:kV4NwOKqjvt2JYR0AoIWo2QGfoRtn/pkS3QlHp0Ni04= -cloud.google.com/go/appengine v1.4.0/go.mod h1:CS2NhuBuDXM9f+qscZ6V86m1MIIqPj3WC/UoEuR1Sno= -cloud.google.com/go/appengine v1.5.0/go.mod h1:TfasSozdkFI0zeoxW3PTBLiNqRmzraodCWatWI9Dmak= -cloud.google.com/go/area120 v0.5.0/go.mod h1:DE/n4mp+iqVyvxHN41Vf1CR602GiHQjFPusMFW6bGR4= -cloud.google.com/go/area120 v0.6.0/go.mod h1:39yFJqWVgm0UZqWTOdqkLhjoC7uFfgXRC8g/ZegeAh0= -cloud.google.com/go/artifactregistry v1.6.0/go.mod h1:IYt0oBPSAGYj/kprzsBjZ/4LnG/zOcHyFHjWPCi6SAQ= -cloud.google.com/go/artifactregistry v1.7.0/go.mod h1:mqTOFOnGZx8EtSqK/ZWcsm/4U8B77rbcLP6ruDU2Ixk= -cloud.google.com/go/artifactregistry v1.8.0/go.mod h1:w3GQXkJX8hiKN0v+at4b0qotwijQbYUqF2GWkZzAhC0= -cloud.google.com/go/artifactregistry v1.9.0/go.mod h1:2K2RqvA2CYvAeARHRkLDhMDJ3OXy26h3XW+3/Jh2uYc= -cloud.google.com/go/asset v1.5.0/go.mod h1:5mfs8UvcM5wHhqtSv8J1CtxxaQq3AdBxxQi2jGW/K4o= -cloud.google.com/go/asset v1.7.0/go.mod h1:YbENsRK4+xTiL+Ofoj5Ckf+O17kJtgp3Y3nn4uzZz5s= -cloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjbytpUaW0= -cloud.google.com/go/asset v1.9.0/go.mod h1:83MOE6jEJBMqFKadM9NLRcs80Gdw76qGuHn8m3h8oHQ= -cloud.google.com/go/asset v1.10.0/go.mod h1:pLz7uokL80qKhzKr4xXGvBQXnzHn5evJAEAtZiIb0wY= -cloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY= -cloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw= -cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI= -cloud.google.com/go/assuredworkloads v1.8.0/go.mod h1:AsX2cqyNCOvEQC8RMPnoc0yEarXQk6WEKkxYfL6kGIo= -cloud.google.com/go/assuredworkloads v1.9.0/go.mod h1:kFuI1P78bplYtT77Tb1hi0FMxM0vVpRC7VVoJC3ZoT0= -cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0= -cloud.google.com/go/automl v1.6.0/go.mod h1:ugf8a6Fx+zP0D59WLhqgTDsQI9w07o64uf/Is3Nh5p8= -cloud.google.com/go/automl v1.7.0/go.mod h1:RL9MYCCsJEOmt0Wf3z9uzG0a7adTT1fe+aObgSpkCt8= -cloud.google.com/go/automl v1.8.0/go.mod h1:xWx7G/aPEe/NP+qzYXktoBSDfjO+vnKMGgsApGJJquM= -cloud.google.com/go/baremetalsolution v0.3.0/go.mod h1:XOrocE+pvK1xFfleEnShBlNAXf+j5blPPxrhjKgnIFc= -cloud.google.com/go/baremetalsolution v0.4.0/go.mod h1:BymplhAadOO/eBa7KewQ0Ppg4A4Wplbn+PsFKRLo0uI= -cloud.google.com/go/batch v0.3.0/go.mod h1:TR18ZoAekj1GuirsUsR1ZTKN3FC/4UDnScjT8NXImFE= -cloud.google.com/go/batch v0.4.0/go.mod h1:WZkHnP43R/QCGQsZ+0JyG4i79ranE2u8xvjq/9+STPE= -cloud.google.com/go/beyondcorp v0.2.0/go.mod h1:TB7Bd+EEtcw9PCPQhCJtJGjk/7TC6ckmnSFS+xwTfm4= -cloud.google.com/go/beyondcorp v0.3.0/go.mod h1:E5U5lcrcXMsCuoDNyGrpyTm/hn7ne941Jz2vmksAxW8= -cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= -cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= -cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= -cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= -cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= -cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= -cloud.google.com/go/bigquery v1.42.0/go.mod h1:8dRTJxhtG+vwBKzE5OseQn/hiydoQN3EedCaOdYmxRA= -cloud.google.com/go/bigquery v1.43.0/go.mod h1:ZMQcXHsl+xmU1z36G2jNGZmKp9zNY5BUua5wDgmNCfw= -cloud.google.com/go/bigquery v1.44.0/go.mod h1:0Y33VqXTEsbamHJvJHdFmtqHvMIY28aK1+dFsvaChGc= -cloud.google.com/go/billing v1.4.0/go.mod h1:g9IdKBEFlItS8bTtlrZdVLWSSdSyFUZKXNS02zKMOZY= -cloud.google.com/go/billing v1.5.0/go.mod h1:mztb1tBc3QekhjSgmpf/CV4LzWXLzCArwpLmP2Gm88s= -cloud.google.com/go/billing v1.6.0/go.mod h1:WoXzguj+BeHXPbKfNWkqVtDdzORazmCjraY+vrxcyvI= -cloud.google.com/go/billing v1.7.0/go.mod h1:q457N3Hbj9lYwwRbnlD7vUpyjq6u5U1RAOArInEiD5Y= -cloud.google.com/go/binaryauthorization v1.1.0/go.mod h1:xwnoWu3Y84jbuHa0zd526MJYmtnVXn0syOjaJgy4+dM= -cloud.google.com/go/binaryauthorization v1.2.0/go.mod h1:86WKkJHtRcv5ViNABtYMhhNWRrD1Vpi//uKEy7aYEfI= -cloud.google.com/go/binaryauthorization v1.3.0/go.mod h1:lRZbKgjDIIQvzYQS1p99A7/U1JqvqeZg0wiI5tp6tg0= -cloud.google.com/go/binaryauthorization v1.4.0/go.mod h1:tsSPQrBd77VLplV70GUhBf/Zm3FsKmgSqgm4UmiDItk= -cloud.google.com/go/certificatemanager v1.3.0/go.mod h1:n6twGDvcUBFu9uBgt4eYvvf3sQ6My8jADcOVwHmzadg= -cloud.google.com/go/certificatemanager v1.4.0/go.mod h1:vowpercVFyqs8ABSmrdV+GiFf2H/ch3KyudYQEMM590= -cloud.google.com/go/channel v1.8.0/go.mod h1:W5SwCXDJsq/rg3tn3oG0LOxpAo6IMxNa09ngphpSlnk= -cloud.google.com/go/channel v1.9.0/go.mod h1:jcu05W0my9Vx4mt3/rEHpfxc9eKi9XwsdDL8yBMbKUk= -cloud.google.com/go/cloudbuild v1.3.0/go.mod h1:WequR4ULxlqvMsjDEEEFnOG5ZSRSgWOywXYDb1vPE6U= -cloud.google.com/go/cloudbuild v1.4.0/go.mod h1:5Qwa40LHiOXmz3386FrjrYM93rM/hdRr7b53sySrTqA= -cloud.google.com/go/clouddms v1.3.0/go.mod h1:oK6XsCDdW4Ib3jCCBugx+gVjevp2TMXFtgxvPSee3OM= -cloud.google.com/go/clouddms v1.4.0/go.mod h1:Eh7sUGCC+aKry14O1NRljhjyrr0NFC0G2cjwX0cByRk= -cloud.google.com/go/cloudtasks v1.5.0/go.mod h1:fD92REy1x5woxkKEkLdvavGnPJGEn8Uic9nWuLzqCpY= -cloud.google.com/go/cloudtasks v1.6.0/go.mod h1:C6Io+sxuke9/KNRkbQpihnW93SWDU3uXt92nu85HkYI= -cloud.google.com/go/cloudtasks v1.7.0/go.mod h1:ImsfdYWwlWNJbdgPIIGJWC+gemEGTBK/SunNQQNCAb4= -cloud.google.com/go/cloudtasks v1.8.0/go.mod h1:gQXUIwCSOI4yPVK7DgTVFiiP0ZW/eQkydWzwVMdHxrI= -cloud.google.com/go/compute v0.1.0/go.mod h1:GAesmwr110a34z04OlxYkATPBEfVhkymfTBXtfbBFow= -cloud.google.com/go/compute v1.3.0/go.mod h1:cCZiE1NHEtai4wiufUhW8I8S1JKkAnhnQJWM7YD99wM= -cloud.google.com/go/compute v1.5.0/go.mod h1:9SMHyhJlzhlkJqrPAc839t2BZFTSk6Jdj6mkzQJeu0M= -cloud.google.com/go/compute v1.6.0/go.mod h1:T29tfhtVbq1wvAPo0E3+7vhgmkOYeXjhFvz/FMzPu0s= -cloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU= -cloud.google.com/go/compute v1.7.0/go.mod h1:435lt8av5oL9P3fv1OEzSbSUe+ybHXGMPQHHZWZxy9U= -cloud.google.com/go/compute v1.10.0/go.mod h1:ER5CLbMxl90o2jtNbGSbtfOpQKR0t15FOtRsugnLrlU= -cloud.google.com/go/compute v1.12.0/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= -cloud.google.com/go/compute v1.12.1/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= -cloud.google.com/go/compute v1.13.0/go.mod h1:5aPTS0cUNMIc1CE546K+Th6weJUNQErARyZtRXDJ8GE= -cloud.google.com/go/compute v1.14.0/go.mod h1:YfLtxrj9sU4Yxv+sXzZkyPjEyPBZfXHUvjxega5vAdo= -cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63rR+SXhcpA= -cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk= -cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU= -cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= -cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= -cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= -cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= -cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY= -cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck= -cloud.google.com/go/container v1.6.0/go.mod h1:Xazp7GjJSeUYo688S+6J5V+n/t+G5sKBTFkKNudGRxg= -cloud.google.com/go/container v1.7.0/go.mod h1:Dp5AHtmothHGX3DwwIHPgq45Y8KmNsgN3amoYfxVkLo= -cloud.google.com/go/containeranalysis v0.5.1/go.mod h1:1D92jd8gRR/c0fGMlymRgxWD3Qw9C1ff6/T7mLgVL8I= -cloud.google.com/go/containeranalysis v0.6.0/go.mod h1:HEJoiEIu+lEXM+k7+qLCci0h33lX3ZqoYFdmPcoO7s4= -cloud.google.com/go/datacatalog v1.3.0/go.mod h1:g9svFY6tuR+j+hrTw3J2dNcmI0dzmSiyOzm8kpLq0a0= -cloud.google.com/go/datacatalog v1.5.0/go.mod h1:M7GPLNQeLfWqeIm3iuiruhPzkt65+Bx8dAKvScX8jvs= -cloud.google.com/go/datacatalog v1.6.0/go.mod h1:+aEyF8JKg+uXcIdAmmaMUmZ3q1b/lKLtXCmXdnc0lbc= -cloud.google.com/go/datacatalog v1.7.0/go.mod h1:9mEl4AuDYWw81UGc41HonIHH7/sn52H0/tc8f8ZbZIE= -cloud.google.com/go/datacatalog v1.8.0/go.mod h1:KYuoVOv9BM8EYz/4eMFxrr4DUKhGIOXxZoKYF5wdISM= -cloud.google.com/go/dataflow v0.6.0/go.mod h1:9QwV89cGoxjjSR9/r7eFDqqjtvbKxAK2BaYU6PVk9UM= -cloud.google.com/go/dataflow v0.7.0/go.mod h1:PX526vb4ijFMesO1o202EaUmouZKBpjHsTlCtB4parQ= -cloud.google.com/go/dataform v0.3.0/go.mod h1:cj8uNliRlHpa6L3yVhDOBrUXH+BPAO1+KFMQQNSThKo= -cloud.google.com/go/dataform v0.4.0/go.mod h1:fwV6Y4Ty2yIFL89huYlEkwUPtS7YZinZbzzj5S9FzCE= -cloud.google.com/go/dataform v0.5.0/go.mod h1:GFUYRe8IBa2hcomWplodVmUx/iTL0FrsauObOM3Ipr0= -cloud.google.com/go/datafusion v1.4.0/go.mod h1:1Zb6VN+W6ALo85cXnM1IKiPw+yQMKMhB9TsTSRDo/38= -cloud.google.com/go/datafusion v1.5.0/go.mod h1:Kz+l1FGHB0J+4XF2fud96WMmRiq/wj8N9u007vyXZ2w= -cloud.google.com/go/datalabeling v0.5.0/go.mod h1:TGcJ0G2NzcsXSE/97yWjIZO0bXj0KbVlINXMG9ud42I= -cloud.google.com/go/datalabeling v0.6.0/go.mod h1:WqdISuk/+WIGeMkpw/1q7bK/tFEZxsrFJOJdY2bXvTQ= -cloud.google.com/go/dataplex v1.3.0/go.mod h1:hQuRtDg+fCiFgC8j0zV222HvzFQdRd+SVX8gdmFcZzA= -cloud.google.com/go/dataplex v1.4.0/go.mod h1:X51GfLXEMVJ6UN47ESVqvlsRplbLhcsAt0kZCCKsU0A= -cloud.google.com/go/dataproc v1.7.0/go.mod h1:CKAlMjII9H90RXaMpSxQ8EU6dQx6iAYNPcYPOkSbi8s= -cloud.google.com/go/dataproc v1.8.0/go.mod h1:5OW+zNAH0pMpw14JVrPONsxMQYMBqJuzORhIBfBn9uI= -cloud.google.com/go/dataqna v0.5.0/go.mod h1:90Hyk596ft3zUQ8NkFfvICSIfHFh1Bc7C4cK3vbhkeo= -cloud.google.com/go/dataqna v0.6.0/go.mod h1:1lqNpM7rqNLVgWBJyk5NF6Uen2PHym0jtVJonplVsDA= -cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= -cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= -cloud.google.com/go/datastore v1.10.0/go.mod h1:PC5UzAmDEkAmkfaknstTYbNpgE49HAgW2J1gcgUfmdM= -cloud.google.com/go/datastream v1.2.0/go.mod h1:i/uTP8/fZwgATHS/XFu0TcNUhuA0twZxxQ3EyCUQMwo= -cloud.google.com/go/datastream v1.3.0/go.mod h1:cqlOX8xlyYF/uxhiKn6Hbv6WjwPPuI9W2M9SAXwaLLQ= -cloud.google.com/go/datastream v1.4.0/go.mod h1:h9dpzScPhDTs5noEMQVWP8Wx8AFBRyS0s8KWPx/9r0g= -cloud.google.com/go/datastream v1.5.0/go.mod h1:6TZMMNPwjUqZHBKPQ1wwXpb0d5VDVPl2/XoS5yi88q4= -cloud.google.com/go/deploy v1.4.0/go.mod h1:5Xghikd4VrmMLNaF6FiRFDlHb59VM59YoDQnOUdsH/c= -cloud.google.com/go/deploy v1.5.0/go.mod h1:ffgdD0B89tToyW/U/D2eL0jN2+IEV/3EMuXHA0l4r+s= -cloud.google.com/go/dialogflow v1.15.0/go.mod h1:HbHDWs33WOGJgn6rfzBW1Kv807BE3O1+xGbn59zZWI4= -cloud.google.com/go/dialogflow v1.16.1/go.mod h1:po6LlzGfK+smoSmTBnbkIZY2w8ffjz/RcGSS+sh1el0= -cloud.google.com/go/dialogflow v1.17.0/go.mod h1:YNP09C/kXA1aZdBgC/VtXX74G/TKn7XVCcVumTflA+8= -cloud.google.com/go/dialogflow v1.18.0/go.mod h1:trO7Zu5YdyEuR+BhSNOqJezyFQ3aUzz0njv7sMx/iek= -cloud.google.com/go/dialogflow v1.19.0/go.mod h1:JVmlG1TwykZDtxtTXujec4tQ+D8SBFMoosgy+6Gn0s0= -cloud.google.com/go/dlp v1.6.0/go.mod h1:9eyB2xIhpU0sVwUixfBubDoRwP+GjeUoxxeueZmqvmM= -cloud.google.com/go/dlp v1.7.0/go.mod h1:68ak9vCiMBjbasxeVD17hVPxDEck+ExiHavX8kiHG+Q= -cloud.google.com/go/documentai v1.7.0/go.mod h1:lJvftZB5NRiFSX4moiye1SMxHx0Bc3x1+p9e/RfXYiU= -cloud.google.com/go/documentai v1.8.0/go.mod h1:xGHNEB7CtsnySCNrCFdCyyMz44RhFEEX2Q7UD0c5IhU= -cloud.google.com/go/documentai v1.9.0/go.mod h1:FS5485S8R00U10GhgBC0aNGrJxBP8ZVpEeJ7PQDZd6k= -cloud.google.com/go/documentai v1.10.0/go.mod h1:vod47hKQIPeCfN2QS/jULIvQTugbmdc0ZvxxfQY1bg4= -cloud.google.com/go/domains v0.6.0/go.mod h1:T9Rz3GasrpYk6mEGHh4rymIhjlnIuB4ofT1wTxDeT4Y= -cloud.google.com/go/domains v0.7.0/go.mod h1:PtZeqS1xjnXuRPKE/88Iru/LdfoRyEHYA9nFQf4UKpg= -cloud.google.com/go/edgecontainer v0.1.0/go.mod h1:WgkZ9tp10bFxqO8BLPqv2LlfmQF1X8lZqwW4r1BTajk= -cloud.google.com/go/edgecontainer v0.2.0/go.mod h1:RTmLijy+lGpQ7BXuTDa4C4ssxyXT34NIuHIgKuP4s5w= -cloud.google.com/go/errorreporting v0.3.0/go.mod h1:xsP2yaAp+OAW4OIm60An2bbLpqIhKXdWR/tawvl7QzU= -cloud.google.com/go/essentialcontacts v1.3.0/go.mod h1:r+OnHa5jfj90qIfZDO/VztSFqbQan7HV75p8sA+mdGI= -cloud.google.com/go/essentialcontacts v1.4.0/go.mod h1:8tRldvHYsmnBCHdFpvU+GL75oWiBKl80BiqlFh9tp+8= -cloud.google.com/go/eventarc v1.7.0/go.mod h1:6ctpF3zTnaQCxUjHUdcfgcA1A2T309+omHZth7gDfmc= -cloud.google.com/go/eventarc v1.8.0/go.mod h1:imbzxkyAU4ubfsaKYdQg04WS1NvncblHEup4kvF+4gw= -cloud.google.com/go/filestore v1.3.0/go.mod h1:+qbvHGvXU1HaKX2nD0WEPo92TP/8AQuCVEBXNY9z0+w= -cloud.google.com/go/filestore v1.4.0/go.mod h1:PaG5oDfo9r224f8OYXURtAsY+Fbyq/bLYoINEK8XQAI= -cloud.google.com/go/firestore v1.9.0/go.mod h1:HMkjKHNTtRyZNiMzu7YAsLr9K3X2udY2AMwDaMEQiiE= -cloud.google.com/go/functions v1.6.0/go.mod h1:3H1UA3qiIPRWD7PeZKLvHZ9SaQhR26XIJcC0A5GbvAk= -cloud.google.com/go/functions v1.7.0/go.mod h1:+d+QBcWM+RsrgZfV9xo6KfA1GlzJfxcfZcRPEhDDfzg= -cloud.google.com/go/functions v1.8.0/go.mod h1:RTZ4/HsQjIqIYP9a9YPbU+QFoQsAlYgrwOXJWHn1POY= -cloud.google.com/go/functions v1.9.0/go.mod h1:Y+Dz8yGguzO3PpIjhLTbnqV1CWmgQ5UwtlpzoyquQ08= -cloud.google.com/go/gaming v1.5.0/go.mod h1:ol7rGcxP/qHTRQE/RO4bxkXq+Fix0j6D4LFPzYTIrDM= -cloud.google.com/go/gaming v1.6.0/go.mod h1:YMU1GEvA39Qt3zWGyAVA9bpYz/yAhTvaQ1t2sK4KPUA= -cloud.google.com/go/gaming v1.7.0/go.mod h1:LrB8U7MHdGgFG851iHAfqUdLcKBdQ55hzXy9xBJz0+w= -cloud.google.com/go/gaming v1.8.0/go.mod h1:xAqjS8b7jAVW0KFYeRUxngo9My3f33kFmua++Pi+ggM= -cloud.google.com/go/gkebackup v0.2.0/go.mod h1:XKvv/4LfG829/B8B7xRkk8zRrOEbKtEam6yNfuQNH60= -cloud.google.com/go/gkebackup v0.3.0/go.mod h1:n/E671i1aOQvUxT541aTkCwExO/bTer2HDlj4TsBRAo= -cloud.google.com/go/gkeconnect v0.5.0/go.mod h1:c5lsNAg5EwAy7fkqX/+goqFsU1Da/jQFqArp+wGNr/o= -cloud.google.com/go/gkeconnect v0.6.0/go.mod h1:Mln67KyU/sHJEBY8kFZ0xTeyPtzbq9StAVvEULYK16A= -cloud.google.com/go/gkehub v0.9.0/go.mod h1:WYHN6WG8w9bXU0hqNxt8rm5uxnk8IH+lPY9J2TV7BK0= -cloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y977wO+hBH0= -cloud.google.com/go/gkemulticloud v0.3.0/go.mod h1:7orzy7O0S+5kq95e4Hpn7RysVA7dPs8W/GgfUtsPbrA= -cloud.google.com/go/gkemulticloud v0.4.0/go.mod h1:E9gxVBnseLWCk24ch+P9+B2CoDFJZTyIgLKSalC7tuI= -cloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc= -cloud.google.com/go/gsuiteaddons v1.3.0/go.mod h1:EUNK/J1lZEZO8yPtykKxLXI6JSVN2rg9bN8SXOa0bgM= -cloud.google.com/go/gsuiteaddons v1.4.0/go.mod h1:rZK5I8hht7u7HxFQcFei0+AtfS9uSushomRlg+3ua1o= -cloud.google.com/go/iam v0.1.0/go.mod h1:vcUNEa0pEm0qRVpmWepWaFMIAI8/hjB9mO8rNCJtF6c= -cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY= -cloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc= -cloud.google.com/go/iam v0.6.0/go.mod h1:+1AH33ueBne5MzYccyMHtEKqLE4/kJOibtffMHDMFMc= -cloud.google.com/go/iam v0.7.0/go.mod h1:H5Br8wRaDGNc8XP3keLc4unfUUZeyH3Sfl9XpQEYOeg= -cloud.google.com/go/iam v0.8.0/go.mod h1:lga0/y3iH6CX7sYqypWJ33hf7kkfXJag67naqGESjkE= -cloud.google.com/go/iap v1.4.0/go.mod h1:RGFwRJdihTINIe4wZ2iCP0zF/qu18ZwyKxrhMhygBEc= -cloud.google.com/go/iap v1.5.0/go.mod h1:UH/CGgKd4KyohZL5Pt0jSKE4m3FR51qg6FKQ/z/Ix9A= -cloud.google.com/go/ids v1.1.0/go.mod h1:WIuwCaYVOzHIj2OhN9HAwvW+DBdmUAdcWlFxRl+KubM= -cloud.google.com/go/ids v1.2.0/go.mod h1:5WXvp4n25S0rA/mQWAg1YEEBBq6/s+7ml1RDCW1IrcY= -cloud.google.com/go/iot v1.3.0/go.mod h1:r7RGh2B61+B8oz0AGE+J72AhA0G7tdXItODWsaA2oLs= -cloud.google.com/go/iot v1.4.0/go.mod h1:dIDxPOn0UvNDUMD8Ger7FIaTuvMkj+aGk94RPP0iV+g= -cloud.google.com/go/kms v1.4.0/go.mod h1:fajBHndQ+6ubNw6Ss2sSd+SWvjL26RNo/dr7uxsnnOA= -cloud.google.com/go/kms v1.5.0/go.mod h1:QJS2YY0eJGBg3mnDfuaCyLauWwBJiHRboYxJ++1xJNg= -cloud.google.com/go/kms v1.6.0/go.mod h1:Jjy850yySiasBUDi6KFUwUv2n1+o7QZFyuUJg6OgjA0= -cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic= -cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI= -cloud.google.com/go/language v1.7.0/go.mod h1:DJ6dYN/W+SQOjF8e1hLQXMF21AkH2w9wiPzPCJa2MIE= -cloud.google.com/go/language v1.8.0/go.mod h1:qYPVHf7SPoNNiCL2Dr0FfEFNil1qi3pQEyygwpgVKB8= -cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8= -cloud.google.com/go/lifesciences v0.6.0/go.mod h1:ddj6tSX/7BOnhxCSd3ZcETvtNr8NZ6t/iPhY2Tyfu08= -cloud.google.com/go/logging v1.6.1/go.mod h1:5ZO0mHHbvm8gEmeEUHrmDlTDSu5imF6MUP9OfilNXBw= -cloud.google.com/go/longrunning v0.1.1/go.mod h1:UUFxuDWkv22EuY93jjmDMFT5GPQKeFVJBIF6QlTqdsE= -cloud.google.com/go/longrunning v0.3.0/go.mod h1:qth9Y41RRSUE69rDcOn6DdK3HfQfsUI0YSmW3iIlLJc= -cloud.google.com/go/managedidentities v1.3.0/go.mod h1:UzlW3cBOiPrzucO5qWkNkh0w33KFtBJU281hacNvsdE= -cloud.google.com/go/managedidentities v1.4.0/go.mod h1:NWSBYbEMgqmbZsLIyKvxrYbtqOsxY1ZrGM+9RgDqInM= -cloud.google.com/go/maps v0.1.0/go.mod h1:BQM97WGyfw9FWEmQMpZ5T6cpovXXSd1cGmFma94eubI= -cloud.google.com/go/mediatranslation v0.5.0/go.mod h1:jGPUhGTybqsPQn91pNXw0xVHfuJ3leR1wj37oU3y1f4= -cloud.google.com/go/mediatranslation v0.6.0/go.mod h1:hHdBCTYNigsBxshbznuIMFNe5QXEowAuNmmC7h8pu5w= -cloud.google.com/go/memcache v1.4.0/go.mod h1:rTOfiGZtJX1AaFUrOgsMHX5kAzaTQ8azHiuDoTPzNsE= -cloud.google.com/go/memcache v1.5.0/go.mod h1:dk3fCK7dVo0cUU2c36jKb4VqKPS22BTkf81Xq617aWM= -cloud.google.com/go/memcache v1.6.0/go.mod h1:XS5xB0eQZdHtTuTF9Hf8eJkKtR3pVRCcvJwtm68T3rA= -cloud.google.com/go/memcache v1.7.0/go.mod h1:ywMKfjWhNtkQTxrWxCkCFkoPjLHPW6A7WOTVI8xy3LY= -cloud.google.com/go/metastore v1.5.0/go.mod h1:2ZNrDcQwghfdtCwJ33nM0+GrBGlVuh8rakL3vdPY3XY= -cloud.google.com/go/metastore v1.6.0/go.mod h1:6cyQTls8CWXzk45G55x57DVQ9gWg7RiH65+YgPsNh9s= -cloud.google.com/go/metastore v1.7.0/go.mod h1:s45D0B4IlsINu87/AsWiEVYbLaIMeUSoxlKKDqBGFS8= -cloud.google.com/go/metastore v1.8.0/go.mod h1:zHiMc4ZUpBiM7twCIFQmJ9JMEkDSyZS9U12uf7wHqSI= -cloud.google.com/go/monitoring v1.7.0/go.mod h1:HpYse6kkGo//7p6sT0wsIC6IBDET0RhIsnmlA53dvEk= -cloud.google.com/go/monitoring v1.8.0/go.mod h1:E7PtoMJ1kQXWxPjB6mv2fhC5/15jInuulFdYYtlcvT4= -cloud.google.com/go/networkconnectivity v1.4.0/go.mod h1:nOl7YL8odKyAOtzNX73/M5/mGZgqqMeryi6UPZTk/rA= -cloud.google.com/go/networkconnectivity v1.5.0/go.mod h1:3GzqJx7uhtlM3kln0+x5wyFvuVH1pIBJjhCpjzSt75o= -cloud.google.com/go/networkconnectivity v1.6.0/go.mod h1:OJOoEXW+0LAxHh89nXd64uGG+FbQoeH8DtxCHVOMlaM= -cloud.google.com/go/networkconnectivity v1.7.0/go.mod h1:RMuSbkdbPwNMQjB5HBWD5MpTBnNm39iAVpC3TmsExt8= -cloud.google.com/go/networkmanagement v1.4.0/go.mod h1:Q9mdLLRn60AsOrPc8rs8iNV6OHXaGcDdsIQe1ohekq8= -cloud.google.com/go/networkmanagement v1.5.0/go.mod h1:ZnOeZ/evzUdUsnvRt792H0uYEnHQEMaz+REhhzJRcf4= -cloud.google.com/go/networksecurity v0.5.0/go.mod h1:xS6fOCoqpVC5zx15Z/MqkfDwH4+m/61A3ODiDV1xmiQ= -cloud.google.com/go/networksecurity v0.6.0/go.mod h1:Q5fjhTr9WMI5mbpRYEbiexTzROf7ZbDzvzCrNl14nyU= -cloud.google.com/go/notebooks v1.2.0/go.mod h1:9+wtppMfVPUeJ8fIWPOq1UnATHISkGXGqTkxeieQ6UY= -cloud.google.com/go/notebooks v1.3.0/go.mod h1:bFR5lj07DtCPC7YAAJ//vHskFBxA5JzYlH68kXVdk34= -cloud.google.com/go/notebooks v1.4.0/go.mod h1:4QPMngcwmgb6uw7Po99B2xv5ufVoIQ7nOGDyL4P8AgA= -cloud.google.com/go/notebooks v1.5.0/go.mod h1:q8mwhnP9aR8Hpfnrc5iN5IBhrXUy8S2vuYs+kBJ/gu0= -cloud.google.com/go/optimization v1.1.0/go.mod h1:5po+wfvX5AQlPznyVEZjGJTMr4+CAkJf2XSTQOOl9l4= -cloud.google.com/go/optimization v1.2.0/go.mod h1:Lr7SOHdRDENsh+WXVmQhQTrzdu9ybg0NecjHidBq6xs= -cloud.google.com/go/orchestration v1.3.0/go.mod h1:Sj5tq/JpWiB//X/q3Ngwdl5K7B7Y0KZ7bfv0wL6fqVA= -cloud.google.com/go/orchestration v1.4.0/go.mod h1:6W5NLFWs2TlniBphAViZEVhrXRSMgUGDfW7vrWKvsBk= -cloud.google.com/go/orgpolicy v1.4.0/go.mod h1:xrSLIV4RePWmP9P3tBl8S93lTmlAxjm06NSm2UTmKvE= -cloud.google.com/go/orgpolicy v1.5.0/go.mod h1:hZEc5q3wzwXJaKrsx5+Ewg0u1LxJ51nNFlext7Tanwc= -cloud.google.com/go/osconfig v1.7.0/go.mod h1:oVHeCeZELfJP7XLxcBGTMBvRO+1nQ5tFG9VQTmYS2Fs= -cloud.google.com/go/osconfig v1.8.0/go.mod h1:EQqZLu5w5XA7eKizepumcvWx+m8mJUhEwiPqWiZeEdg= -cloud.google.com/go/osconfig v1.9.0/go.mod h1:Yx+IeIZJ3bdWmzbQU4fxNl8xsZ4amB+dygAwFPlvnNo= -cloud.google.com/go/osconfig v1.10.0/go.mod h1:uMhCzqC5I8zfD9zDEAfvgVhDS8oIjySWh+l4WK6GnWw= -cloud.google.com/go/oslogin v1.4.0/go.mod h1:YdgMXWRaElXz/lDk1Na6Fh5orF7gvmJ0FGLIs9LId4E= -cloud.google.com/go/oslogin v1.5.0/go.mod h1:D260Qj11W2qx/HVF29zBg+0fd6YCSjSqLUkY/qEenQU= -cloud.google.com/go/oslogin v1.6.0/go.mod h1:zOJ1O3+dTU8WPlGEkFSh7qeHPPSoxrcMbbK1Nm2iX70= -cloud.google.com/go/oslogin v1.7.0/go.mod h1:e04SN0xO1UNJ1M5GP0vzVBFicIe4O53FOfcixIqTyXo= -cloud.google.com/go/phishingprotection v0.5.0/go.mod h1:Y3HZknsK9bc9dMi+oE8Bim0lczMU6hrX0UpADuMefr0= -cloud.google.com/go/phishingprotection v0.6.0/go.mod h1:9Y3LBLgy0kDTcYET8ZH3bq/7qni15yVUoAxiFxnlSUA= -cloud.google.com/go/policytroubleshooter v1.3.0/go.mod h1:qy0+VwANja+kKrjlQuOzmlvscn4RNsAc0e15GGqfMxg= -cloud.google.com/go/policytroubleshooter v1.4.0/go.mod h1:DZT4BcRw3QoO8ota9xw/LKtPa8lKeCByYeKTIf/vxdE= -cloud.google.com/go/privatecatalog v0.5.0/go.mod h1:XgosMUvvPyxDjAVNDYxJ7wBW8//hLDDYmnsNcMGq1K0= -cloud.google.com/go/privatecatalog v0.6.0/go.mod h1:i/fbkZR0hLN29eEWiiwue8Pb+GforiEIBnV9yrRUOKI= -cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= -cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= -cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= -cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= -cloud.google.com/go/pubsub v1.26.0/go.mod h1:QgBH3U/jdJy/ftjPhTkyXNj543Tin1pRYcdcPRnFIRI= -cloud.google.com/go/pubsub v1.27.1/go.mod h1:hQN39ymbV9geqBnfQq6Xf63yNhUAhv9CZhzp5O6qsW0= -cloud.google.com/go/pubsublite v1.5.0/go.mod h1:xapqNQ1CuLfGi23Yda/9l4bBCKz/wC3KIJ5gKcxveZg= -cloud.google.com/go/recaptchaenterprise v1.3.1/go.mod h1:OdD+q+y4XGeAlxRaMn1Y7/GveP6zmq76byL6tjPE7d4= -cloud.google.com/go/recaptchaenterprise/v2 v2.1.0/go.mod h1:w9yVqajwroDNTfGuhmOjPDN//rZGySaf6PtFVcSCa7o= -cloud.google.com/go/recaptchaenterprise/v2 v2.2.0/go.mod h1:/Zu5jisWGeERrd5HnlS3EUGb/D335f9k51B/FVil0jk= -cloud.google.com/go/recaptchaenterprise/v2 v2.3.0/go.mod h1:O9LwGCjrhGHBQET5CA7dd5NwwNQUErSgEDit1DLNTdo= -cloud.google.com/go/recaptchaenterprise/v2 v2.4.0/go.mod h1:Am3LHfOuBstrLrNCBrlI5sbwx9LBg3te2N6hGvHn2mE= -cloud.google.com/go/recaptchaenterprise/v2 v2.5.0/go.mod h1:O8LzcHXN3rz0j+LBC91jrwI3R+1ZSZEWrfL7XHgNo9U= -cloud.google.com/go/recommendationengine v0.5.0/go.mod h1:E5756pJcVFeVgaQv3WNpImkFP8a+RptV6dDLGPILjvg= -cloud.google.com/go/recommendationengine v0.6.0/go.mod h1:08mq2umu9oIqc7tDy8sx+MNJdLG0fUi3vaSVbztHgJ4= -cloud.google.com/go/recommender v1.5.0/go.mod h1:jdoeiBIVrJe9gQjwd759ecLJbxCDED4A6p+mqoqDvTg= -cloud.google.com/go/recommender v1.6.0/go.mod h1:+yETpm25mcoiECKh9DEScGzIRyDKpZ0cEhWGo+8bo+c= -cloud.google.com/go/recommender v1.7.0/go.mod h1:XLHs/W+T8olwlGOgfQenXBTbIseGclClff6lhFVe9Bs= -cloud.google.com/go/recommender v1.8.0/go.mod h1:PkjXrTT05BFKwxaUxQmtIlrtj0kph108r02ZZQ5FE70= -cloud.google.com/go/redis v1.7.0/go.mod h1:V3x5Jq1jzUcg+UNsRvdmsfuFnit1cfe3Z/PGyq/lm4Y= -cloud.google.com/go/redis v1.8.0/go.mod h1:Fm2szCDavWzBk2cDKxrkmWBqoCiL1+Ctwq7EyqBCA/A= -cloud.google.com/go/redis v1.9.0/go.mod h1:HMYQuajvb2D0LvMgZmLDZW8V5aOC/WxstZHiy4g8OiA= -cloud.google.com/go/redis v1.10.0/go.mod h1:ThJf3mMBQtW18JzGgh41/Wld6vnDDc/F/F35UolRZPM= -cloud.google.com/go/resourcemanager v1.3.0/go.mod h1:bAtrTjZQFJkiWTPDb1WBjzvc6/kifjj4QBYuKCCoqKA= -cloud.google.com/go/resourcemanager v1.4.0/go.mod h1:MwxuzkumyTX7/a3n37gmsT3py7LIXwrShilPh3P1tR0= -cloud.google.com/go/resourcesettings v1.3.0/go.mod h1:lzew8VfESA5DQ8gdlHwMrqZs1S9V87v3oCnKCWoOuQU= -cloud.google.com/go/resourcesettings v1.4.0/go.mod h1:ldiH9IJpcrlC3VSuCGvjR5of/ezRrOxFtpJoJo5SmXg= -cloud.google.com/go/retail v1.8.0/go.mod h1:QblKS8waDmNUhghY2TI9O3JLlFk8jybHeV4BF19FrE4= -cloud.google.com/go/retail v1.9.0/go.mod h1:g6jb6mKuCS1QKnH/dpu7isX253absFl6iE92nHwlBUY= -cloud.google.com/go/retail v1.10.0/go.mod h1:2gDk9HsL4HMS4oZwz6daui2/jmKvqShXKQuB2RZ+cCc= -cloud.google.com/go/retail v1.11.0/go.mod h1:MBLk1NaWPmh6iVFSz9MeKG/Psyd7TAgm6y/9L2B4x9Y= -cloud.google.com/go/run v0.2.0/go.mod h1:CNtKsTA1sDcnqqIFR3Pb5Tq0usWxJJvsWOCPldRU3Do= -cloud.google.com/go/run v0.3.0/go.mod h1:TuyY1+taHxTjrD0ZFk2iAR+xyOXEA0ztb7U3UNA0zBo= -cloud.google.com/go/scheduler v1.4.0/go.mod h1:drcJBmxF3aqZJRhmkHQ9b3uSSpQoltBPGPxGAWROx6s= -cloud.google.com/go/scheduler v1.5.0/go.mod h1:ri073ym49NW3AfT6DZi21vLZrG07GXr5p3H1KxN5QlI= -cloud.google.com/go/scheduler v1.6.0/go.mod h1:SgeKVM7MIwPn3BqtcBntpLyrIJftQISRrYB5ZtT+KOk= -cloud.google.com/go/scheduler v1.7.0/go.mod h1:jyCiBqWW956uBjjPMMuX09n3x37mtyPJegEWKxRsn44= -cloud.google.com/go/secretmanager v1.6.0/go.mod h1:awVa/OXF6IiyaU1wQ34inzQNc4ISIDIrId8qE5QGgKA= -cloud.google.com/go/secretmanager v1.8.0/go.mod h1:hnVgi/bN5MYHd3Gt0SPuTPPp5ENina1/LxM+2W9U9J4= -cloud.google.com/go/secretmanager v1.9.0/go.mod h1:b71qH2l1yHmWQHt9LC80akm86mX8AL6X1MA01dW8ht4= -cloud.google.com/go/security v1.5.0/go.mod h1:lgxGdyOKKjHL4YG3/YwIL2zLqMFCKs0UbQwgyZmfJl4= -cloud.google.com/go/security v1.7.0/go.mod h1:mZklORHl6Bg7CNnnjLH//0UlAlaXqiG7Lb9PsPXLfD0= -cloud.google.com/go/security v1.8.0/go.mod h1:hAQOwgmaHhztFhiQ41CjDODdWP0+AE1B3sX4OFlq+GU= -cloud.google.com/go/security v1.9.0/go.mod h1:6Ta1bO8LXI89nZnmnsZGp9lVoVWXqsVbIq/t9dzI+2Q= -cloud.google.com/go/security v1.10.0/go.mod h1:QtOMZByJVlibUT2h9afNDWRZ1G96gVywH8T5GUSb9IA= -cloud.google.com/go/securitycenter v1.13.0/go.mod h1:cv5qNAqjY84FCN6Y9z28WlkKXyWsgLO832YiWwkCWcU= -cloud.google.com/go/securitycenter v1.14.0/go.mod h1:gZLAhtyKv85n52XYWt6RmeBdydyxfPeTrpToDPw4Auc= -cloud.google.com/go/securitycenter v1.15.0/go.mod h1:PeKJ0t8MoFmmXLXWm41JidyzI3PJjd8sXWaVqg43WWk= -cloud.google.com/go/securitycenter v1.16.0/go.mod h1:Q9GMaLQFUD+5ZTabrbujNWLtSLZIZF7SAR0wWECrjdk= -cloud.google.com/go/servicecontrol v1.4.0/go.mod h1:o0hUSJ1TXJAmi/7fLJAedOovnujSEvjKCAFNXPQ1RaU= -cloud.google.com/go/servicecontrol v1.5.0/go.mod h1:qM0CnXHhyqKVuiZnGKrIurvVImCs8gmqWsDoqe9sU1s= -cloud.google.com/go/servicedirectory v1.4.0/go.mod h1:gH1MUaZCgtP7qQiI+F+A+OpeKF/HQWgtAddhTbhL2bs= -cloud.google.com/go/servicedirectory v1.5.0/go.mod h1:QMKFL0NUySbpZJ1UZs3oFAmdvVxhhxB6eJ/Vlp73dfg= -cloud.google.com/go/servicedirectory v1.6.0/go.mod h1:pUlbnWsLH9c13yGkxCmfumWEPjsRs1RlmJ4pqiNjVL4= -cloud.google.com/go/servicedirectory v1.7.0/go.mod h1:5p/U5oyvgYGYejufvxhgwjL8UVXjkuw7q5XcG10wx1U= -cloud.google.com/go/servicemanagement v1.4.0/go.mod h1:d8t8MDbezI7Z2R1O/wu8oTggo3BI2GKYbdG4y/SJTco= -cloud.google.com/go/servicemanagement v1.5.0/go.mod h1:XGaCRe57kfqu4+lRxaFEAuqmjzF0r+gWHjWqKqBvKFo= -cloud.google.com/go/serviceusage v1.3.0/go.mod h1:Hya1cozXM4SeSKTAgGXgj97GlqUvF5JaoXacR1JTP/E= -cloud.google.com/go/serviceusage v1.4.0/go.mod h1:SB4yxXSaYVuUBYUml6qklyONXNLt83U0Rb+CXyhjEeU= -cloud.google.com/go/shell v1.3.0/go.mod h1:VZ9HmRjZBsjLGXusm7K5Q5lzzByZmJHf1d0IWHEN5X4= -cloud.google.com/go/shell v1.4.0/go.mod h1:HDxPzZf3GkDdhExzD/gs8Grqk+dmYcEjGShZgYa9URw= -cloud.google.com/go/spanner v1.41.0/go.mod h1:MLYDBJR/dY4Wt7ZaMIQ7rXOTLjYrmxLE/5ve9vFfWos= -cloud.google.com/go/speech v1.6.0/go.mod h1:79tcr4FHCimOp56lwC01xnt/WPJZc4v3gzyT7FoBkCM= -cloud.google.com/go/speech v1.7.0/go.mod h1:KptqL+BAQIhMsj1kOP2la5DSEEerPDuOP/2mmkhHhZQ= -cloud.google.com/go/speech v1.8.0/go.mod h1:9bYIl1/tjsAnMgKGHKmBZzXKEkGgtU+MpdDPTE9f7y0= -cloud.google.com/go/speech v1.9.0/go.mod h1:xQ0jTcmnRFFM2RfX/U+rk6FQNUF6DQlydUSyoooSpco= -cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= -cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= -cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= -cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= -cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= -cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= -cloud.google.com/go/storage v1.22.1/go.mod h1:S8N1cAStu7BOeFfE8KAQzmyyLkK8p/vmRq6kuBTW58Y= -cloud.google.com/go/storage v1.23.0/go.mod h1:vOEEDNFnciUMhBeT6hsJIn3ieU5cFRmzeLgDvXzfIXc= -cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s= -cloud.google.com/go/storagetransfer v1.5.0/go.mod h1:dxNzUopWy7RQevYFHewchb29POFv3/AaBgnhqzqiK0w= -cloud.google.com/go/storagetransfer v1.6.0/go.mod h1:y77xm4CQV/ZhFZH75PLEXY0ROiS7Gh6pSKrM8dJyg6I= -cloud.google.com/go/talent v1.1.0/go.mod h1:Vl4pt9jiHKvOgF9KoZo6Kob9oV4lwd/ZD5Cto54zDRw= -cloud.google.com/go/talent v1.2.0/go.mod h1:MoNF9bhFQbiJ6eFD3uSsg0uBALw4n4gaCaEjBw9zo8g= -cloud.google.com/go/talent v1.3.0/go.mod h1:CmcxwJ/PKfRgd1pBjQgU6W3YBwiewmUzQYH5HHmSCmM= -cloud.google.com/go/talent v1.4.0/go.mod h1:ezFtAgVuRf8jRsvyE6EwmbTK5LKciD4KVnHuDEFmOOA= -cloud.google.com/go/texttospeech v1.4.0/go.mod h1:FX8HQHA6sEpJ7rCMSfXuzBcysDAuWusNNNvN9FELDd8= -cloud.google.com/go/texttospeech v1.5.0/go.mod h1:oKPLhR4n4ZdQqWKURdwxMy0uiTS1xU161C8W57Wkea4= -cloud.google.com/go/tpu v1.3.0/go.mod h1:aJIManG0o20tfDQlRIej44FcwGGl/cD0oiRyMKG19IQ= -cloud.google.com/go/tpu v1.4.0/go.mod h1:mjZaX8p0VBgllCzF6wcU2ovUXN9TONFLd7iz227X2Xg= -cloud.google.com/go/trace v1.3.0/go.mod h1:FFUE83d9Ca57C+K8rDl/Ih8LwOzWIV1krKgxg6N0G28= -cloud.google.com/go/trace v1.4.0/go.mod h1:UG0v8UBqzusp+z63o7FK74SdFE+AXpCLdFb1rshXG+Y= -cloud.google.com/go/translate v1.3.0/go.mod h1:gzMUwRjvOqj5i69y/LYLd8RrNQk+hOmIXTi9+nb3Djs= -cloud.google.com/go/translate v1.4.0/go.mod h1:06Dn/ppvLD6WvA5Rhdp029IX2Mi3Mn7fpMRLPvXT5Wg= -cloud.google.com/go/video v1.8.0/go.mod h1:sTzKFc0bUSByE8Yoh8X0mn8bMymItVGPfTuUBUyRgxk= -cloud.google.com/go/video v1.9.0/go.mod h1:0RhNKFRF5v92f8dQt0yhaHrEuH95m068JYOvLZYnJSw= -cloud.google.com/go/videointelligence v1.6.0/go.mod h1:w0DIDlVRKtwPCn/C4iwZIJdvC69yInhW0cfi+p546uU= -cloud.google.com/go/videointelligence v1.7.0/go.mod h1:k8pI/1wAhjznARtVT9U1llUaFNPh7muw8QyOUpavru4= -cloud.google.com/go/videointelligence v1.8.0/go.mod h1:dIcCn4gVDdS7yte/w+koiXn5dWVplOZkE+xwG9FgK+M= -cloud.google.com/go/videointelligence v1.9.0/go.mod h1:29lVRMPDYHikk3v8EdPSaL8Ku+eMzDljjuvRs105XoU= -cloud.google.com/go/vision v1.2.0/go.mod h1:SmNwgObm5DpFBme2xpyOyasvBc1aPdjvMk2bBk0tKD0= -cloud.google.com/go/vision/v2 v2.2.0/go.mod h1:uCdV4PpN1S0jyCyq8sIM42v2Y6zOLkZs+4R9LrGYwFo= -cloud.google.com/go/vision/v2 v2.3.0/go.mod h1:UO61abBx9QRMFkNBbf1D8B1LXdS2cGiiCRx0vSpZoUo= -cloud.google.com/go/vision/v2 v2.4.0/go.mod h1:VtI579ll9RpVTrdKdkMzckdnwMyX2JILb+MhPqRbPsY= -cloud.google.com/go/vision/v2 v2.5.0/go.mod h1:MmaezXOOE+IWa+cS7OhRRLK2cNv1ZL98zhqFFZaaH2E= -cloud.google.com/go/vmmigration v1.2.0/go.mod h1:IRf0o7myyWFSmVR1ItrBSFLFD/rJkfDCUTO4vLlJvsE= -cloud.google.com/go/vmmigration v1.3.0/go.mod h1:oGJ6ZgGPQOFdjHuocGcLqX4lc98YQ7Ygq8YQwHh9A7g= -cloud.google.com/go/vmwareengine v0.1.0/go.mod h1:RsdNEf/8UDvKllXhMz5J40XxDrNJNN4sagiox+OI208= -cloud.google.com/go/vpcaccess v1.4.0/go.mod h1:aQHVbTWDYUR1EbTApSVvMq1EnT57ppDmQzZ3imqIk4w= -cloud.google.com/go/vpcaccess v1.5.0/go.mod h1:drmg4HLk9NkZpGfCmZ3Tz0Bwnm2+DKqViEpeEpOq0m8= -cloud.google.com/go/webrisk v1.4.0/go.mod h1:Hn8X6Zr+ziE2aNd8SliSDWpEnSS1u4R9+xXZmFiHmGE= -cloud.google.com/go/webrisk v1.5.0/go.mod h1:iPG6fr52Tv7sGk0H6qUFzmL3HHZev1htXuWDEEsqMTg= -cloud.google.com/go/webrisk v1.6.0/go.mod h1:65sW9V9rOosnc9ZY7A7jsy1zoHS5W9IAXv6dGqhMQMc= -cloud.google.com/go/webrisk v1.7.0/go.mod h1:mVMHgEYH0r337nmt1JyLthzMr6YxwN1aAIEc2fTcq7A= -cloud.google.com/go/websecurityscanner v1.3.0/go.mod h1:uImdKm2wyeXQevQJXeh8Uun/Ym1VqworNDlBXQevGMo= -cloud.google.com/go/websecurityscanner v1.4.0/go.mod h1:ebit/Fp0a+FWu5j4JOmJEV8S8CzdTkAS77oDsiSqYWQ= -cloud.google.com/go/workflows v1.6.0/go.mod h1:6t9F5h/unJz41YqfBmqSASJSXccBLtD1Vwf+KmJENM0= -cloud.google.com/go/workflows v1.7.0/go.mod h1:JhSrZuVZWuiDfKEFxU0/F1PQjmpnpcoISEXH2bcHC3M= -cloud.google.com/go/workflows v1.8.0/go.mod h1:ysGhmEajwZxGn1OhGOGKsTXc5PyxOc0vfKf5Af+to4M= -cloud.google.com/go/workflows v1.9.0/go.mod h1:ZGkj1aFIOd9c8Gerkjjq7OW7I5+l6cSvT3ujaO/WwSA= -dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0= +github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= github.com/Masterminds/semver/v3 v3.2.0 h1:3MEsd0SM6jqZojhjLWWeBY+Kcjy9i6MQAeY7YgDP83g= github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= +github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= github.com/aead/siphash v1.0.1 h1:FwHfE/T45KPKYuuSAKyyvE+oPWcaQ+CUmFW0bPlM+kg= @@ -406,44 +24,41 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ= github.com/btcsuite/btcd v0.22.0-beta.0.20220111032746-97732e52810c/go.mod h1:tjmYdS6MLJ5/s0Fj4DbLgSbDHbEqLJrtnHecBFkdz5M= -github.com/btcsuite/btcd v0.22.0-beta.0.20220204213055-eaf0459ff879/go.mod h1:osu7EoKiL36UThEgzYPqdRaxeo0NU8VoXqgcnwpey0g= -github.com/btcsuite/btcd v0.23.1/go.mod h1:0QJIIN1wwIXF/3G/m87gIwGniDMDQqjVn4SZgnFpsYY= -github.com/btcsuite/btcd v0.23.4/go.mod h1:0QJIIN1wwIXF/3G/m87gIwGniDMDQqjVn4SZgnFpsYY= github.com/btcsuite/btcd v0.23.5-0.20231215221805-96c9fd8078fd/go.mod h1:nm3Bko6zh6bWP60UxwoT5LzdGJsQJaPo6HjduXq9p6A= -github.com/btcsuite/btcd v0.24.1-0.20240123000108-62e6af035ec5 h1:8BHBWvtP6kkzvmCpyWEznq4eS0gfLOSVuXLesv413Xs= -github.com/btcsuite/btcd v0.24.1-0.20240123000108-62e6af035ec5/go.mod h1:5C8ChTkl5ejr3WHj8tkQSCmydiMEPB0ZhQhehpq7Dgg= +github.com/btcsuite/btcd v0.24.3-0.20250318170759-4f4ea81776d6 h1:8n9k3I7e8DkpdQ5YAP4j8ly/LSsbe6qX9vmVbrUGvVw= +github.com/btcsuite/btcd v0.24.3-0.20250318170759-4f4ea81776d6/go.mod h1:OmM4kFtB0klaG/ZqT86rQiyw/1iyXlJgc3UHClPhhbs= github.com/btcsuite/btcd/btcec/v2 v2.1.0/go.mod h1:2VzYrv4Gm4apmbVVsSq5bqf1Ec8v56E48Vt0Y/umPgA= -github.com/btcsuite/btcd/btcec/v2 v2.1.1/go.mod h1:ctjw4H1kknNJmRN4iP1R7bTQ+v3GJkZBd6mui8ZsAZE= github.com/btcsuite/btcd/btcec/v2 v2.1.3/go.mod h1:ctjw4H1kknNJmRN4iP1R7bTQ+v3GJkZBd6mui8ZsAZE= -github.com/btcsuite/btcd/btcec/v2 v2.3.2 h1:5n0X6hX0Zk+6omWcihdYvdAlGf2DfasC0GMf7DClJ3U= -github.com/btcsuite/btcd/btcec/v2 v2.3.2/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04= +github.com/btcsuite/btcd/btcec/v2 v2.3.4 h1:3EJjcN70HCu/mwqlUsGK8GcNVyLVxFDlWurTXGPFfiQ= +github.com/btcsuite/btcd/btcec/v2 v2.3.4/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04= github.com/btcsuite/btcd/btcutil v1.0.0/go.mod h1:Uoxwv0pqYWhD//tfTiipkxNfdhG9UrLwaeswfjfdF0A= github.com/btcsuite/btcd/btcutil v1.1.0/go.mod h1:5OapHB7A2hBBWLm48mmw4MOHNJCcUBTwmWH/0Jn8VHE= -github.com/btcsuite/btcd/btcutil v1.1.1/go.mod h1:nbKlBMNm9FGsdvKvu0essceubPiAcI57pYBNnsLAa34= github.com/btcsuite/btcd/btcutil v1.1.5 h1:+wER79R5670vs/ZusMTF1yTcRYE5GUsFbdjdisflzM8= github.com/btcsuite/btcd/btcutil v1.1.5/go.mod h1:PSZZ4UitpLBWzxGd5VGOrLnmOjtPP/a6HaFo12zMs00= -github.com/btcsuite/btcd/btcutil/psbt v1.1.9 h1:UmfOIiWMZcVMOLaN+lxbbLSuoINGS1WmK1TZNI0b4yk= -github.com/btcsuite/btcd/btcutil/psbt v1.1.9/go.mod h1:ehBEvU91lxSlXtA+zZz3iFYx7Yq9eqnKx4/kSrnsvMY= +github.com/btcsuite/btcd/btcutil/psbt v1.1.10 h1:TC1zhxhFfhnGqoPjsrlEpoqzh+9TPOHrCgnPR47Mj9I= +github.com/btcsuite/btcd/btcutil/psbt v1.1.10/go.mod h1:ehBEvU91lxSlXtA+zZz3iFYx7Yq9eqnKx4/kSrnsvMY= github.com/btcsuite/btcd/chaincfg/chainhash v1.0.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 h1:59Kx4K6lzOW5w6nFlA0v5+lk/6sjybR934QNHSJZPTQ= github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= -github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f h1:bAs4lUbRJpnnkd9VhRV3jjAVU7DJVjMaK+IsvSeZvFo= github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= +github.com/btcsuite/btclog v0.0.0-20241003133417-09c4e92e319c h1:4HxD1lBUGUddhzgaNgrCPsFWd7cGYNpeFUgd9ZIgyM0= +github.com/btcsuite/btclog v0.0.0-20241003133417-09c4e92e319c/go.mod h1:w7xnGOhwT3lmrS4H3b/D1XAXxvh+tbhUm8xeHN2y3TQ= +github.com/btcsuite/btclog/v2 v2.0.1-0.20250110154127-3ae4bf1cb318 h1:oCjIcinPt7XQ644MP/22JcjYEC84qRc3bRBH0d7Hhd4= +github.com/btcsuite/btclog/v2 v2.0.1-0.20250110154127-3ae4bf1cb318/go.mod h1:XItGUfVOxotJL8kkuk2Hj3EVow5KCugXl3wWfQ6K0AE= github.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= -github.com/btcsuite/btcwallet v0.16.10-0.20240127010340-16b422a2e8bf h1:eNjj5R0tKP48NQxDkuKr+C9frZsdzTAemEwu75ZDQg0= -github.com/btcsuite/btcwallet v0.16.10-0.20240127010340-16b422a2e8bf/go.mod h1:LzcW/LYkQLgDufv6Ouw4cOIW0YsY+A60MTtc61/OZTU= -github.com/btcsuite/btcwallet/wallet/txauthor v1.3.3 h1:A4vz5wCONhxawdWs5y41gluZUVARhK/Pty1Uu1c5zkw= -github.com/btcsuite/btcwallet/wallet/txauthor v1.3.3/go.mod h1:k8f2FcgUQUdfpkY98vWvDYpXLb83g17EupcLv1KcNJw= -github.com/btcsuite/btcwallet/wallet/txrules v1.2.0 h1:BtEN5Empw62/RVnZ0VcJaVtVlBijnLlJY+dwjAye2Bg= -github.com/btcsuite/btcwallet/wallet/txrules v1.2.0/go.mod h1:AtkqiL7ccKWxuLYtZm8Bu8G6q82w4yIZdgq6riy60z0= -github.com/btcsuite/btcwallet/wallet/txsizes v1.2.3 h1:PszOub7iXVYbtGybym5TGCp9Dv1h1iX4rIC3HICZGLg= -github.com/btcsuite/btcwallet/wallet/txsizes v1.2.3/go.mod h1:q08Rms52VyWyXcp5zDc4tdFRKkFgNsMQrv3/LvE1448= -github.com/btcsuite/btcwallet/walletdb v1.3.5/go.mod h1:oJDxAEUHVtnmIIBaa22wSBPTVcs6hUp5NKWmI8xDwwU= -github.com/btcsuite/btcwallet/walletdb v1.4.0 h1:/C5JRF+dTuE2CNMCO/or5N8epsrhmSM4710uBQoYPTQ= -github.com/btcsuite/btcwallet/walletdb v1.4.0/go.mod h1:oJDxAEUHVtnmIIBaa22wSBPTVcs6hUp5NKWmI8xDwwU= -github.com/btcsuite/btcwallet/wtxmgr v1.5.0 h1:WO0KyN4l6H3JWnlFxfGR7r3gDnlGT7W2cL8vl6av4SU= -github.com/btcsuite/btcwallet/wtxmgr v1.5.0/go.mod h1:TQVDhFxseiGtZwEPvLgtfyxuNUDsIdaJdshvWzR0HJ4= +github.com/btcsuite/btcwallet v0.16.13 h1:JGu+wrihQ0I00ODb3w92JtBPbrHxZhbcvU01O+e+lKw= +github.com/btcsuite/btcwallet v0.16.13/go.mod h1:H6dfoZcWPonM2wbVsR2ZBY0PKNZKdQyLAmnX8vL9JFA= +github.com/btcsuite/btcwallet/wallet/txauthor v1.3.5 h1:Rr0njWI3r341nhSPesKQ2JF+ugDSzdPoeckS75SeDZk= +github.com/btcsuite/btcwallet/wallet/txauthor v1.3.5/go.mod h1:+tXJ3Ym0nlQc/iHSwW1qzjmPs3ev+UVWMbGgfV1OZqU= +github.com/btcsuite/btcwallet/wallet/txrules v1.2.2 h1:YEO+Lx1ZJJAtdRrjuhXjWrYsmAk26wLTlNzxt2q0lhk= +github.com/btcsuite/btcwallet/wallet/txrules v1.2.2/go.mod h1:4v+grppsDpVn91SJv+mZT7B8hEV4nSmpREM4I8Uohws= +github.com/btcsuite/btcwallet/wallet/txsizes v1.2.5 h1:93o5Xz9dYepBP4RMFUc9RGIFXwqP2volSWRkYJFrNtI= +github.com/btcsuite/btcwallet/wallet/txsizes v1.2.5/go.mod h1:lQ+e9HxZ85QP7r3kdxItkiMSloSLg1PEGis5o5CXUQw= +github.com/btcsuite/btcwallet/walletdb v1.5.1 h1:HgMhDNCrtEFPC+8q0ei5DQ5U9Tl4RCspA22DEKXlopI= +github.com/btcsuite/btcwallet/walletdb v1.5.1/go.mod h1:jk/hvpLFINF0C1kfTn0bfx2GbnFT+Nvnj6eblZALfjs= +github.com/btcsuite/btcwallet/wtxmgr v1.5.6 h1:Zwvr/rrJYdOLqdBCSr4eICEstnEA+NBUvjIWLkrXaYI= +github.com/btcsuite/btcwallet/wtxmgr v1.5.6/go.mod h1:lzVbDkk/jRao2ib5kge46aLZW1yFc8RFNycdYpnsmZA= github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd h1:R/opQEbFEy9JGkIguV40SvRY1uliPX8ifOvi6ICsFCw= github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg= github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY= @@ -457,32 +72,16 @@ github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46f github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/census-instrumentation/opencensus-proto v0.4.1/go.mod h1:4T9NM4+4Vw91VeyqjLS6ao50K5bOcLKN6Q42XnYaRYw= -github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= -github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= -github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= -github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= -github.com/cncf/udpa/go v0.0.0-20220112060539-c52dc94e7fbe/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= -github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20220314180256-7f1daf1720fc/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20230105202645-06c439db220b/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4 h1:/inchEIKaYC1Akx+H+gqO04wryn5h75LSazbRlnya1k= github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I= github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= github.com/cockroachdb/datadriven v1.0.2 h1:H9MtNqVoVhvd9nCBwOyDjUEdZCREqbIdCJD93PBm/jA= +github.com/cockroachdb/datadriven v1.0.2/go.mod h1:a9RdTaap04u637JoCzcUoIcDmvwSUtcUFtT/C3kJlTU= +github.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg= +github.com/containerd/continuity v0.3.0/go.mod h1:wJEAIwKOm/pBZuBd0JmeTvnLquTB1Ag8espWhkykbPM= github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4= github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= @@ -492,6 +91,8 @@ github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSV github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= +github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -501,27 +102,31 @@ github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn github.com/decred/dcrd/crypto/blake256 v1.0.1 h1:7PltbUIQB7u/FfZ39+DGa/ShuMyJ5ilcvdfma9wOH6Y= github.com/decred/dcrd/crypto/blake256 v1.0.1/go.mod h1:2OfgNZ5wDpcsFmHmCK5gZTPcCXqlm2ArzUIkw9czNJo= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs= -github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 h1:8UrgZ3GkP4i/CLijOJx79Yu+etlyjdBU4sfcs2WYQMs= -github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0/go.mod h1:v57UDF4pDQJcEfFUCRop3lJL149eHGSe9Jvczhzjo/0= +github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 h1:rpfIENRNNilwHwZeG5+P150SMrnNEcHYvcCuK6dPZSg= +github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0/go.mod h1:v57UDF4pDQJcEfFUCRop3lJL149eHGSe9Jvczhzjo/0= github.com/decred/dcrd/lru v1.0.0/go.mod h1:mxKOwFd7lFjN2GZYsiz/ecgqR6kkYAl+0pz0tEMk218= github.com/decred/dcrd/lru v1.1.2 h1:KdCzlkxppuoIDGEvCGah1fZRicrDH36IipvlB1ROkFY= github.com/decred/dcrd/lru v1.1.2/go.mod h1:gEdCVgXs1/YoBvFWt7Scgknbhwik3FgVSzlnCcXL2N8= +github.com/dhui/dktest v0.4.0 h1:z05UmuXZHO/bgj/ds2bGMBu8FI4WA+Ag/m3ghL+om7M= +github.com/dhui/dktest v0.4.0/go.mod h1:v/Dbz1LgCBOi2Uki2nUqLBGa83hWBGFMu5MrgMDCc78= +github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= +github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/docker/cli v28.0.1+incompatible h1:g0h5NQNda3/CxIsaZfH4Tyf6vpxFth7PYl3hgCPOKzs= +github.com/docker/cli v28.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/docker v28.0.1+incompatible h1:FCHjSRdXhNRFjlHMTv4jUNlIBbTeRjrWfeFuJp7jpo0= +github.com/docker/docker v28.0.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= +github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= +github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= +github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= -github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= -github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= -github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= -github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= -github.com/envoyproxy/go-control-plane v0.10.3/go.mod h1:fJJn/j26vwOu972OllsvAgJJM//w9BV6Fxbg2LuVd34= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/envoyproxy/protoc-gen-validate v0.6.7/go.mod h1:dyJXwwfPK2VSqiB9Klm1J6romD608Ba7Hij42vrOBCo= -github.com/envoyproxy/protoc-gen-validate v0.9.1/go.mod h1:OKNgG7TCp5pF4d6XftA0++PMirau2/yoOwVac3AbF2w= -github.com/envoyproxy/protoc-gen-validate v1.0.2 h1:QkIBuU5k+x7/QXPvPPnWXWlCdaBFApVqftFV6k087DA= +github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= +github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fergusstrange/embedded-postgres v1.25.0 h1:sa+k2Ycrtz40eCRPOzI7Ry7TtkWXXJ+YRsxpKMDhxK0= github.com/fergusstrange/embedded-postgres v1.25.0/go.mod h1:t/MLs0h9ukYM6FSt99R7InCHs1nW0ordoVCcnzmpTYw= github.com/frankban/quicktest v1.0.0/go.mod h1:R98jIehRai+d1/3Hv2//jOVCTJhW1VBavT6B6CuGq2k= @@ -529,6 +134,7 @@ github.com/frankban/quicktest v1.1.0/go.mod h1:R98jIehRai+d1/3Hv2//jOVCTJhW1VBav github.com/frankban/quicktest v1.2.2/go.mod h1:Qh/WofXFeiAFII1aEBu529AtJo6Zg2VHscnEsbBnJ20= github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= +github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= @@ -536,122 +142,61 @@ github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyT github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-errors/errors v1.5.1 h1:ZwEMSLRCapFLflTpT7NKaAc7ukJ8ZPEjzlxt8rPN8bk= github.com/go-errors/errors v1.5.1/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= -github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= +github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-macaroon-bakery/macaroonpb v1.0.0 h1:It9exBaRMZ9iix1iJ6gwzfwsDE6ExNuwtAJ9e09v6XE= github.com/go-macaroon-bakery/macaroonpb v1.0.0/go.mod h1:UzrGOcbiwTXISFP2XDLDPjfhMINZa+fX/7A2lMd31zc= +github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= +github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= +github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss= +github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.5.2 h1:YtQM7lnr8iZ+j5q71MGKkNw9Mn7AjHM68uc9g5fXeUI= +github.com/golang-jwt/jwt/v4 v4.5.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-migrate/migrate/v4 v4.17.0 h1:rd40H3QXU0AA4IoLllFcEAEo9dYKRHYND2gB4p7xcaU= +github.com/golang-migrate/migrate/v4 v4.17.0/go.mod h1:+Cp2mtLP4/aXDTKb9wmXYitdrNx2HGs45rbWAo6OsKM= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= -github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= -github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= -github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= -github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= -github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= -github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= -github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.1.2 h1:xf4v41cLI2Z6FxbKm+8Bu+m8ifhj15JuZ9sa0jZCMUU= github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.2.1-0.20190312032427-6f77996f0c42/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= -github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= -github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= -github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= -github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= -github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20221118152302-e6195bd50e26 h1:Xim43kblpZXfIBQsbuBVKCudVG457BR2GZFIz3uw3hQ= +github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd h1:gbpYu9NMq8jhDVbvlGkMFWCjLFlqqEZjEmObmhUy6Vo= +github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= -github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/googleapis/enterprise-certificate-proxy v0.0.0-20220520183353-fd19c99a87aa/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= -github.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= -github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg= -github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= -github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= -github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM= -github.com/googleapis/gax-go/v2 v2.2.0/go.mod h1:as02EH8zWkzwUoLbBaFeQ+arQaj/OthfcblKl4IGNaM= -github.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99EXz9pXxye9YM= -github.com/googleapis/gax-go/v2 v2.4.0/go.mod h1:XOTVJ59hdnfJLIP/dh8n5CGryZR2LxK9wbMD5+iXC6c= -github.com/googleapis/gax-go/v2 v2.5.1/go.mod h1:h6B0KMMFNtI2ddbGJn3T3ZbwkeT6yqEF02fYlzkUCyo= -github.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY= -github.com/googleapis/gax-go/v2 v2.7.0/go.mod h1:TEop28CZZQ2y+c0VxMUmu1lV+fQx57QpBWsYpwqHJx8= -github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4= -github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= @@ -662,18 +207,16 @@ github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92Bcuy github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3/go.mod h1:o//XUCC/F+yRGJoPO/VU0GSB0f8Nhgmxx0VIRUvaC0w= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 h1:Wqo399gCIufwto+VfwCSvsnfGpF/w5E9CNxSwbpD6No= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0/go.mod h1:qmOFXW2epJhM0qSnUUYpldc7gVz2KMQwJ/QYCDIa7XU= -github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= -github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= @@ -686,11 +229,10 @@ github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsU github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o= github.com/jackc/pgconn v1.9.0/go.mod h1:YctiPyvzfU11JFxoXokUOOKQXQmDMoJL9vJzHH8/2JY= github.com/jackc/pgconn v1.9.1-0.20210724152538-d89c8390a530/go.mod h1:4z2w8XhRbP1hYxkpTuBjTS3ne3J48K83+u0zoyvg2pI= -github.com/jackc/pgconn v1.14.0/go.mod h1:9mBNlny0UvkgJdCDvdVHYSjI+8tD2rnKK69Wz8ti++E= -github.com/jackc/pgconn v1.14.1 h1:smbxIaZA08n6YuxEX1sDyjV/qkbtUtkH20qLkR9MUR4= -github.com/jackc/pgconn v1.14.1/go.mod h1:9mBNlny0UvkgJdCDvdVHYSjI+8tD2rnKK69Wz8ti++E= -github.com/jackc/pgerrcode v0.0.0-20220416144525-469b46aa5efa h1:s+4MhCQ6YrzisK6hFJUX53drDT4UsSW3DEhKn0ifuHw= -github.com/jackc/pgerrcode v0.0.0-20220416144525-469b46aa5efa/go.mod h1:a/s9Lp5W7n/DD0VrVoyJ00FbP2ytTPDVOivvn2bMlds= +github.com/jackc/pgconn v1.14.3 h1:bVoTr12EGANZz66nZPkMInAV/KHD2TxH9npjXXgiB3w= +github.com/jackc/pgconn v1.14.3/go.mod h1:RZbme4uasqzybK2RK5c65VsHxoyaml09lx3tXOcO/VM= +github.com/jackc/pgerrcode v0.0.0-20240316143900-6e2875d9b438 h1:Dj0L5fhJ9F82ZJyVOmBx6msDp/kfd1t9GRfny/mfJA0= +github.com/jackc/pgerrcode v0.0.0-20240316143900-6e2875d9b438/go.mod h1:a/s9Lp5W7n/DD0VrVoyJ00FbP2ytTPDVOivvn2bMlds= github.com/jackc/pgio v1.0.0 h1:g12B9UwVnzGhueNavwioyEEpAmqMe1E/BN9ES+8ovkE= github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8= github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE= @@ -706,10 +248,9 @@ github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvW github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= github.com/jackc/pgproto3/v2 v2.1.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= -github.com/jackc/pgproto3/v2 v2.3.2 h1:7eY55bdBeCz1F2fTzSz69QC+pG46jYq9/jtSPiJ5nn0= -github.com/jackc/pgproto3/v2 v2.3.2/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.3.3 h1:1HLSx5H+tXR9pW3in3zaztoEwQYRC9SQaYUHjTSUOag= +github.com/jackc/pgproto3/v2 v2.3.3/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= -github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 h1:L0QtFUgDarD7Fpv9jeVMgy/+Ec0mtnmYuImjTz6dtDA= github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg= @@ -722,12 +263,15 @@ github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08 github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM= github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc= github.com/jackc/pgx/v4 v4.12.1-0.20210724153913-640aa07df17c/go.mod h1:1QD0+tgSXP7iUjYm9C1NxKhny7lq6ee99u/z+IHFcgs= -github.com/jackc/pgx/v4 v4.18.1 h1:YP7G1KABtKpB5IHrO9vYwSrCOhs7p3uqhvhhQBptya0= -github.com/jackc/pgx/v4 v4.18.1/go.mod h1:FydWkUyadDmdNH/mHnGob881GawxeEm7TcMCzkb+qQE= +github.com/jackc/pgx/v4 v4.18.2 h1:xVpYkNR5pk5bMCZGfClbO962UIqVABcAGt7ha1s/FeU= +github.com/jackc/pgx/v4 v4.18.2/go.mod h1:Ey4Oru5tH5sB6tV7hDmfWFahwF15Eb7DNXlRKx2CkVw= +github.com/jackc/pgx/v5 v5.6.0 h1:SWJzexBzPL5jb0GEsrPMLIsi/3jOo7RHlzTjcAeDrPY= +github.com/jackc/pgx/v5 v5.6.0/go.mod h1:DNZ/vlrUnhWCoFGxHAG8U2ljioxukquj7utPDgtQdTw= github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jackc/puddle v1.3.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle/v2 v2.2.1 h1:RhxXJtFG022u4ibrCSMSiu5aOq1i77R3OHKNJj77OAk= +github.com/jackc/puddle/v2 v2.2.1/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jessevdk/go-flags v1.5.0 h1:1jKYvbxEjfUl0fmqTCOfonvskHHXMjBySTLW4y9LFvc= @@ -736,31 +280,30 @@ github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= github.com/jonboulle/clockwork v0.4.0 h1:p4Cf1aMWXnXAUh8lVfewRBx1zaTSYKrKMF2g3ST4RZ4= github.com/jonboulle/clockwork v0.4.0/go.mod h1:xgRqUGwRcjKCO1vbZUEtSLrqKoPSsUpK7fnezOII0kc= -github.com/jrick/logrotate v1.0.0 h1:lQ1bL/n9mBNeIXoTUoYRlK4dHuNJVofX9oWqBtPnSzI= github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ= +github.com/jrick/logrotate v1.1.2 h1:6ePk462NCX7TfKtNp5JJ7MbA2YIslkpfgP03TlTYMN0= +github.com/jrick/logrotate v1.1.2/go.mod h1:f9tdWggSVK3iqavGpyvegq5IhNois7KXmasU6/N96OQ= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= -github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/juju/mgotest v1.0.1/go.mod h1:vTaDufYul+Ps8D7bgseHjq87X8eu0ivlKLp9mVc/Bfc= github.com/juju/postgrestest v1.1.0/go.mod h1:/n17Y2T6iFozzXwSCO0JYJ5gSiz2caEtSwAjh/uLXDM= github.com/juju/qthttptest v0.0.1/go.mod h1://LCf/Ls22/rPw2u1yWukUJvYtfPY4nYpWUl2uZhryo= github.com/juju/schema v1.0.0/go.mod h1:Y+ThzXpUJ0E7NYYocAbuvJ7vTivXfrof/IfRPq/0abI= github.com/juju/webbrowser v0.0.0-20160309143629-54b8c57083b4/go.mod h1:G6PCelgkM6cuvyD10iYJsjLBsSadVXtJ+nBxFAxE2BU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs= -github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4= github.com/kkdai/bstream v1.0.0 h1:Se5gHwgp2VT2uHfDrkbbgbgEvV9cimLELwrPJctSjg8= github.com/kkdai/bstream v1.0.0/go.mod h1:FDnDOHt5Yx4p3FaHcioFT0QjDOtgUpvjeZqAs+NVZZA= +github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= +github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= @@ -775,41 +318,40 @@ github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lightninglabs/gozmq v0.0.0-20191113021534-d20a764486bf h1:HZKvJUHlcXI/f/O0Avg7t8sqkPo78HFzjmeYFl6DPnc= github.com/lightninglabs/gozmq v0.0.0-20191113021534-d20a764486bf/go.mod h1:vxmQPeIQxPf6Jf9rM8R+B4rKBqLA2AjttNxkFBL2Plk= -github.com/lightninglabs/loop v0.27.1-beta h1:iQMa9qgiyIptd4dA8iIjdflugkqtkmP21+cU5b0Rous= -github.com/lightninglabs/loop v0.27.1-beta/go.mod h1:mI7VFSqJjUu0TxxECohpzDk9w9Ro9Jwmuk3xvxoFv+s= -github.com/lightninglabs/loop/swapserverrpc v1.0.5 h1:wxgAnxO8d20+t8AppNfdoZZY69++9dvx9mkuWST4nxE= -github.com/lightninglabs/loop/swapserverrpc v1.0.5/go.mod h1:vrUYQjRLzV7fZZkM8I1AlmwTdPjCtKPCzeBeKemMGa4= -github.com/lightninglabs/neutrino v0.16.0 h1:YNTQG32fPR/Zg0vvJVI65OBH8l3U18LSXXtX91hx0q0= -github.com/lightninglabs/neutrino v0.16.0/go.mod h1:x3OmY2wsA18+Kc3TSV2QpSUewOCiscw2mKpXgZv2kZk= +github.com/lightninglabs/loop/looprpc v1.0.7 h1:ukBFoQaaFnQ4lNJjifOG/tCwx420Fuk74ovOi7OtpCQ= +github.com/lightninglabs/loop/looprpc v1.0.7/go.mod h1:U/q4xHSM13TLwRvNyhvJftT/BQ0Ey6p8XbcYwqWIYMA= +github.com/lightninglabs/loop/swapserverrpc v1.0.14 h1:0+UrC2oNFsWYqGZjmU+Fkcn8iXsea89VZdfmBXSyPPg= +github.com/lightninglabs/loop/swapserverrpc v1.0.14/go.mod h1:HDRyzFOZeX0e1P9f9RSFE7FzE5u6Eta0hPqx5W7Wp24= +github.com/lightninglabs/neutrino v0.16.1 h1:5Kz4ToxncEVkpKC6fwUjXKtFKJhuxlG3sBB3MdJTJjs= +github.com/lightninglabs/neutrino v0.16.1/go.mod h1:L+5UAccpUdyM7yDgmQySgixf7xmwBgJtOfs/IP26jCs= github.com/lightninglabs/neutrino/cache v1.1.2 h1:C9DY/DAPaPxbFC+xNNEI/z1SJY9GS3shmlu5hIQ798g= github.com/lightninglabs/neutrino/cache v1.1.2/go.mod h1:XJNcgdOw1LQnanGjw8Vj44CvguYA25IMKjWFZczwZuo= github.com/lightninglabs/protobuf-go-hex-display v1.30.0-hex-display h1:pRdza2wleRN1L2fJXd6ZoQ9ZegVFTAb2bOQfruJPKcY= github.com/lightninglabs/protobuf-go-hex-display v1.30.0-hex-display/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -github.com/lightningnetwork/lightning-onion v1.2.1-0.20230823005744-06182b1d7d2f h1:Pua7+5TcFEJXIIZ1I2YAUapmbcttmLj4TTi786bIi3s= -github.com/lightningnetwork/lightning-onion v1.2.1-0.20230823005744-06182b1d7d2f/go.mod h1:c0kvRShutpj3l6B9WtTsNTBUtjSmjZXbJd9ZBRQOSKI= -github.com/lightningnetwork/lnd v0.17.4-beta h1:BXYbETYZWtcNrYcAosGGXnWsq4Nr5R9PRqlRuEA9AUs= -github.com/lightningnetwork/lnd v0.17.4-beta/go.mod h1:S5hugoB/FWyF9Up9sjEnOsA/ohmhXzIqRHHMLlrtyFk= -github.com/lightningnetwork/lnd/clock v1.0.1/go.mod h1:KnQudQ6w0IAMZi1SgvecLZQZ43ra2vpDNj7H/aasemg= +github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb h1:yfM05S8DXKhuCBp5qSMZdtSwvJ+GFzl94KbXMNB1JDY= +github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb/go.mod h1:c0kvRShutpj3l6B9WtTsNTBUtjSmjZXbJd9ZBRQOSKI= +github.com/lightningnetwork/lnd v0.19.0-beta h1:/8i2UdARiEpI2iAmPoSDcwZSSEuWqXyfsMxz/mLGbdw= +github.com/lightningnetwork/lnd v0.19.0-beta/go.mod h1:hu6zo1zcznx7nViiFlJY8qGDwwGw5LNLdGJ7ICz5Ysc= github.com/lightningnetwork/lnd/clock v1.1.1 h1:OfR3/zcJd2RhH0RU+zX/77c0ZiOnIMsDIBjgjWdZgA0= github.com/lightningnetwork/lnd/clock v1.1.1/go.mod h1:mGnAhPyjYZQJmebS7aevElXKTFDuO+uNFFfMXK1W8xQ= -github.com/lightningnetwork/lnd/fn v1.0.1 h1:4nAxKpGKgk4/xRQKxvim3BW0QM34S4BH6QghWZVjsko= -github.com/lightningnetwork/lnd/fn v1.0.1/go.mod h1:XV+0vBXSnh3aUjskJUv58TOpsveiXQ+ac8rEnXZDGFc= -github.com/lightningnetwork/lnd/healthcheck v1.2.3 h1:oqhOOy8WmIEa6RBkYKC0mmYZkhl8T2kGD97n9jpML8o= -github.com/lightningnetwork/lnd/healthcheck v1.2.3/go.mod h1:eDxH3dEwV9DeBW/6inrmlVh1qBOFV0AI14EEPnGt9gc= -github.com/lightningnetwork/lnd/kvdb v1.4.4 h1:bCv63rVCvzqj1BkagN/EWTov6NDDgYEG/t0z2HepRMk= -github.com/lightningnetwork/lnd/kvdb v1.4.4/go.mod h1:9SuaIqMA9ugrVkdvgQkYXa8CAKYNYd4vsEYORP4V698= +github.com/lightningnetwork/lnd/fn/v2 v2.0.8 h1:r2SLz7gZYQPVc3IZhU82M66guz3Zk2oY+Rlj9QN5S3g= +github.com/lightningnetwork/lnd/fn/v2 v2.0.8/go.mod h1:TOzwrhjB/Azw1V7aa8t21ufcQmdsQOQMDtxVOQWNl8s= +github.com/lightningnetwork/lnd/healthcheck v1.2.6 h1:1sWhqr93GdkWy4+6U7JxBfcyZIE78MhIHTJZfPx7qqI= +github.com/lightningnetwork/lnd/healthcheck v1.2.6/go.mod h1:Mu02um4CWY/zdTOvFje7WJgJcHyX2zq/FG3MhOAiGaQ= +github.com/lightningnetwork/lnd/kvdb v1.4.16 h1:9BZgWdDfjmHRHLS97cz39bVuBAqMc4/p3HX1xtUdbDI= +github.com/lightningnetwork/lnd/kvdb v1.4.16/go.mod h1:HW+bvwkxNaopkz3oIgBV6NEnV4jCEZCACFUcNg4xSjM= github.com/lightningnetwork/lnd/queue v1.1.1 h1:99ovBlpM9B0FRCGYJo6RSFDlt8/vOkQQZznVb18iNMI= github.com/lightningnetwork/lnd/queue v1.1.1/go.mod h1:7A6nC1Qrm32FHuhx/mi1cieAiBZo5O6l8IBIoQxvkz4= +github.com/lightningnetwork/lnd/sqldb v1.0.9 h1:7OHi+Hui823mB/U9NzCdlZTAGSVdDCbjp33+6d/Q+G0= +github.com/lightningnetwork/lnd/sqldb v1.0.9/go.mod h1:OG09zL/PHPaBJefp4HsPz2YLUJ+zIQHbpgCtLnOx8I4= github.com/lightningnetwork/lnd/ticker v1.1.1 h1:J/b6N2hibFtC7JLV77ULQp++QLtCwT6ijJlbdiZFbSM= github.com/lightningnetwork/lnd/ticker v1.1.1/go.mod h1:waPTRAAcwtu7Ji3+3k+u/xH5GHovTsCoSVpho0KDvdA= -github.com/lightningnetwork/lnd/tlv v1.2.1 h1:zV6nBuPNKthAnDc2UR8D8RK+408w3eumRsiJFf3ukyU= -github.com/lightningnetwork/lnd/tlv v1.2.1/go.mod h1:GJ1JLyA7FWJsjJ2zKJe9+urxwYi15GweC8c509mUfCs= -github.com/lightningnetwork/lnd/tor v1.1.3 h1:hPIxSpT0UUJmt7iCbF4n4nsmkYe++fvQ/zRadeFfprY= -github.com/lightningnetwork/lnd/tor v1.1.3/go.mod h1:/LwOzgL6c+bVW0Aegoj1pGlxx9wSvbulBe876knJetc= +github.com/lightningnetwork/lnd/tlv v1.3.1 h1:o7CZg06y+rJZfUMAo0WzBLr0pgBWCzrt0f9gpujYUzk= +github.com/lightningnetwork/lnd/tlv v1.3.1/go.mod h1:pJuiBj1ecr1WWLOtcZ+2+hu9Ey25aJWFIsjmAoPPnmc= +github.com/lightningnetwork/lnd/tor v1.1.6 h1:WHUumk7WgU6BUFsqHuqszI9P6nfhMeIG+rjJBlVE6OE= +github.com/lightningnetwork/lnd/tor v1.1.6/go.mod h1:qSRB8llhAK+a6kaTPWOLLXSZc6Hg8ZC0mq1sUQ/8JfI= github.com/ltcsuite/ltcd v0.22.1-beta h1:aXeIMuzwPss4VABDyc7Zbx+NMLYFaG3YkNTPNkKL9XA= github.com/ltcsuite/ltcd v0.22.1-beta/go.mod h1:O9R9U/mbZwRgr3So8TlNmW7CPc2ZQVhWyVlhXrqu/vo= -github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= -github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= @@ -819,18 +361,27 @@ github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hd github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y= github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= github.com/miekg/dns v1.1.57 h1:Jzi7ApEIzwEPLHWRcafCN9LZSBbqQpxjt/wpgvg7wcM= github.com/miekg/dns v1.1.57/go.mod h1:uqRjCRUuEAA6qsOiJvDd+CFo/vW+y5WR6SNmHE55hZk= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= +github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= +github.com/moby/sys/user v0.3.0 h1:9ni5DlcW5an3SvRSx4MouotOygvzaXbaSrc/wGDFWPo= +github.com/moby/sys/user v0.3.0/go.mod h1:bG+tYYYJgaMtRKgEmuueC0hJEAZWwtIbZTB+85uoHjs= +github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= +github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= +github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= +github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4= +github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= @@ -845,21 +396,27 @@ github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1Cpa github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= github.com/onsi/gomega v1.26.0 h1:03cDLK28U6hWvCAns6NeydX3zIm4SF3ci69ulidS32Q= +github.com/onsi/gomega v1.26.0/go.mod h1:r+zV744Re+DiYCIPRlYOTxn0YkOLcAnW8k1xXdMPGhM= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= +github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= +github.com/opencontainers/runc v1.2.0 h1:qke7ZVCmJcKrJVY2iHJVC+0kql9uYdkusOPsQOOeBw4= +github.com/opencontainers/runc v1.2.0/go.mod h1:/PXzF0h531HTMsYQnmxXkBD7YaGShm/2zcRB79dksUc= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/ory/dockertest/v3 v3.10.0 h1:4K3z2VMe8Woe++invjaTB7VRyQXQy5UY+loujO4aNE4= +github.com/ory/dockertest/v3 v3.10.0/go.mod h1:nr57ZbRWMqfsdGdFNLHz5jjNdDb7VVFnzAeW1n5N1Lg= github.com/pelletier/go-toml/v2 v2.1.1 h1:LWAJwfNvjQZCFIDKWYQaM62NcYeYViCmWIwmOStowAI= github.com/pelletier/go-toml/v2 v2.1.1/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= -github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prometheus/client_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk= github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= @@ -872,7 +429,8 @@ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6So github.com/rogpeppe/fastuuid v1.2.0 h1:Ppwyp6VYCF1nvBTXL3trRso7mXMlRrw9ooo375wvi2s= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= @@ -895,10 +453,6 @@ github.com/soheilhy/cmux v0.1.5 h1:jjzc5WVemNEDTLwv9tlmemhC73tI08BNOIGwBOo10Js= github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo= github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0= -github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= -github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= -github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= -github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8= github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY= github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= @@ -914,85 +468,82 @@ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= -github.com/stretchr/objx v0.5.1 h1:4VhoImhV/Bm0ToFkXFi8hXNXwpDRZ/ynw3amt82mzq0= -github.com/stretchr/objx v0.5.1/go.mod h1:/iHQpkQwBD6DLUmQ4pE+s1TXdob1mORJ4/UFdrifcy0= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= -github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8= github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc= github.com/tmc/grpc-websocket-proxy v0.0.0-20220101234140-673ab2c3ae75 h1:6fotK7otjonDflCTK0BCfls4SPy3NcCVb5dqqmbRknE= github.com/tmc/grpc-websocket-proxy v0.0.0-20220101234140-673ab2c3ae75/go.mod h1:KO6IkyS8Y3j8OdNO85qEYBsRPuteD+YciPomcXdrMnk= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f h1:J9EGpcZtP0E/raorCMxlFGSTBrsSlaDGf3jU/qvAE2c= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= +github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 h1:nIPpBwaJSVYIxUFsDv3M8ofmx9yWTog9BfvIu0q41lo= github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8/go.mod h1:HUYIGzjTL3rfEspMxjDjgmT5uz5wzYJKVo23qUhYTos= github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510 h1:S2dVYn90KE98chqDkyE9Z4N61UnQd+KOfgp5Iu53llk= github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= -github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= -go.etcd.io/bbolt v1.3.5-0.20200615073812-232d8fc87f50/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= -go.etcd.io/bbolt v1.3.8 h1:xs88BrvEv273UsB79e0hcVrlUWmS0a8upikMFhSyAtA= -go.etcd.io/bbolt v1.3.8/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= -go.etcd.io/etcd/api/v3 v3.5.11 h1:B54KwXbWDHyD3XYAwprxNzTe7vlhR69LuBgZnMVvS7E= -go.etcd.io/etcd/api/v3 v3.5.11/go.mod h1:Ot+o0SWSyT6uHhA56al1oCED0JImsRiU9Dc26+C2a+4= -go.etcd.io/etcd/client/pkg/v3 v3.5.11 h1:bT2xVspdiCj2910T0V+/KHcVKjkUrCZVtk8J2JF2z1A= -go.etcd.io/etcd/client/pkg/v3 v3.5.11/go.mod h1:seTzl2d9APP8R5Y2hFL3NVlD6qC/dOT+3kvrqPyTas4= -go.etcd.io/etcd/client/v2 v2.305.11 h1:ZqdKLNJnWpE3bUaaj3XZ5xWyCi+7Vspgk9E0hlIBguE= -go.etcd.io/etcd/client/v2 v2.305.11/go.mod h1:vX2j5tMynwOateY6BfVmLol3gYOIkbhqjs/BqRsdIOw= -go.etcd.io/etcd/client/v3 v3.5.11 h1:ajWtgoNSZJ1gmS8k+icvPtqsqEav+iUorF7b0qozgUU= -go.etcd.io/etcd/client/v3 v3.5.11/go.mod h1:a6xQUEqFJ8vztO1agJh/KQKOMfFI8og52ZconzcDJwE= -go.etcd.io/etcd/pkg/v3 v3.5.11 h1:U5+/mZh+jps8VRWv7+xPiK1tC1hRBOBYdn7zCqtWyOY= -go.etcd.io/etcd/pkg/v3 v3.5.11/go.mod h1:bLfwo6YEgpOAMBZJsZg5AiSS+mxNTRJi15Dvp9kKW68= -go.etcd.io/etcd/raft/v3 v3.5.11 h1:eeimaNIT9DjV4bdLSy4FjLQ/KGSAiG1L5T1nTf5VoZg= -go.etcd.io/etcd/raft/v3 v3.5.11/go.mod h1:Tp7kZJVtWJWLiMCPrgkimiOB5ZYi8YM93onQihpG724= -go.etcd.io/etcd/server/v3 v3.5.11 h1:FEa0ImvoXdIPa81/vZUKpnJ74fpQ5ZivseoIKMPzfpg= -go.etcd.io/etcd/server/v3 v3.5.11/go.mod h1:CS0+TwcuRlhg1I5CpA3YlisOcoqJB1h1GMRgje75uDs= -go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= -go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= -go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= -go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= -go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 h1:SpGay3w+nEwMpfVnbqOLH5gY52/foP8RE8UzTZ1pdSE= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1/go.mod h1:4UoMYEZOC0yN/sPGH76KPkkU7zgiEWYWL9vwmbnTJPE= -go.opentelemetry.io/otel v1.21.0 h1:hzLeKBZEL7Okw2mGzZ0cc4k/A7Fta0uoPgaJCr8fsFc= -go.opentelemetry.io/otel v1.21.0/go.mod h1:QZzNPQPm1zLX4gZK4cMi+71eaorMSGT3A4znnUvNNEo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0 h1:cl5P5/GIfFh4t6xyruOgJP5QiA1pw4fYYdv6nc6CBWw= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0/go.mod h1:zgBdWWAu7oEEMC06MMKc5NLbA/1YDXV1sMpSqEeLQLg= +go.etcd.io/bbolt v1.3.11 h1:yGEzV1wPz2yVCLsD8ZAiGHhHVlczyC9d1rP43/VCRJ0= +go.etcd.io/bbolt v1.3.11/go.mod h1:dksAq7YMXoljX0xu6VF5DMZGbhYYoLUalEiSySYAS4I= +go.etcd.io/etcd/api/v3 v3.5.12 h1:W4sw5ZoU2Juc9gBWuLk5U6fHfNVyY1WC5g9uiXZio/c= +go.etcd.io/etcd/api/v3 v3.5.12/go.mod h1:Ot+o0SWSyT6uHhA56al1oCED0JImsRiU9Dc26+C2a+4= +go.etcd.io/etcd/client/pkg/v3 v3.5.12 h1:EYDL6pWwyOsylrQyLp2w+HkQ46ATiOvoEdMarindU2A= +go.etcd.io/etcd/client/pkg/v3 v3.5.12/go.mod h1:seTzl2d9APP8R5Y2hFL3NVlD6qC/dOT+3kvrqPyTas4= +go.etcd.io/etcd/client/v2 v2.305.12 h1:0m4ovXYo1CHaA/Mp3X/Fak5sRNIWf01wk/X1/G3sGKI= +go.etcd.io/etcd/client/v2 v2.305.12/go.mod h1:aQ/yhsxMu+Oht1FOupSr60oBvcS9cKXHrzBpDsPTf9E= +go.etcd.io/etcd/client/v3 v3.5.12 h1:v5lCPXn1pf1Uu3M4laUE2hp/geOTc5uPcYYsNe1lDxg= +go.etcd.io/etcd/client/v3 v3.5.12/go.mod h1:tSbBCakoWmmddL+BKVAJHa9km+O/E+bumDe9mSbPiqw= +go.etcd.io/etcd/pkg/v3 v3.5.12 h1:OK2fZKI5hX/+BTK76gXSTyZMrbnARyX9S643GenNGb8= +go.etcd.io/etcd/pkg/v3 v3.5.12/go.mod h1:UVwg/QIMoJncyeb/YxvJBJCE/NEwtHWashqc8A1nj/M= +go.etcd.io/etcd/raft/v3 v3.5.12 h1:7r22RufdDsq2z3STjoR7Msz6fYH8tmbkdheGfwJNRmU= +go.etcd.io/etcd/raft/v3 v3.5.12/go.mod h1:ERQuZVe79PI6vcC3DlKBukDCLja/L7YMu29B74Iwj4U= +go.etcd.io/etcd/server/v3 v3.5.12 h1:EtMjsbfyfkwZuA2JlKOiBfuGkFCekv5H178qjXypbG8= +go.etcd.io/etcd/server/v3 v3.5.12/go.mod h1:axB0oCjMy+cemo5290/CutIjoxlfA6KVYKD1w0uue10= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 h1:RbKq8BG0FI8OiXhBfcRtqqHcZcka+gU3cskNuf05R18= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0/go.mod h1:h06DGIukJOevXaj/xrNjhi/2098RZzcLTbc0jDAUbsg= +go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= +go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0 h1:tIqheXEFWAZ7O8A7m+J0aPTmpJN3YQ7qetUAdkkkKpk= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0/go.mod h1:nUeKExfxAQVbiVFn32YXpXZZHZ61Cc3s3Rn1pDBGAb0= -go.opentelemetry.io/otel/metric v1.21.0 h1:tlYWfeo+Bocx5kLEloTjbcDwBuELRrIFxwdQ36PlJu4= -go.opentelemetry.io/otel/metric v1.21.0/go.mod h1:o1p3CA8nNHW8j5yuQLdc1eeqEaPfzug24uvsyIEJRWM= -go.opentelemetry.io/otel/sdk v1.21.0 h1:FTt8qirL1EysG6sTQRZ5TokkU8d0ugCj8htOgThZXQ8= -go.opentelemetry.io/otel/sdk v1.21.0/go.mod h1:Nna6Yv7PWTdgJHVRD9hIYywQBRx7pbox6nwBnZIxl/E= -go.opentelemetry.io/otel/trace v1.21.0 h1:WD9i5gzvoUPuXIXH24ZNBudiarZDKuekPqi/E8fpfLc= -go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+BaslueVtS/qQ= -go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= -go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= -go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I= -go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= +go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= +go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= +go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= +go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= +go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= +go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= +go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= +go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= +go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= +go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ= +go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= @@ -1017,61 +568,27 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20190404164418-38d8ce5564a5/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= -golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= +golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34= +golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= -golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= -golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= -golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= -golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 h1:hNQpMuAJe5CtcUqCXaWga3FHu+kQvCqcsoVaQgSV60o= -golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= -golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= -golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/exp v0.0.0-20240325151524-a685a6edb6d8 h1:aAcj0Da7eBAtrTp03QXWvm88pSyOt+UgdZw2BFZ+lEw= +golang.org/x/exp v0.0.0-20240325151524-a685a6edb6d8/go.mod h1:CQ1k9gNrJ50XIzaKCRR2hssIjF07kZFEiieALBM/ARQ= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= -golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= -golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= -golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= -golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20150829230318-ea47fc708ee3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1081,217 +598,69 @@ golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= -golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211123203042-d83791d6bcd9/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.0.0-20220617184016-355a448f1bc9/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.0.0-20221012135044-0b7e1fb9d458/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.0.0-20221014081412-f15817d10f9b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= -golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8= +golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.0.0-20220608161450-d0670ef3b1eb/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE= -golang.org/x/oauth2 v0.0.0-20220622183110-fd043fe589d2/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE= -golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= -golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= -golang.org/x/oauth2 v0.0.0-20221006150949-b44042a4b9c1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= -golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= -golang.org/x/oauth2 v0.4.0/go.mod h1:RznEsdpjGAINPTOF0UH/t+xJ75L18YO3Ho6Pyn+uRec= -golang.org/x/oauth2 v0.15.0 h1:s8pnnxNVzjWyrvYdFUQq5llS1PX2zhPXmccZv99h7uQ= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= +golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw= +golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211210111614-af8b64212486/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.35.0 h1:vz1N37gP5bs89s7He8XuIYXpyY0+QlsKmzipCbUtyxI= +golang.org/x/sys v0.35.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= -golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y= +golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY= +golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4= golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1299,299 +668,49 @@ golang.org/x/tools v0.0.0-20181008205924-a2b3f7f249e9/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= -golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= -golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= -golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= -golang.org/x/tools v0.17.0 h1:FvmRgNOcs3kOa+T20R1uhfP9F6HgG2mfxDv1vrx1Htc= -golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= +golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= +golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= -google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= -google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= -google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= -google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= -google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= -google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= -google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= -google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= -google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= -google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= -google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= -google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= -google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= -google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= -google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= -google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI= -google.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I= -google.golang.org/api v0.63.0/go.mod h1:gs4ij2ffTRXwuzzgJl/56BdwJaA194ijkfn++9tDuPo= -google.golang.org/api v0.67.0/go.mod h1:ShHKP8E60yPsKNw/w8w+VYaj9H6buA5UqDp8dhbQZ6g= -google.golang.org/api v0.70.0/go.mod h1:Bs4ZM2HGifEvXwd50TtW70ovgJffJYw2oRCOFU/SkfA= -google.golang.org/api v0.71.0/go.mod h1:4PyU6e6JogV1f9eA4voyrTY2batOLdgZ5qZ5HOCc4j8= -google.golang.org/api v0.74.0/go.mod h1:ZpfMZOVRMywNyvJFeqL9HRWBgAuRfSjJFpe9QtRRyDs= -google.golang.org/api v0.75.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= -google.golang.org/api v0.77.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= -google.golang.org/api v0.78.0/go.mod h1:1Sg78yoMLOhlQTeF+ARBoytAcH1NNyyl390YMy6rKmw= -google.golang.org/api v0.80.0/go.mod h1:xY3nI94gbvBrE0J6NHXhxOmW97HG7Khjkku6AFB3Hyg= -google.golang.org/api v0.84.0/go.mod h1:NTsGnUFJMYROtiquksZHBWtHfeMC7iYthki7Eq3pa8o= -google.golang.org/api v0.85.0/go.mod h1:AqZf8Ep9uZ2pyTvgL+x0D3Zt0eoT9b5E8fmzfu6FO2g= -google.golang.org/api v0.90.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= -google.golang.org/api v0.93.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= -google.golang.org/api v0.95.0/go.mod h1:eADj+UBuxkh5zlrSntJghuNeg8HwQ1w5lTKkuqaETEI= -google.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= -google.golang.org/api v0.97.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= -google.golang.org/api v0.98.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= -google.golang.org/api v0.99.0/go.mod h1:1YOf74vkVndF7pG6hIHuINsM7eWwpVTAfNMNiL91A08= -google.golang.org/api v0.100.0/go.mod h1:ZE3Z2+ZOr87Rx7dqFsdRQkRBk36kDtp/h+QpHbB7a70= -google.golang.org/api v0.102.0/go.mod h1:3VFl6/fzoA+qNuS1N1/VfXY4LjoXN/wzeIp7TweWwGo= -google.golang.org/api v0.103.0/go.mod h1:hGtW6nK1AC+d9si/UBhw8Xli+QMOf6xyNAyJw4qU9w0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= -google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= -google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= -google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= -google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= -google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210329143202-679c6ae281ee/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= -google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= -google.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= -google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= -google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= -google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211221195035-429b39de9b1c/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20220126215142-9970aeb2e350/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20220207164111-0872dc986b00/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20220218161850-94dd64e39d7c/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= -google.golang.org/genproto v0.0.0-20220222213610-43724f9ea8cf/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= -google.golang.org/genproto v0.0.0-20220304144024-325a89244dc8/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= -google.golang.org/genproto v0.0.0-20220310185008-1973136f34c6/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= -google.golang.org/genproto v0.0.0-20220324131243-acbaeb5b85eb/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= -google.golang.org/genproto v0.0.0-20220329172620-7be39ac1afc7/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220407144326-9054f6ed7bac/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220413183235-5e96e2839df9/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220414192740-2d67ff6cf2b4/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220421151946-72621c1f0bd3/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220429170224-98d788798c3e/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= -google.golang.org/genproto v0.0.0-20220502173005-c8bf987b8c21/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= -google.golang.org/genproto v0.0.0-20220505152158-f39f71e6c8f3/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= -google.golang.org/genproto v0.0.0-20220518221133-4f43b3371335/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= -google.golang.org/genproto v0.0.0-20220523171625-347a074981d8/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= -google.golang.org/genproto v0.0.0-20220608133413-ed9918b62aac/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220616135557-88e70c0c3a90/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220617124728-180714bec0ad/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220624142145-8cd45d7dbd1f/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220628213854-d9e0b6570c03/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220722212130-b98a9ff5e252/go.mod h1:GkXuJDJ6aQ7lnJcRF+SJVgFdQhypqgl3LB1C9vabdRE= -google.golang.org/genproto v0.0.0-20220801145646-83ce21fca29f/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc= -google.golang.org/genproto v0.0.0-20220815135757-37a418bb8959/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= -google.golang.org/genproto v0.0.0-20220817144833-d7fd3f11b9b1/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= -google.golang.org/genproto v0.0.0-20220822174746-9e6da59bd2fc/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= -google.golang.org/genproto v0.0.0-20220829144015-23454907ede3/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= -google.golang.org/genproto v0.0.0-20220829175752-36a9c930ecbf/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= -google.golang.org/genproto v0.0.0-20220913154956-18f8339a66a5/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= -google.golang.org/genproto v0.0.0-20220914142337-ca0e39ece12f/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= -google.golang.org/genproto v0.0.0-20220915135415-7fd63a7952de/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= -google.golang.org/genproto v0.0.0-20220916172020-2692e8806bfa/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= -google.golang.org/genproto v0.0.0-20220919141832-68c03719ef51/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= -google.golang.org/genproto v0.0.0-20220920201722-2b89144ce006/go.mod h1:ht8XFiar2npT/g4vkk7O0WYS1sHOHbdujxbEp7CJWbw= -google.golang.org/genproto v0.0.0-20220926165614-551eb538f295/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI= -google.golang.org/genproto v0.0.0-20220926220553-6981cbe3cfce/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI= -google.golang.org/genproto v0.0.0-20221010155953-15ba04fc1c0e/go.mod h1:3526vdqwhZAwq4wsRUaVG555sVgsNmIjRtO7t/JH29U= -google.golang.org/genproto v0.0.0-20221014173430-6e2ab493f96b/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= -google.golang.org/genproto v0.0.0-20221014213838-99cd37c6964a/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= -google.golang.org/genproto v0.0.0-20221024153911-1573dae28c9c/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= -google.golang.org/genproto v0.0.0-20221024183307-1bc688fe9f3e/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= -google.golang.org/genproto v0.0.0-20221027153422-115e99e71e1c/go.mod h1:CGI5F/G+E5bKwmfYo09AXuVN4dD894kIKUFmVbP2/Fo= -google.golang.org/genproto v0.0.0-20221114212237-e4508ebdbee1/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= -google.golang.org/genproto v0.0.0-20221117204609-8f9c96812029/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= -google.golang.org/genproto v0.0.0-20221118155620-16455021b5e6/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= -google.golang.org/genproto v0.0.0-20221201164419-0e50fba7f41c/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= -google.golang.org/genproto v0.0.0-20221202195650-67e5cbc046fd/go.mod h1:cTsE614GARnxrLsqKREzmNYJACSWWpAWdNMwnD7c2BE= -google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= -google.golang.org/genproto v0.0.0-20240108191215-35c7eff3a6b1 h1:/IWabOtPziuXTEtI1KYCpM6Ss7vaAkeMxk+uXV/xvZs= -google.golang.org/genproto v0.0.0-20240108191215-35c7eff3a6b1/go.mod h1:+Rvu7ElI+aLzyDQhpHMFMMltsD6m7nqpuWDd2CwJw3k= -google.golang.org/genproto/googleapis/api v0.0.0-20240108191215-35c7eff3a6b1 h1:OPXtXn7fNMaXwO3JvOmF1QyTc00jsSFFz1vXXBOdCDo= -google.golang.org/genproto/googleapis/api v0.0.0-20240108191215-35c7eff3a6b1/go.mod h1:B5xPO//w8qmBDjGReYLpR6UJPnkldGkCSMoH/2vxJeg= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240108191215-35c7eff3a6b1 h1:gphdwh0npgs8elJ4T6J+DQJHPVF7RsuJHCfwztUb4J4= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240108191215-35c7eff3a6b1/go.mod h1:daQN87bsDqDoe316QbbvX60nMoJQa4r6Ds0ZuoAe5yA= +google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 h1:9+tzLLstTlPTRyJTh+ah5wIMsBW5c4tQwGTN3thOW9Y= +google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9/go.mod h1:mqHbVIp48Muh7Ywss/AD6I5kNVKZMmAa/QEW58Gxp2s= +google.golang.org/genproto/googleapis/api v0.0.0-20240730163845-b1a4ccb954bf h1:GillM0Ef0pkZPIB+5iO6SDK+4T9pf6TpaYR6ICD5rVE= +google.golang.org/genproto/googleapis/api v0.0.0-20240730163845-b1a4ccb954bf/go.mod h1:OFMYQFHJ4TM3JRlWDZhJbZfra2uqc3WLBZiaaqP4DtU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf h1:liao9UHurZLtiEwBgT9LMOnKYsHze6eA6w1KQCMVN2Q= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= -google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= -google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= -google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= -google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= -google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.42.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= -google.golang.org/grpc v1.44.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= -google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= -google.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.46.2/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.47.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.48.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.51.0/go.mod h1:wgNDFcnuBGmxLKI/qn4T+m5BtEBYXJPvibbUPsAIPww= -google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw= -google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU= -google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= +google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= +google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v1 v1.0.0/go.mod h1:CxwszS/Xz1C49Ucd2i6Zil5UToP1EmyrFhKaMVbg1mk= gopkg.in/errgo.v1 v1.0.1 h1:oQFRXzZ7CkBGdm1XZm/EbQYaYNNEElNBOd09M6cqNso= gopkg.in/errgo.v1 v1.0.1/go.mod h1:3NjfXwocQRYAPTq4/fzX+CwUhPRcR/azYRhj8G+LqMo= @@ -1618,44 +737,43 @@ gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= +gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= +gotest.tools/v3 v3.3.0 h1:MfDY1b1/0xN1CyMlQDac0ziEy9zJQd9CXBRRDHw2jJo= +gotest.tools/v3 v3.3.0/go.mod h1:Mcr9QNxkg0uMvy/YElmo4SpXgJKWgQvYrT7Kw5RzJ1A= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -lukechampine.com/uint128 v1.3.0 h1:cDdUVfRwDUDovz610ABgFD17nXD4/uDgVHl2sC3+sbo= -lukechampine.com/uint128 v1.3.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk= -modernc.org/cc/v3 v3.41.0 h1:QoR1Sn3YWlmA1T4vLaKZfawdVtSiGx8H+cEojbC7v1Q= -modernc.org/cc/v3 v3.41.0/go.mod h1:Ni4zjJYJ04CDOhG7dn640WGfwBzfE0ecX8TyMB0Fv0Y= -modernc.org/ccgo/v3 v3.16.15 h1:KbDR3ZAVU+wiLyMESPtbtE/Add4elztFyfsWoNTgxS0= -modernc.org/ccgo/v3 v3.16.15/go.mod h1:yT7B+/E2m43tmMOT51GMoM98/MtHIcQQSleGnddkUNI= -modernc.org/ccorpus v1.11.6 h1:J16RXiiqiCgua6+ZvQot4yUuUy8zxgqbqEEUuGPlISk= -modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM= -modernc.org/libc v1.40.1 h1:ZhRylEBcj3GyQbPVC8JxIg7SdrT4JOxIDJoUon0NfF8= -modernc.org/libc v1.40.1/go.mod h1:YAXkAZ8ktnkCKaN9sw/UDeUVkGYJ/YquGO4FTi5nmHE= +modernc.org/cc/v4 v4.21.4 h1:3Be/Rdo1fpr8GrQ7IVw9OHtplU4gWbb+wNgeoBMmGLQ= +modernc.org/cc/v4 v4.21.4/go.mod h1:HM7VJTZbUCR3rV8EYBi9wxnJ0ZBRiGE5OeGXNA0IsLQ= +modernc.org/ccgo/v4 v4.19.2 h1:lwQZgvboKD0jBwdaeVCTouxhxAyN6iawF3STraAal8Y= +modernc.org/ccgo/v4 v4.19.2/go.mod h1:ysS3mxiMV38XGRTTcgo0DQTeTmAO4oCmJl1nX9VFI3s= +modernc.org/fileutil v1.3.0 h1:gQ5SIzK3H9kdfai/5x41oQiKValumqNTDXMvKo62HvE= +modernc.org/fileutil v1.3.0/go.mod h1:XatxS8fZi3pS8/hKG2GH/ArUogfxjpEKs3Ku3aK4JyQ= +modernc.org/gc/v2 v2.4.1 h1:9cNzOqPyMJBvrUipmynX0ZohMhcxPtMccYgGOJdOiBw= +modernc.org/gc/v2 v2.4.1/go.mod h1:wzN5dK1AzVGoH6XOzc3YZ+ey/jPgYHLuVckd62P0GYU= +modernc.org/libc v1.55.3 h1:AzcW1mhlPNrRtjS5sS+eW2ISCgSOLLNyFzRh/V3Qj/U= +modernc.org/libc v1.55.3/go.mod h1:qFXepLhz+JjFThQ4kzwzOjA/y/artDeg+pcYnY+Q83w= modernc.org/mathutil v1.6.0 h1:fRe9+AmYlaej+64JsEEhoWuAYBkOtQiMEU7n/XgfYi4= modernc.org/mathutil v1.6.0/go.mod h1:Ui5Q9q1TR2gFm0AQRqQUaBWFLAhQpCwNcuhBOSedWPo= -modernc.org/memory v1.7.2 h1:Klh90S215mmH8c9gO98QxQFsY+W451E8AnzjoE2ee1E= -modernc.org/memory v1.7.2/go.mod h1:NO4NVCQy0N7ln+T9ngWqOQfi7ley4vpwvARR+Hjw95E= +modernc.org/memory v1.8.0 h1:IqGTL6eFMaDZZhEWwcREgeMXYwmW83LYW8cROZYkg+E= +modernc.org/memory v1.8.0/go.mod h1:XPZ936zp5OMKGWPqbD3JShgd/ZoQ7899TUuQqxY+peU= modernc.org/opt v0.1.3 h1:3XOZf2yznlhC+ibLltsDGzABUGVx8J6pnFMS3E4dcq4= modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= -modernc.org/sqlite v1.28.0 h1:Zx+LyDDmXczNnEQdvPuEfcFVA2ZPyaD7UCZDjef3BHQ= -modernc.org/sqlite v1.28.0/go.mod h1:Qxpazz0zH8Z1xCFyi5GSL3FzbtZ3fvbjmywNogldEW0= +modernc.org/sortutil v1.2.0 h1:jQiD3PfS2REGJNzNCMMaLSp/wdMNieTbKX920Cqdgqc= +modernc.org/sortutil v1.2.0/go.mod h1:TKU2s7kJMf1AE84OoiGppNHJwvB753OYfNl2WRb++Ss= +modernc.org/sqlite v1.34.5 h1:Bb6SR13/fjp15jt70CL4f18JIN7p7dnMExd+UFnF15g= +modernc.org/sqlite v1.34.5/go.mod h1:YLuNmX9NKs8wRNK2ko1LW1NGYcc9FkBO69JOt1AR9JE= modernc.org/strutil v1.2.0 h1:agBi9dp1I+eOnxXeiZawM8F4LawKv4NzGWSaLfyeNZA= modernc.org/strutil v1.2.0/go.mod h1:/mdcBmfOibveCTBxUl5B5l6W+TTH1FXPLHZE6bTosX0= -modernc.org/tcl v1.15.2 h1:C4ybAYCGJw968e+Me18oW55kD/FexcHbqH2xak1ROSY= modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= -modernc.org/z v1.7.3 h1:zDJf6iHjrnB+WRD88stbXokugjyc0/pB91ri1gO6LZY= -rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= -rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= -rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +pgregory.net/rapid v1.2.0 h1:keKAYRcjm+e1F0oAuU5F5+YPAWcyxNNRK2wud503Gnk= +pgregory.net/rapid v1.2.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= From da584f409b366dd7257561ed4ee4f6b686c95baa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Wed, 17 Sep 2025 19:39:31 +0200 Subject: [PATCH 02/12] feat: update Go version to 1.25 in workflow configuration --- .github/workflows/go.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 99bc64a..ce274dd 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -18,7 +18,7 @@ jobs: - name: Set up Go uses: actions/setup-go@v3 with: - go-version: 1.22 + go-version: 1.25 - name: Build run: go build -v ./... From 2b127f7972119f1a62e8eee24e50e25c97925fa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 11:20:08 +0200 Subject: [PATCH 03/12] feat: update Go version and regenerate Lightning RPC mocks - Bump Go version from 1.24 to 1.25 in go.mod - Regenerate lightning_rpc_mock.go with updated mockgen command - Add GetDebugInfo method to MockLightningClient interface - Remove deprecated streaming client mocks and swap client mocks --- go.mod | 2 +- lightning_rpc_mock.go | 4350 +---------------------------------- liquidator.go | 2 + main.go | 6 +- nodeguard/nodeguard_mock.go | 270 +-- provider/loopd_mock.go | 786 ++----- provider/provider.go | 3 + provider/provider_mock.go | 5 +- 8 files changed, 235 insertions(+), 5189 deletions(-) diff --git a/go.mod b/go.mod index bd65056..6781b05 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/Elenpay/liquidator -go 1.24 +go 1.25 replace google.golang.org/protobuf => github.com/lightninglabs/protobuf-go-hex-display v1.30.0-hex-display diff --git a/lightning_rpc_mock.go b/lightning_rpc_mock.go index e34bb12..47ce806 100644 --- a/lightning_rpc_mock.go +++ b/lightning_rpc_mock.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: lnd/lnrpc/lightning_grpc.pb.go +// Source: github.com/lightningnetwork/lnd/lnrpc (interfaces: LightningClient) // // Generated by this command: // -// mockgen -destination lightning_rpc_mock.go -source lnd/lnrpc/lightning_grpc.pb.go -package main +// mockgen -destination ./lightning_rpc_mock.go -package main github.com/lightningnetwork/lnd/lnrpc LightningClient // // Package main is a generated GoMock package. @@ -16,13 +16,13 @@ import ( lnrpc "github.com/lightningnetwork/lnd/lnrpc" gomock "go.uber.org/mock/gomock" grpc "google.golang.org/grpc" - metadata "google.golang.org/grpc/metadata" ) // MockLightningClient is a mock of LightningClient interface. type MockLightningClient struct { ctrl *gomock.Controller recorder *MockLightningClientMockRecorder + isgomock struct{} } // MockLightningClientMockRecorder is the mock recorder for MockLightningClient. @@ -522,6 +522,26 @@ func (mr *MockLightningClientMockRecorder) GetChanInfo(ctx, in any, opts ...any) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChanInfo", reflect.TypeOf((*MockLightningClient)(nil).GetChanInfo), varargs...) } +// GetDebugInfo mocks base method. +func (m *MockLightningClient) GetDebugInfo(ctx context.Context, in *lnrpc.GetDebugInfoRequest, opts ...grpc.CallOption) (*lnrpc.GetDebugInfoResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetDebugInfo", varargs...) + ret0, _ := ret[0].(*lnrpc.GetDebugInfoResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetDebugInfo indicates an expected call of GetDebugInfo. +func (mr *MockLightningClientMockRecorder) GetDebugInfo(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDebugInfo", reflect.TypeOf((*MockLightningClient)(nil).GetDebugInfo), varargs...) +} + // GetInfo mocks base method. func (m *MockLightningClient) GetInfo(ctx context.Context, in *lnrpc.GetInfoRequest, opts ...grpc.CallOption) (*lnrpc.GetInfoResponse, error) { m.ctrl.T.Helper() @@ -1381,4327 +1401,3 @@ func (mr *MockLightningClientMockRecorder) WalletBalance(ctx, in any, opts ...an varargs := append([]any{ctx, in}, opts...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WalletBalance", reflect.TypeOf((*MockLightningClient)(nil).WalletBalance), varargs...) } - -// MockLightning_SubscribeTransactionsClient is a mock of Lightning_SubscribeTransactionsClient interface. -type MockLightning_SubscribeTransactionsClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeTransactionsClientMockRecorder -} - -// MockLightning_SubscribeTransactionsClientMockRecorder is the mock recorder for MockLightning_SubscribeTransactionsClient. -type MockLightning_SubscribeTransactionsClientMockRecorder struct { - mock *MockLightning_SubscribeTransactionsClient -} - -// NewMockLightning_SubscribeTransactionsClient creates a new mock instance. -func NewMockLightning_SubscribeTransactionsClient(ctrl *gomock.Controller) *MockLightning_SubscribeTransactionsClient { - mock := &MockLightning_SubscribeTransactionsClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeTransactionsClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeTransactionsClient) EXPECT() *MockLightning_SubscribeTransactionsClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeTransactionsClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeTransactionsClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeTransactionsClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeTransactionsClient) Recv() (*lnrpc.Transaction, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.Transaction) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeTransactionsClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeTransactionsClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeTransactionsClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeTransactionsClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeTransactionsClient)(nil).Trailer)) -} - -// MockLightning_SubscribePeerEventsClient is a mock of Lightning_SubscribePeerEventsClient interface. -type MockLightning_SubscribePeerEventsClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribePeerEventsClientMockRecorder -} - -// MockLightning_SubscribePeerEventsClientMockRecorder is the mock recorder for MockLightning_SubscribePeerEventsClient. -type MockLightning_SubscribePeerEventsClientMockRecorder struct { - mock *MockLightning_SubscribePeerEventsClient -} - -// NewMockLightning_SubscribePeerEventsClient creates a new mock instance. -func NewMockLightning_SubscribePeerEventsClient(ctrl *gomock.Controller) *MockLightning_SubscribePeerEventsClient { - mock := &MockLightning_SubscribePeerEventsClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribePeerEventsClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribePeerEventsClient) EXPECT() *MockLightning_SubscribePeerEventsClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribePeerEventsClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribePeerEventsClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribePeerEventsClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribePeerEventsClient) Recv() (*lnrpc.PeerEvent, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.PeerEvent) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribePeerEventsClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribePeerEventsClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribePeerEventsClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribePeerEventsClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribePeerEventsClient)(nil).Trailer)) -} - -// MockLightning_SubscribeChannelEventsClient is a mock of Lightning_SubscribeChannelEventsClient interface. -type MockLightning_SubscribeChannelEventsClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelEventsClientMockRecorder -} - -// MockLightning_SubscribeChannelEventsClientMockRecorder is the mock recorder for MockLightning_SubscribeChannelEventsClient. -type MockLightning_SubscribeChannelEventsClientMockRecorder struct { - mock *MockLightning_SubscribeChannelEventsClient -} - -// NewMockLightning_SubscribeChannelEventsClient creates a new mock instance. -func NewMockLightning_SubscribeChannelEventsClient(ctrl *gomock.Controller) *MockLightning_SubscribeChannelEventsClient { - mock := &MockLightning_SubscribeChannelEventsClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelEventsClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelEventsClient) EXPECT() *MockLightning_SubscribeChannelEventsClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeChannelEventsClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelEventsClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeChannelEventsClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeChannelEventsClient) Recv() (*lnrpc.ChannelEventUpdate, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.ChannelEventUpdate) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelEventsClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelEventsClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeChannelEventsClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeChannelEventsClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeChannelEventsClient)(nil).Trailer)) -} - -// MockLightning_OpenChannelClient is a mock of Lightning_OpenChannelClient interface. -type MockLightning_OpenChannelClient struct { - ctrl *gomock.Controller - recorder *MockLightning_OpenChannelClientMockRecorder -} - -// MockLightning_OpenChannelClientMockRecorder is the mock recorder for MockLightning_OpenChannelClient. -type MockLightning_OpenChannelClientMockRecorder struct { - mock *MockLightning_OpenChannelClient -} - -// NewMockLightning_OpenChannelClient creates a new mock instance. -func NewMockLightning_OpenChannelClient(ctrl *gomock.Controller) *MockLightning_OpenChannelClient { - mock := &MockLightning_OpenChannelClient{ctrl: ctrl} - mock.recorder = &MockLightning_OpenChannelClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_OpenChannelClient) EXPECT() *MockLightning_OpenChannelClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_OpenChannelClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_OpenChannelClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_OpenChannelClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_OpenChannelClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_OpenChannelClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_OpenChannelClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_OpenChannelClient) Recv() (*lnrpc.OpenStatusUpdate, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.OpenStatusUpdate) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_OpenChannelClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_OpenChannelClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_OpenChannelClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_OpenChannelClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_OpenChannelClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_OpenChannelClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_OpenChannelClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_OpenChannelClient)(nil).Trailer)) -} - -// MockLightning_ChannelAcceptorClient is a mock of Lightning_ChannelAcceptorClient interface. -type MockLightning_ChannelAcceptorClient struct { - ctrl *gomock.Controller - recorder *MockLightning_ChannelAcceptorClientMockRecorder -} - -// MockLightning_ChannelAcceptorClientMockRecorder is the mock recorder for MockLightning_ChannelAcceptorClient. -type MockLightning_ChannelAcceptorClientMockRecorder struct { - mock *MockLightning_ChannelAcceptorClient -} - -// NewMockLightning_ChannelAcceptorClient creates a new mock instance. -func NewMockLightning_ChannelAcceptorClient(ctrl *gomock.Controller) *MockLightning_ChannelAcceptorClient { - mock := &MockLightning_ChannelAcceptorClient{ctrl: ctrl} - mock.recorder = &MockLightning_ChannelAcceptorClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_ChannelAcceptorClient) EXPECT() *MockLightning_ChannelAcceptorClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_ChannelAcceptorClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_ChannelAcceptorClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_ChannelAcceptorClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_ChannelAcceptorClient) Recv() (*lnrpc.ChannelAcceptRequest, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.ChannelAcceptRequest) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_ChannelAcceptorClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_ChannelAcceptorClient) Send(arg0 *lnrpc.ChannelAcceptResponse) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).Send), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_ChannelAcceptorClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_ChannelAcceptorClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_ChannelAcceptorClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_ChannelAcceptorClient)(nil).Trailer)) -} - -// MockLightning_CloseChannelClient is a mock of Lightning_CloseChannelClient interface. -type MockLightning_CloseChannelClient struct { - ctrl *gomock.Controller - recorder *MockLightning_CloseChannelClientMockRecorder -} - -// MockLightning_CloseChannelClientMockRecorder is the mock recorder for MockLightning_CloseChannelClient. -type MockLightning_CloseChannelClientMockRecorder struct { - mock *MockLightning_CloseChannelClient -} - -// NewMockLightning_CloseChannelClient creates a new mock instance. -func NewMockLightning_CloseChannelClient(ctrl *gomock.Controller) *MockLightning_CloseChannelClient { - mock := &MockLightning_CloseChannelClient{ctrl: ctrl} - mock.recorder = &MockLightning_CloseChannelClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_CloseChannelClient) EXPECT() *MockLightning_CloseChannelClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_CloseChannelClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_CloseChannelClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_CloseChannelClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_CloseChannelClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_CloseChannelClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_CloseChannelClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_CloseChannelClient) Recv() (*lnrpc.CloseStatusUpdate, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.CloseStatusUpdate) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_CloseChannelClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_CloseChannelClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_CloseChannelClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_CloseChannelClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_CloseChannelClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_CloseChannelClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_CloseChannelClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_CloseChannelClient)(nil).Trailer)) -} - -// MockLightning_SendPaymentClient is a mock of Lightning_SendPaymentClient interface. -type MockLightning_SendPaymentClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SendPaymentClientMockRecorder -} - -// MockLightning_SendPaymentClientMockRecorder is the mock recorder for MockLightning_SendPaymentClient. -type MockLightning_SendPaymentClientMockRecorder struct { - mock *MockLightning_SendPaymentClient -} - -// NewMockLightning_SendPaymentClient creates a new mock instance. -func NewMockLightning_SendPaymentClient(ctrl *gomock.Controller) *MockLightning_SendPaymentClient { - mock := &MockLightning_SendPaymentClient{ctrl: ctrl} - mock.recorder = &MockLightning_SendPaymentClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SendPaymentClient) EXPECT() *MockLightning_SendPaymentClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SendPaymentClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SendPaymentClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SendPaymentClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SendPaymentClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SendPaymentClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SendPaymentClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SendPaymentClient) Recv() (*lnrpc.SendResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.SendResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SendPaymentClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SendPaymentClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SendPaymentClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SendPaymentClient) Send(arg0 *lnrpc.SendRequest) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SendPaymentClientMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).Send), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SendPaymentClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SendPaymentClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SendPaymentClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SendPaymentClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SendPaymentClient)(nil).Trailer)) -} - -// MockLightning_SendToRouteClient is a mock of Lightning_SendToRouteClient interface. -type MockLightning_SendToRouteClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SendToRouteClientMockRecorder -} - -// MockLightning_SendToRouteClientMockRecorder is the mock recorder for MockLightning_SendToRouteClient. -type MockLightning_SendToRouteClientMockRecorder struct { - mock *MockLightning_SendToRouteClient -} - -// NewMockLightning_SendToRouteClient creates a new mock instance. -func NewMockLightning_SendToRouteClient(ctrl *gomock.Controller) *MockLightning_SendToRouteClient { - mock := &MockLightning_SendToRouteClient{ctrl: ctrl} - mock.recorder = &MockLightning_SendToRouteClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SendToRouteClient) EXPECT() *MockLightning_SendToRouteClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SendToRouteClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SendToRouteClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SendToRouteClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SendToRouteClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SendToRouteClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SendToRouteClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SendToRouteClient) Recv() (*lnrpc.SendResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.SendResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SendToRouteClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SendToRouteClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SendToRouteClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SendToRouteClient) Send(arg0 *lnrpc.SendToRouteRequest) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SendToRouteClientMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).Send), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SendToRouteClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SendToRouteClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SendToRouteClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SendToRouteClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SendToRouteClient)(nil).Trailer)) -} - -// MockLightning_SubscribeInvoicesClient is a mock of Lightning_SubscribeInvoicesClient interface. -type MockLightning_SubscribeInvoicesClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeInvoicesClientMockRecorder -} - -// MockLightning_SubscribeInvoicesClientMockRecorder is the mock recorder for MockLightning_SubscribeInvoicesClient. -type MockLightning_SubscribeInvoicesClientMockRecorder struct { - mock *MockLightning_SubscribeInvoicesClient -} - -// NewMockLightning_SubscribeInvoicesClient creates a new mock instance. -func NewMockLightning_SubscribeInvoicesClient(ctrl *gomock.Controller) *MockLightning_SubscribeInvoicesClient { - mock := &MockLightning_SubscribeInvoicesClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeInvoicesClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeInvoicesClient) EXPECT() *MockLightning_SubscribeInvoicesClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeInvoicesClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeInvoicesClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeInvoicesClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeInvoicesClient) Recv() (*lnrpc.Invoice, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.Invoice) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeInvoicesClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeInvoicesClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeInvoicesClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeInvoicesClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeInvoicesClient)(nil).Trailer)) -} - -// MockLightning_SubscribeChannelGraphClient is a mock of Lightning_SubscribeChannelGraphClient interface. -type MockLightning_SubscribeChannelGraphClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelGraphClientMockRecorder -} - -// MockLightning_SubscribeChannelGraphClientMockRecorder is the mock recorder for MockLightning_SubscribeChannelGraphClient. -type MockLightning_SubscribeChannelGraphClientMockRecorder struct { - mock *MockLightning_SubscribeChannelGraphClient -} - -// NewMockLightning_SubscribeChannelGraphClient creates a new mock instance. -func NewMockLightning_SubscribeChannelGraphClient(ctrl *gomock.Controller) *MockLightning_SubscribeChannelGraphClient { - mock := &MockLightning_SubscribeChannelGraphClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelGraphClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelGraphClient) EXPECT() *MockLightning_SubscribeChannelGraphClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeChannelGraphClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelGraphClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeChannelGraphClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeChannelGraphClient) Recv() (*lnrpc.GraphTopologyUpdate, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.GraphTopologyUpdate) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelGraphClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelGraphClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeChannelGraphClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeChannelGraphClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeChannelGraphClient)(nil).Trailer)) -} - -// MockLightning_SubscribeChannelBackupsClient is a mock of Lightning_SubscribeChannelBackupsClient interface. -type MockLightning_SubscribeChannelBackupsClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelBackupsClientMockRecorder -} - -// MockLightning_SubscribeChannelBackupsClientMockRecorder is the mock recorder for MockLightning_SubscribeChannelBackupsClient. -type MockLightning_SubscribeChannelBackupsClientMockRecorder struct { - mock *MockLightning_SubscribeChannelBackupsClient -} - -// NewMockLightning_SubscribeChannelBackupsClient creates a new mock instance. -func NewMockLightning_SubscribeChannelBackupsClient(ctrl *gomock.Controller) *MockLightning_SubscribeChannelBackupsClient { - mock := &MockLightning_SubscribeChannelBackupsClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelBackupsClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelBackupsClient) EXPECT() *MockLightning_SubscribeChannelBackupsClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeChannelBackupsClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelBackupsClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeChannelBackupsClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeChannelBackupsClient) Recv() (*lnrpc.ChanBackupSnapshot, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.ChanBackupSnapshot) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelBackupsClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelBackupsClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeChannelBackupsClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeChannelBackupsClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsClient)(nil).Trailer)) -} - -// MockLightning_RegisterRPCMiddlewareClient is a mock of Lightning_RegisterRPCMiddlewareClient interface. -type MockLightning_RegisterRPCMiddlewareClient struct { - ctrl *gomock.Controller - recorder *MockLightning_RegisterRPCMiddlewareClientMockRecorder -} - -// MockLightning_RegisterRPCMiddlewareClientMockRecorder is the mock recorder for MockLightning_RegisterRPCMiddlewareClient. -type MockLightning_RegisterRPCMiddlewareClientMockRecorder struct { - mock *MockLightning_RegisterRPCMiddlewareClient -} - -// NewMockLightning_RegisterRPCMiddlewareClient creates a new mock instance. -func NewMockLightning_RegisterRPCMiddlewareClient(ctrl *gomock.Controller) *MockLightning_RegisterRPCMiddlewareClient { - mock := &MockLightning_RegisterRPCMiddlewareClient{ctrl: ctrl} - mock.recorder = &MockLightning_RegisterRPCMiddlewareClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_RegisterRPCMiddlewareClient) EXPECT() *MockLightning_RegisterRPCMiddlewareClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) Recv() (*lnrpc.RPCMiddlewareRequest, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.RPCMiddlewareRequest) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_RegisterRPCMiddlewareClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) Send(arg0 *lnrpc.RPCMiddlewareResponse) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).Send), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_RegisterRPCMiddlewareClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_RegisterRPCMiddlewareClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareClient)(nil).Trailer)) -} - -// MockLightning_SubscribeCustomMessagesClient is a mock of Lightning_SubscribeCustomMessagesClient interface. -type MockLightning_SubscribeCustomMessagesClient struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeCustomMessagesClientMockRecorder -} - -// MockLightning_SubscribeCustomMessagesClientMockRecorder is the mock recorder for MockLightning_SubscribeCustomMessagesClient. -type MockLightning_SubscribeCustomMessagesClientMockRecorder struct { - mock *MockLightning_SubscribeCustomMessagesClient -} - -// NewMockLightning_SubscribeCustomMessagesClient creates a new mock instance. -func NewMockLightning_SubscribeCustomMessagesClient(ctrl *gomock.Controller) *MockLightning_SubscribeCustomMessagesClient { - mock := &MockLightning_SubscribeCustomMessagesClient{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeCustomMessagesClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeCustomMessagesClient) EXPECT() *MockLightning_SubscribeCustomMessagesClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockLightning_SubscribeCustomMessagesClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockLightning_SubscribeCustomMessagesClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockLightning_SubscribeCustomMessagesClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockLightning_SubscribeCustomMessagesClient) Recv() (*lnrpc.CustomMessage, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.CustomMessage) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeCustomMessagesClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeCustomMessagesClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockLightning_SubscribeCustomMessagesClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockLightning_SubscribeCustomMessagesClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesClient)(nil).Trailer)) -} - -// MockLightningServer is a mock of LightningServer interface. -type MockLightningServer struct { - ctrl *gomock.Controller - recorder *MockLightningServerMockRecorder -} - -// MockLightningServerMockRecorder is the mock recorder for MockLightningServer. -type MockLightningServerMockRecorder struct { - mock *MockLightningServer -} - -// NewMockLightningServer creates a new mock instance. -func NewMockLightningServer(ctrl *gomock.Controller) *MockLightningServer { - mock := &MockLightningServer{ctrl: ctrl} - mock.recorder = &MockLightningServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightningServer) EXPECT() *MockLightningServerMockRecorder { - return m.recorder -} - -// AbandonChannel mocks base method. -func (m *MockLightningServer) AbandonChannel(arg0 context.Context, arg1 *lnrpc.AbandonChannelRequest) (*lnrpc.AbandonChannelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AbandonChannel", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.AbandonChannelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// AbandonChannel indicates an expected call of AbandonChannel. -func (mr *MockLightningServerMockRecorder) AbandonChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AbandonChannel", reflect.TypeOf((*MockLightningServer)(nil).AbandonChannel), arg0, arg1) -} - -// AddInvoice mocks base method. -func (m *MockLightningServer) AddInvoice(arg0 context.Context, arg1 *lnrpc.Invoice) (*lnrpc.AddInvoiceResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AddInvoice", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.AddInvoiceResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// AddInvoice indicates an expected call of AddInvoice. -func (mr *MockLightningServerMockRecorder) AddInvoice(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddInvoice", reflect.TypeOf((*MockLightningServer)(nil).AddInvoice), arg0, arg1) -} - -// BakeMacaroon mocks base method. -func (m *MockLightningServer) BakeMacaroon(arg0 context.Context, arg1 *lnrpc.BakeMacaroonRequest) (*lnrpc.BakeMacaroonResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "BakeMacaroon", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.BakeMacaroonResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// BakeMacaroon indicates an expected call of BakeMacaroon. -func (mr *MockLightningServerMockRecorder) BakeMacaroon(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BakeMacaroon", reflect.TypeOf((*MockLightningServer)(nil).BakeMacaroon), arg0, arg1) -} - -// BatchOpenChannel mocks base method. -func (m *MockLightningServer) BatchOpenChannel(arg0 context.Context, arg1 *lnrpc.BatchOpenChannelRequest) (*lnrpc.BatchOpenChannelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "BatchOpenChannel", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.BatchOpenChannelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// BatchOpenChannel indicates an expected call of BatchOpenChannel. -func (mr *MockLightningServerMockRecorder) BatchOpenChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BatchOpenChannel", reflect.TypeOf((*MockLightningServer)(nil).BatchOpenChannel), arg0, arg1) -} - -// ChannelAcceptor mocks base method. -func (m *MockLightningServer) ChannelAcceptor(arg0 lnrpc.Lightning_ChannelAcceptorServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ChannelAcceptor", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// ChannelAcceptor indicates an expected call of ChannelAcceptor. -func (mr *MockLightningServerMockRecorder) ChannelAcceptor(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChannelAcceptor", reflect.TypeOf((*MockLightningServer)(nil).ChannelAcceptor), arg0) -} - -// ChannelBalance mocks base method. -func (m *MockLightningServer) ChannelBalance(arg0 context.Context, arg1 *lnrpc.ChannelBalanceRequest) (*lnrpc.ChannelBalanceResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ChannelBalance", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChannelBalanceResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ChannelBalance indicates an expected call of ChannelBalance. -func (mr *MockLightningServerMockRecorder) ChannelBalance(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChannelBalance", reflect.TypeOf((*MockLightningServer)(nil).ChannelBalance), arg0, arg1) -} - -// CheckMacaroonPermissions mocks base method. -func (m *MockLightningServer) CheckMacaroonPermissions(arg0 context.Context, arg1 *lnrpc.CheckMacPermRequest) (*lnrpc.CheckMacPermResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CheckMacaroonPermissions", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.CheckMacPermResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// CheckMacaroonPermissions indicates an expected call of CheckMacaroonPermissions. -func (mr *MockLightningServerMockRecorder) CheckMacaroonPermissions(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CheckMacaroonPermissions", reflect.TypeOf((*MockLightningServer)(nil).CheckMacaroonPermissions), arg0, arg1) -} - -// CloseChannel mocks base method. -func (m *MockLightningServer) CloseChannel(arg0 *lnrpc.CloseChannelRequest, arg1 lnrpc.Lightning_CloseChannelServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseChannel", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseChannel indicates an expected call of CloseChannel. -func (mr *MockLightningServerMockRecorder) CloseChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseChannel", reflect.TypeOf((*MockLightningServer)(nil).CloseChannel), arg0, arg1) -} - -// ClosedChannels mocks base method. -func (m *MockLightningServer) ClosedChannels(arg0 context.Context, arg1 *lnrpc.ClosedChannelsRequest) (*lnrpc.ClosedChannelsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ClosedChannels", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ClosedChannelsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ClosedChannels indicates an expected call of ClosedChannels. -func (mr *MockLightningServerMockRecorder) ClosedChannels(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ClosedChannels", reflect.TypeOf((*MockLightningServer)(nil).ClosedChannels), arg0, arg1) -} - -// ConnectPeer mocks base method. -func (m *MockLightningServer) ConnectPeer(arg0 context.Context, arg1 *lnrpc.ConnectPeerRequest) (*lnrpc.ConnectPeerResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ConnectPeer", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ConnectPeerResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ConnectPeer indicates an expected call of ConnectPeer. -func (mr *MockLightningServerMockRecorder) ConnectPeer(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ConnectPeer", reflect.TypeOf((*MockLightningServer)(nil).ConnectPeer), arg0, arg1) -} - -// DebugLevel mocks base method. -func (m *MockLightningServer) DebugLevel(arg0 context.Context, arg1 *lnrpc.DebugLevelRequest) (*lnrpc.DebugLevelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DebugLevel", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.DebugLevelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DebugLevel indicates an expected call of DebugLevel. -func (mr *MockLightningServerMockRecorder) DebugLevel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DebugLevel", reflect.TypeOf((*MockLightningServer)(nil).DebugLevel), arg0, arg1) -} - -// DecodePayReq mocks base method. -func (m *MockLightningServer) DecodePayReq(arg0 context.Context, arg1 *lnrpc.PayReqString) (*lnrpc.PayReq, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DecodePayReq", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.PayReq) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DecodePayReq indicates an expected call of DecodePayReq. -func (mr *MockLightningServerMockRecorder) DecodePayReq(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DecodePayReq", reflect.TypeOf((*MockLightningServer)(nil).DecodePayReq), arg0, arg1) -} - -// DeleteAllPayments mocks base method. -func (m *MockLightningServer) DeleteAllPayments(arg0 context.Context, arg1 *lnrpc.DeleteAllPaymentsRequest) (*lnrpc.DeleteAllPaymentsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DeleteAllPayments", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.DeleteAllPaymentsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DeleteAllPayments indicates an expected call of DeleteAllPayments. -func (mr *MockLightningServerMockRecorder) DeleteAllPayments(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteAllPayments", reflect.TypeOf((*MockLightningServer)(nil).DeleteAllPayments), arg0, arg1) -} - -// DeleteMacaroonID mocks base method. -func (m *MockLightningServer) DeleteMacaroonID(arg0 context.Context, arg1 *lnrpc.DeleteMacaroonIDRequest) (*lnrpc.DeleteMacaroonIDResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DeleteMacaroonID", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.DeleteMacaroonIDResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DeleteMacaroonID indicates an expected call of DeleteMacaroonID. -func (mr *MockLightningServerMockRecorder) DeleteMacaroonID(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteMacaroonID", reflect.TypeOf((*MockLightningServer)(nil).DeleteMacaroonID), arg0, arg1) -} - -// DeletePayment mocks base method. -func (m *MockLightningServer) DeletePayment(arg0 context.Context, arg1 *lnrpc.DeletePaymentRequest) (*lnrpc.DeletePaymentResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DeletePayment", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.DeletePaymentResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DeletePayment indicates an expected call of DeletePayment. -func (mr *MockLightningServerMockRecorder) DeletePayment(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeletePayment", reflect.TypeOf((*MockLightningServer)(nil).DeletePayment), arg0, arg1) -} - -// DescribeGraph mocks base method. -func (m *MockLightningServer) DescribeGraph(arg0 context.Context, arg1 *lnrpc.ChannelGraphRequest) (*lnrpc.ChannelGraph, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DescribeGraph", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChannelGraph) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DescribeGraph indicates an expected call of DescribeGraph. -func (mr *MockLightningServerMockRecorder) DescribeGraph(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DescribeGraph", reflect.TypeOf((*MockLightningServer)(nil).DescribeGraph), arg0, arg1) -} - -// DisconnectPeer mocks base method. -func (m *MockLightningServer) DisconnectPeer(arg0 context.Context, arg1 *lnrpc.DisconnectPeerRequest) (*lnrpc.DisconnectPeerResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DisconnectPeer", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.DisconnectPeerResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// DisconnectPeer indicates an expected call of DisconnectPeer. -func (mr *MockLightningServerMockRecorder) DisconnectPeer(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DisconnectPeer", reflect.TypeOf((*MockLightningServer)(nil).DisconnectPeer), arg0, arg1) -} - -// EstimateFee mocks base method. -func (m *MockLightningServer) EstimateFee(arg0 context.Context, arg1 *lnrpc.EstimateFeeRequest) (*lnrpc.EstimateFeeResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "EstimateFee", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.EstimateFeeResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// EstimateFee indicates an expected call of EstimateFee. -func (mr *MockLightningServerMockRecorder) EstimateFee(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EstimateFee", reflect.TypeOf((*MockLightningServer)(nil).EstimateFee), arg0, arg1) -} - -// ExportAllChannelBackups mocks base method. -func (m *MockLightningServer) ExportAllChannelBackups(arg0 context.Context, arg1 *lnrpc.ChanBackupExportRequest) (*lnrpc.ChanBackupSnapshot, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExportAllChannelBackups", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChanBackupSnapshot) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ExportAllChannelBackups indicates an expected call of ExportAllChannelBackups. -func (mr *MockLightningServerMockRecorder) ExportAllChannelBackups(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExportAllChannelBackups", reflect.TypeOf((*MockLightningServer)(nil).ExportAllChannelBackups), arg0, arg1) -} - -// ExportChannelBackup mocks base method. -func (m *MockLightningServer) ExportChannelBackup(arg0 context.Context, arg1 *lnrpc.ExportChannelBackupRequest) (*lnrpc.ChannelBackup, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExportChannelBackup", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChannelBackup) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ExportChannelBackup indicates an expected call of ExportChannelBackup. -func (mr *MockLightningServerMockRecorder) ExportChannelBackup(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExportChannelBackup", reflect.TypeOf((*MockLightningServer)(nil).ExportChannelBackup), arg0, arg1) -} - -// FeeReport mocks base method. -func (m *MockLightningServer) FeeReport(arg0 context.Context, arg1 *lnrpc.FeeReportRequest) (*lnrpc.FeeReportResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "FeeReport", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.FeeReportResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// FeeReport indicates an expected call of FeeReport. -func (mr *MockLightningServerMockRecorder) FeeReport(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FeeReport", reflect.TypeOf((*MockLightningServer)(nil).FeeReport), arg0, arg1) -} - -// ForwardingHistory mocks base method. -func (m *MockLightningServer) ForwardingHistory(arg0 context.Context, arg1 *lnrpc.ForwardingHistoryRequest) (*lnrpc.ForwardingHistoryResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ForwardingHistory", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ForwardingHistoryResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ForwardingHistory indicates an expected call of ForwardingHistory. -func (mr *MockLightningServerMockRecorder) ForwardingHistory(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ForwardingHistory", reflect.TypeOf((*MockLightningServer)(nil).ForwardingHistory), arg0, arg1) -} - -// FundingStateStep mocks base method. -func (m *MockLightningServer) FundingStateStep(arg0 context.Context, arg1 *lnrpc.FundingTransitionMsg) (*lnrpc.FundingStateStepResp, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "FundingStateStep", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.FundingStateStepResp) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// FundingStateStep indicates an expected call of FundingStateStep. -func (mr *MockLightningServerMockRecorder) FundingStateStep(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FundingStateStep", reflect.TypeOf((*MockLightningServer)(nil).FundingStateStep), arg0, arg1) -} - -// GetChanInfo mocks base method. -func (m *MockLightningServer) GetChanInfo(arg0 context.Context, arg1 *lnrpc.ChanInfoRequest) (*lnrpc.ChannelEdge, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetChanInfo", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChannelEdge) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetChanInfo indicates an expected call of GetChanInfo. -func (mr *MockLightningServerMockRecorder) GetChanInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChanInfo", reflect.TypeOf((*MockLightningServer)(nil).GetChanInfo), arg0, arg1) -} - -// GetInfo mocks base method. -func (m *MockLightningServer) GetInfo(arg0 context.Context, arg1 *lnrpc.GetInfoRequest) (*lnrpc.GetInfoResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetInfo", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.GetInfoResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetInfo indicates an expected call of GetInfo. -func (mr *MockLightningServerMockRecorder) GetInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInfo", reflect.TypeOf((*MockLightningServer)(nil).GetInfo), arg0, arg1) -} - -// GetNetworkInfo mocks base method. -func (m *MockLightningServer) GetNetworkInfo(arg0 context.Context, arg1 *lnrpc.NetworkInfoRequest) (*lnrpc.NetworkInfo, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetNetworkInfo", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.NetworkInfo) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetNetworkInfo indicates an expected call of GetNetworkInfo. -func (mr *MockLightningServerMockRecorder) GetNetworkInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNetworkInfo", reflect.TypeOf((*MockLightningServer)(nil).GetNetworkInfo), arg0, arg1) -} - -// GetNodeInfo mocks base method. -func (m *MockLightningServer) GetNodeInfo(arg0 context.Context, arg1 *lnrpc.NodeInfoRequest) (*lnrpc.NodeInfo, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetNodeInfo", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.NodeInfo) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetNodeInfo indicates an expected call of GetNodeInfo. -func (mr *MockLightningServerMockRecorder) GetNodeInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNodeInfo", reflect.TypeOf((*MockLightningServer)(nil).GetNodeInfo), arg0, arg1) -} - -// GetNodeMetrics mocks base method. -func (m *MockLightningServer) GetNodeMetrics(arg0 context.Context, arg1 *lnrpc.NodeMetricsRequest) (*lnrpc.NodeMetricsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetNodeMetrics", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.NodeMetricsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetNodeMetrics indicates an expected call of GetNodeMetrics. -func (mr *MockLightningServerMockRecorder) GetNodeMetrics(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNodeMetrics", reflect.TypeOf((*MockLightningServer)(nil).GetNodeMetrics), arg0, arg1) -} - -// GetRecoveryInfo mocks base method. -func (m *MockLightningServer) GetRecoveryInfo(arg0 context.Context, arg1 *lnrpc.GetRecoveryInfoRequest) (*lnrpc.GetRecoveryInfoResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetRecoveryInfo", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.GetRecoveryInfoResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetRecoveryInfo indicates an expected call of GetRecoveryInfo. -func (mr *MockLightningServerMockRecorder) GetRecoveryInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRecoveryInfo", reflect.TypeOf((*MockLightningServer)(nil).GetRecoveryInfo), arg0, arg1) -} - -// GetTransactions mocks base method. -func (m *MockLightningServer) GetTransactions(arg0 context.Context, arg1 *lnrpc.GetTransactionsRequest) (*lnrpc.TransactionDetails, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetTransactions", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.TransactionDetails) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetTransactions indicates an expected call of GetTransactions. -func (mr *MockLightningServerMockRecorder) GetTransactions(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTransactions", reflect.TypeOf((*MockLightningServer)(nil).GetTransactions), arg0, arg1) -} - -// ListAliases mocks base method. -func (m *MockLightningServer) ListAliases(arg0 context.Context, arg1 *lnrpc.ListAliasesRequest) (*lnrpc.ListAliasesResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListAliases", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListAliasesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListAliases indicates an expected call of ListAliases. -func (mr *MockLightningServerMockRecorder) ListAliases(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListAliases", reflect.TypeOf((*MockLightningServer)(nil).ListAliases), arg0, arg1) -} - -// ListChannels mocks base method. -func (m *MockLightningServer) ListChannels(arg0 context.Context, arg1 *lnrpc.ListChannelsRequest) (*lnrpc.ListChannelsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListChannels", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListChannelsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListChannels indicates an expected call of ListChannels. -func (mr *MockLightningServerMockRecorder) ListChannels(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListChannels", reflect.TypeOf((*MockLightningServer)(nil).ListChannels), arg0, arg1) -} - -// ListInvoices mocks base method. -func (m *MockLightningServer) ListInvoices(arg0 context.Context, arg1 *lnrpc.ListInvoiceRequest) (*lnrpc.ListInvoiceResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListInvoices", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListInvoiceResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListInvoices indicates an expected call of ListInvoices. -func (mr *MockLightningServerMockRecorder) ListInvoices(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListInvoices", reflect.TypeOf((*MockLightningServer)(nil).ListInvoices), arg0, arg1) -} - -// ListMacaroonIDs mocks base method. -func (m *MockLightningServer) ListMacaroonIDs(arg0 context.Context, arg1 *lnrpc.ListMacaroonIDsRequest) (*lnrpc.ListMacaroonIDsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListMacaroonIDs", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListMacaroonIDsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListMacaroonIDs indicates an expected call of ListMacaroonIDs. -func (mr *MockLightningServerMockRecorder) ListMacaroonIDs(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListMacaroonIDs", reflect.TypeOf((*MockLightningServer)(nil).ListMacaroonIDs), arg0, arg1) -} - -// ListPayments mocks base method. -func (m *MockLightningServer) ListPayments(arg0 context.Context, arg1 *lnrpc.ListPaymentsRequest) (*lnrpc.ListPaymentsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListPayments", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListPaymentsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListPayments indicates an expected call of ListPayments. -func (mr *MockLightningServerMockRecorder) ListPayments(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListPayments", reflect.TypeOf((*MockLightningServer)(nil).ListPayments), arg0, arg1) -} - -// ListPeers mocks base method. -func (m *MockLightningServer) ListPeers(arg0 context.Context, arg1 *lnrpc.ListPeersRequest) (*lnrpc.ListPeersResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListPeers", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListPeersResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListPeers indicates an expected call of ListPeers. -func (mr *MockLightningServerMockRecorder) ListPeers(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListPeers", reflect.TypeOf((*MockLightningServer)(nil).ListPeers), arg0, arg1) -} - -// ListPermissions mocks base method. -func (m *MockLightningServer) ListPermissions(arg0 context.Context, arg1 *lnrpc.ListPermissionsRequest) (*lnrpc.ListPermissionsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListPermissions", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListPermissionsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListPermissions indicates an expected call of ListPermissions. -func (mr *MockLightningServerMockRecorder) ListPermissions(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListPermissions", reflect.TypeOf((*MockLightningServer)(nil).ListPermissions), arg0, arg1) -} - -// ListUnspent mocks base method. -func (m *MockLightningServer) ListUnspent(arg0 context.Context, arg1 *lnrpc.ListUnspentRequest) (*lnrpc.ListUnspentResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListUnspent", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ListUnspentResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListUnspent indicates an expected call of ListUnspent. -func (mr *MockLightningServerMockRecorder) ListUnspent(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListUnspent", reflect.TypeOf((*MockLightningServer)(nil).ListUnspent), arg0, arg1) -} - -// LookupHtlcResolution mocks base method. -func (m *MockLightningServer) LookupHtlcResolution(arg0 context.Context, arg1 *lnrpc.LookupHtlcResolutionRequest) (*lnrpc.LookupHtlcResolutionResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LookupHtlcResolution", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.LookupHtlcResolutionResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LookupHtlcResolution indicates an expected call of LookupHtlcResolution. -func (mr *MockLightningServerMockRecorder) LookupHtlcResolution(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LookupHtlcResolution", reflect.TypeOf((*MockLightningServer)(nil).LookupHtlcResolution), arg0, arg1) -} - -// LookupInvoice mocks base method. -func (m *MockLightningServer) LookupInvoice(arg0 context.Context, arg1 *lnrpc.PaymentHash) (*lnrpc.Invoice, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LookupInvoice", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.Invoice) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LookupInvoice indicates an expected call of LookupInvoice. -func (mr *MockLightningServerMockRecorder) LookupInvoice(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LookupInvoice", reflect.TypeOf((*MockLightningServer)(nil).LookupInvoice), arg0, arg1) -} - -// NewAddress mocks base method. -func (m *MockLightningServer) NewAddress(arg0 context.Context, arg1 *lnrpc.NewAddressRequest) (*lnrpc.NewAddressResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "NewAddress", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.NewAddressResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// NewAddress indicates an expected call of NewAddress. -func (mr *MockLightningServerMockRecorder) NewAddress(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewAddress", reflect.TypeOf((*MockLightningServer)(nil).NewAddress), arg0, arg1) -} - -// OpenChannel mocks base method. -func (m *MockLightningServer) OpenChannel(arg0 *lnrpc.OpenChannelRequest, arg1 lnrpc.Lightning_OpenChannelServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "OpenChannel", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// OpenChannel indicates an expected call of OpenChannel. -func (mr *MockLightningServerMockRecorder) OpenChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenChannel", reflect.TypeOf((*MockLightningServer)(nil).OpenChannel), arg0, arg1) -} - -// OpenChannelSync mocks base method. -func (m *MockLightningServer) OpenChannelSync(arg0 context.Context, arg1 *lnrpc.OpenChannelRequest) (*lnrpc.ChannelPoint, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "OpenChannelSync", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.ChannelPoint) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// OpenChannelSync indicates an expected call of OpenChannelSync. -func (mr *MockLightningServerMockRecorder) OpenChannelSync(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenChannelSync", reflect.TypeOf((*MockLightningServer)(nil).OpenChannelSync), arg0, arg1) -} - -// PendingChannels mocks base method. -func (m *MockLightningServer) PendingChannels(arg0 context.Context, arg1 *lnrpc.PendingChannelsRequest) (*lnrpc.PendingChannelsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "PendingChannels", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.PendingChannelsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// PendingChannels indicates an expected call of PendingChannels. -func (mr *MockLightningServerMockRecorder) PendingChannels(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PendingChannels", reflect.TypeOf((*MockLightningServer)(nil).PendingChannels), arg0, arg1) -} - -// QueryRoutes mocks base method. -func (m *MockLightningServer) QueryRoutes(arg0 context.Context, arg1 *lnrpc.QueryRoutesRequest) (*lnrpc.QueryRoutesResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "QueryRoutes", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.QueryRoutesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// QueryRoutes indicates an expected call of QueryRoutes. -func (mr *MockLightningServerMockRecorder) QueryRoutes(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "QueryRoutes", reflect.TypeOf((*MockLightningServer)(nil).QueryRoutes), arg0, arg1) -} - -// RegisterRPCMiddleware mocks base method. -func (m *MockLightningServer) RegisterRPCMiddleware(arg0 lnrpc.Lightning_RegisterRPCMiddlewareServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RegisterRPCMiddleware", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// RegisterRPCMiddleware indicates an expected call of RegisterRPCMiddleware. -func (mr *MockLightningServerMockRecorder) RegisterRPCMiddleware(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterRPCMiddleware", reflect.TypeOf((*MockLightningServer)(nil).RegisterRPCMiddleware), arg0) -} - -// RestoreChannelBackups mocks base method. -func (m *MockLightningServer) RestoreChannelBackups(arg0 context.Context, arg1 *lnrpc.RestoreChanBackupRequest) (*lnrpc.RestoreBackupResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RestoreChannelBackups", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.RestoreBackupResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// RestoreChannelBackups indicates an expected call of RestoreChannelBackups. -func (mr *MockLightningServerMockRecorder) RestoreChannelBackups(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RestoreChannelBackups", reflect.TypeOf((*MockLightningServer)(nil).RestoreChannelBackups), arg0, arg1) -} - -// SendCoins mocks base method. -func (m *MockLightningServer) SendCoins(arg0 context.Context, arg1 *lnrpc.SendCoinsRequest) (*lnrpc.SendCoinsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendCoins", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SendCoinsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SendCoins indicates an expected call of SendCoins. -func (mr *MockLightningServerMockRecorder) SendCoins(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendCoins", reflect.TypeOf((*MockLightningServer)(nil).SendCoins), arg0, arg1) -} - -// SendCustomMessage mocks base method. -func (m *MockLightningServer) SendCustomMessage(arg0 context.Context, arg1 *lnrpc.SendCustomMessageRequest) (*lnrpc.SendCustomMessageResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendCustomMessage", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SendCustomMessageResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SendCustomMessage indicates an expected call of SendCustomMessage. -func (mr *MockLightningServerMockRecorder) SendCustomMessage(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendCustomMessage", reflect.TypeOf((*MockLightningServer)(nil).SendCustomMessage), arg0, arg1) -} - -// SendMany mocks base method. -func (m *MockLightningServer) SendMany(arg0 context.Context, arg1 *lnrpc.SendManyRequest) (*lnrpc.SendManyResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendMany", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SendManyResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SendMany indicates an expected call of SendMany. -func (mr *MockLightningServerMockRecorder) SendMany(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMany", reflect.TypeOf((*MockLightningServer)(nil).SendMany), arg0, arg1) -} - -// SendPayment mocks base method. -func (m *MockLightningServer) SendPayment(arg0 lnrpc.Lightning_SendPaymentServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendPayment", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendPayment indicates an expected call of SendPayment. -func (mr *MockLightningServerMockRecorder) SendPayment(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendPayment", reflect.TypeOf((*MockLightningServer)(nil).SendPayment), arg0) -} - -// SendPaymentSync mocks base method. -func (m *MockLightningServer) SendPaymentSync(arg0 context.Context, arg1 *lnrpc.SendRequest) (*lnrpc.SendResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendPaymentSync", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SendResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SendPaymentSync indicates an expected call of SendPaymentSync. -func (mr *MockLightningServerMockRecorder) SendPaymentSync(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendPaymentSync", reflect.TypeOf((*MockLightningServer)(nil).SendPaymentSync), arg0, arg1) -} - -// SendToRoute mocks base method. -func (m *MockLightningServer) SendToRoute(arg0 lnrpc.Lightning_SendToRouteServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendToRoute", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendToRoute indicates an expected call of SendToRoute. -func (mr *MockLightningServerMockRecorder) SendToRoute(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendToRoute", reflect.TypeOf((*MockLightningServer)(nil).SendToRoute), arg0) -} - -// SendToRouteSync mocks base method. -func (m *MockLightningServer) SendToRouteSync(arg0 context.Context, arg1 *lnrpc.SendToRouteRequest) (*lnrpc.SendResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendToRouteSync", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SendResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SendToRouteSync indicates an expected call of SendToRouteSync. -func (mr *MockLightningServerMockRecorder) SendToRouteSync(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendToRouteSync", reflect.TypeOf((*MockLightningServer)(nil).SendToRouteSync), arg0, arg1) -} - -// SignMessage mocks base method. -func (m *MockLightningServer) SignMessage(arg0 context.Context, arg1 *lnrpc.SignMessageRequest) (*lnrpc.SignMessageResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SignMessage", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.SignMessageResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SignMessage indicates an expected call of SignMessage. -func (mr *MockLightningServerMockRecorder) SignMessage(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SignMessage", reflect.TypeOf((*MockLightningServer)(nil).SignMessage), arg0, arg1) -} - -// StopDaemon mocks base method. -func (m *MockLightningServer) StopDaemon(arg0 context.Context, arg1 *lnrpc.StopRequest) (*lnrpc.StopResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "StopDaemon", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.StopResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// StopDaemon indicates an expected call of StopDaemon. -func (mr *MockLightningServerMockRecorder) StopDaemon(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StopDaemon", reflect.TypeOf((*MockLightningServer)(nil).StopDaemon), arg0, arg1) -} - -// SubscribeChannelBackups mocks base method. -func (m *MockLightningServer) SubscribeChannelBackups(arg0 *lnrpc.ChannelBackupSubscription, arg1 lnrpc.Lightning_SubscribeChannelBackupsServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeChannelBackups", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeChannelBackups indicates an expected call of SubscribeChannelBackups. -func (mr *MockLightningServerMockRecorder) SubscribeChannelBackups(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeChannelBackups", reflect.TypeOf((*MockLightningServer)(nil).SubscribeChannelBackups), arg0, arg1) -} - -// SubscribeChannelEvents mocks base method. -func (m *MockLightningServer) SubscribeChannelEvents(arg0 *lnrpc.ChannelEventSubscription, arg1 lnrpc.Lightning_SubscribeChannelEventsServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeChannelEvents", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeChannelEvents indicates an expected call of SubscribeChannelEvents. -func (mr *MockLightningServerMockRecorder) SubscribeChannelEvents(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeChannelEvents", reflect.TypeOf((*MockLightningServer)(nil).SubscribeChannelEvents), arg0, arg1) -} - -// SubscribeChannelGraph mocks base method. -func (m *MockLightningServer) SubscribeChannelGraph(arg0 *lnrpc.GraphTopologySubscription, arg1 lnrpc.Lightning_SubscribeChannelGraphServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeChannelGraph", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeChannelGraph indicates an expected call of SubscribeChannelGraph. -func (mr *MockLightningServerMockRecorder) SubscribeChannelGraph(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeChannelGraph", reflect.TypeOf((*MockLightningServer)(nil).SubscribeChannelGraph), arg0, arg1) -} - -// SubscribeCustomMessages mocks base method. -func (m *MockLightningServer) SubscribeCustomMessages(arg0 *lnrpc.SubscribeCustomMessagesRequest, arg1 lnrpc.Lightning_SubscribeCustomMessagesServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeCustomMessages", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeCustomMessages indicates an expected call of SubscribeCustomMessages. -func (mr *MockLightningServerMockRecorder) SubscribeCustomMessages(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeCustomMessages", reflect.TypeOf((*MockLightningServer)(nil).SubscribeCustomMessages), arg0, arg1) -} - -// SubscribeInvoices mocks base method. -func (m *MockLightningServer) SubscribeInvoices(arg0 *lnrpc.InvoiceSubscription, arg1 lnrpc.Lightning_SubscribeInvoicesServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeInvoices", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeInvoices indicates an expected call of SubscribeInvoices. -func (mr *MockLightningServerMockRecorder) SubscribeInvoices(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeInvoices", reflect.TypeOf((*MockLightningServer)(nil).SubscribeInvoices), arg0, arg1) -} - -// SubscribePeerEvents mocks base method. -func (m *MockLightningServer) SubscribePeerEvents(arg0 *lnrpc.PeerEventSubscription, arg1 lnrpc.Lightning_SubscribePeerEventsServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribePeerEvents", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribePeerEvents indicates an expected call of SubscribePeerEvents. -func (mr *MockLightningServerMockRecorder) SubscribePeerEvents(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribePeerEvents", reflect.TypeOf((*MockLightningServer)(nil).SubscribePeerEvents), arg0, arg1) -} - -// SubscribeTransactions mocks base method. -func (m *MockLightningServer) SubscribeTransactions(arg0 *lnrpc.GetTransactionsRequest, arg1 lnrpc.Lightning_SubscribeTransactionsServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeTransactions", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// SubscribeTransactions indicates an expected call of SubscribeTransactions. -func (mr *MockLightningServerMockRecorder) SubscribeTransactions(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeTransactions", reflect.TypeOf((*MockLightningServer)(nil).SubscribeTransactions), arg0, arg1) -} - -// UpdateChannelPolicy mocks base method. -func (m *MockLightningServer) UpdateChannelPolicy(arg0 context.Context, arg1 *lnrpc.PolicyUpdateRequest) (*lnrpc.PolicyUpdateResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "UpdateChannelPolicy", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.PolicyUpdateResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// UpdateChannelPolicy indicates an expected call of UpdateChannelPolicy. -func (mr *MockLightningServerMockRecorder) UpdateChannelPolicy(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateChannelPolicy", reflect.TypeOf((*MockLightningServer)(nil).UpdateChannelPolicy), arg0, arg1) -} - -// VerifyChanBackup mocks base method. -func (m *MockLightningServer) VerifyChanBackup(arg0 context.Context, arg1 *lnrpc.ChanBackupSnapshot) (*lnrpc.VerifyChanBackupResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "VerifyChanBackup", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.VerifyChanBackupResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// VerifyChanBackup indicates an expected call of VerifyChanBackup. -func (mr *MockLightningServerMockRecorder) VerifyChanBackup(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "VerifyChanBackup", reflect.TypeOf((*MockLightningServer)(nil).VerifyChanBackup), arg0, arg1) -} - -// VerifyMessage mocks base method. -func (m *MockLightningServer) VerifyMessage(arg0 context.Context, arg1 *lnrpc.VerifyMessageRequest) (*lnrpc.VerifyMessageResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "VerifyMessage", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.VerifyMessageResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// VerifyMessage indicates an expected call of VerifyMessage. -func (mr *MockLightningServerMockRecorder) VerifyMessage(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "VerifyMessage", reflect.TypeOf((*MockLightningServer)(nil).VerifyMessage), arg0, arg1) -} - -// WalletBalance mocks base method. -func (m *MockLightningServer) WalletBalance(arg0 context.Context, arg1 *lnrpc.WalletBalanceRequest) (*lnrpc.WalletBalanceResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "WalletBalance", arg0, arg1) - ret0, _ := ret[0].(*lnrpc.WalletBalanceResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// WalletBalance indicates an expected call of WalletBalance. -func (mr *MockLightningServerMockRecorder) WalletBalance(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WalletBalance", reflect.TypeOf((*MockLightningServer)(nil).WalletBalance), arg0, arg1) -} - -// mustEmbedUnimplementedLightningServer mocks base method. -func (m *MockLightningServer) mustEmbedUnimplementedLightningServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedLightningServer") -} - -// mustEmbedUnimplementedLightningServer indicates an expected call of mustEmbedUnimplementedLightningServer. -func (mr *MockLightningServerMockRecorder) mustEmbedUnimplementedLightningServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedLightningServer", reflect.TypeOf((*MockLightningServer)(nil).mustEmbedUnimplementedLightningServer)) -} - -// MockUnsafeLightningServer is a mock of UnsafeLightningServer interface. -type MockUnsafeLightningServer struct { - ctrl *gomock.Controller - recorder *MockUnsafeLightningServerMockRecorder -} - -// MockUnsafeLightningServerMockRecorder is the mock recorder for MockUnsafeLightningServer. -type MockUnsafeLightningServerMockRecorder struct { - mock *MockUnsafeLightningServer -} - -// NewMockUnsafeLightningServer creates a new mock instance. -func NewMockUnsafeLightningServer(ctrl *gomock.Controller) *MockUnsafeLightningServer { - mock := &MockUnsafeLightningServer{ctrl: ctrl} - mock.recorder = &MockUnsafeLightningServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockUnsafeLightningServer) EXPECT() *MockUnsafeLightningServerMockRecorder { - return m.recorder -} - -// mustEmbedUnimplementedLightningServer mocks base method. -func (m *MockUnsafeLightningServer) mustEmbedUnimplementedLightningServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedLightningServer") -} - -// mustEmbedUnimplementedLightningServer indicates an expected call of mustEmbedUnimplementedLightningServer. -func (mr *MockUnsafeLightningServerMockRecorder) mustEmbedUnimplementedLightningServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedLightningServer", reflect.TypeOf((*MockUnsafeLightningServer)(nil).mustEmbedUnimplementedLightningServer)) -} - -// MockLightning_SubscribeTransactionsServer is a mock of Lightning_SubscribeTransactionsServer interface. -type MockLightning_SubscribeTransactionsServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeTransactionsServerMockRecorder -} - -// MockLightning_SubscribeTransactionsServerMockRecorder is the mock recorder for MockLightning_SubscribeTransactionsServer. -type MockLightning_SubscribeTransactionsServerMockRecorder struct { - mock *MockLightning_SubscribeTransactionsServer -} - -// NewMockLightning_SubscribeTransactionsServer creates a new mock instance. -func NewMockLightning_SubscribeTransactionsServer(ctrl *gomock.Controller) *MockLightning_SubscribeTransactionsServer { - mock := &MockLightning_SubscribeTransactionsServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeTransactionsServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeTransactionsServer) EXPECT() *MockLightning_SubscribeTransactionsServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeTransactionsServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeTransactionsServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeTransactionsServer) Send(arg0 *lnrpc.Transaction) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeTransactionsServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeTransactionsServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeTransactionsServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeTransactionsServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeTransactionsServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeTransactionsServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribePeerEventsServer is a mock of Lightning_SubscribePeerEventsServer interface. -type MockLightning_SubscribePeerEventsServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribePeerEventsServerMockRecorder -} - -// MockLightning_SubscribePeerEventsServerMockRecorder is the mock recorder for MockLightning_SubscribePeerEventsServer. -type MockLightning_SubscribePeerEventsServerMockRecorder struct { - mock *MockLightning_SubscribePeerEventsServer -} - -// NewMockLightning_SubscribePeerEventsServer creates a new mock instance. -func NewMockLightning_SubscribePeerEventsServer(ctrl *gomock.Controller) *MockLightning_SubscribePeerEventsServer { - mock := &MockLightning_SubscribePeerEventsServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribePeerEventsServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribePeerEventsServer) EXPECT() *MockLightning_SubscribePeerEventsServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribePeerEventsServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribePeerEventsServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribePeerEventsServer) Send(arg0 *lnrpc.PeerEvent) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribePeerEventsServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribePeerEventsServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribePeerEventsServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribePeerEventsServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribePeerEventsServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribePeerEventsServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribeChannelEventsServer is a mock of Lightning_SubscribeChannelEventsServer interface. -type MockLightning_SubscribeChannelEventsServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelEventsServerMockRecorder -} - -// MockLightning_SubscribeChannelEventsServerMockRecorder is the mock recorder for MockLightning_SubscribeChannelEventsServer. -type MockLightning_SubscribeChannelEventsServerMockRecorder struct { - mock *MockLightning_SubscribeChannelEventsServer -} - -// NewMockLightning_SubscribeChannelEventsServer creates a new mock instance. -func NewMockLightning_SubscribeChannelEventsServer(ctrl *gomock.Controller) *MockLightning_SubscribeChannelEventsServer { - mock := &MockLightning_SubscribeChannelEventsServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelEventsServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelEventsServer) EXPECT() *MockLightning_SubscribeChannelEventsServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelEventsServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelEventsServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeChannelEventsServer) Send(arg0 *lnrpc.ChannelEventUpdate) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeChannelEventsServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelEventsServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeChannelEventsServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeChannelEventsServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeChannelEventsServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeChannelEventsServer)(nil).SetTrailer), arg0) -} - -// MockLightning_OpenChannelServer is a mock of Lightning_OpenChannelServer interface. -type MockLightning_OpenChannelServer struct { - ctrl *gomock.Controller - recorder *MockLightning_OpenChannelServerMockRecorder -} - -// MockLightning_OpenChannelServerMockRecorder is the mock recorder for MockLightning_OpenChannelServer. -type MockLightning_OpenChannelServerMockRecorder struct { - mock *MockLightning_OpenChannelServer -} - -// NewMockLightning_OpenChannelServer creates a new mock instance. -func NewMockLightning_OpenChannelServer(ctrl *gomock.Controller) *MockLightning_OpenChannelServer { - mock := &MockLightning_OpenChannelServer{ctrl: ctrl} - mock.recorder = &MockLightning_OpenChannelServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_OpenChannelServer) EXPECT() *MockLightning_OpenChannelServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_OpenChannelServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_OpenChannelServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_OpenChannelServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_OpenChannelServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_OpenChannelServer) Send(arg0 *lnrpc.OpenStatusUpdate) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_OpenChannelServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_OpenChannelServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_OpenChannelServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_OpenChannelServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_OpenChannelServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_OpenChannelServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_OpenChannelServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_OpenChannelServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_OpenChannelServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_OpenChannelServer)(nil).SetTrailer), arg0) -} - -// MockLightning_ChannelAcceptorServer is a mock of Lightning_ChannelAcceptorServer interface. -type MockLightning_ChannelAcceptorServer struct { - ctrl *gomock.Controller - recorder *MockLightning_ChannelAcceptorServerMockRecorder -} - -// MockLightning_ChannelAcceptorServerMockRecorder is the mock recorder for MockLightning_ChannelAcceptorServer. -type MockLightning_ChannelAcceptorServerMockRecorder struct { - mock *MockLightning_ChannelAcceptorServer -} - -// NewMockLightning_ChannelAcceptorServer creates a new mock instance. -func NewMockLightning_ChannelAcceptorServer(ctrl *gomock.Controller) *MockLightning_ChannelAcceptorServer { - mock := &MockLightning_ChannelAcceptorServer{ctrl: ctrl} - mock.recorder = &MockLightning_ChannelAcceptorServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_ChannelAcceptorServer) EXPECT() *MockLightning_ChannelAcceptorServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_ChannelAcceptorServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).Context)) -} - -// Recv mocks base method. -func (m *MockLightning_ChannelAcceptorServer) Recv() (*lnrpc.ChannelAcceptResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.ChannelAcceptResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_ChannelAcceptorServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_ChannelAcceptorServer) Send(arg0 *lnrpc.ChannelAcceptRequest) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_ChannelAcceptorServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_ChannelAcceptorServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_ChannelAcceptorServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_ChannelAcceptorServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_ChannelAcceptorServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_ChannelAcceptorServer)(nil).SetTrailer), arg0) -} - -// MockLightning_CloseChannelServer is a mock of Lightning_CloseChannelServer interface. -type MockLightning_CloseChannelServer struct { - ctrl *gomock.Controller - recorder *MockLightning_CloseChannelServerMockRecorder -} - -// MockLightning_CloseChannelServerMockRecorder is the mock recorder for MockLightning_CloseChannelServer. -type MockLightning_CloseChannelServerMockRecorder struct { - mock *MockLightning_CloseChannelServer -} - -// NewMockLightning_CloseChannelServer creates a new mock instance. -func NewMockLightning_CloseChannelServer(ctrl *gomock.Controller) *MockLightning_CloseChannelServer { - mock := &MockLightning_CloseChannelServer{ctrl: ctrl} - mock.recorder = &MockLightning_CloseChannelServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_CloseChannelServer) EXPECT() *MockLightning_CloseChannelServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_CloseChannelServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_CloseChannelServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_CloseChannelServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_CloseChannelServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_CloseChannelServer) Send(arg0 *lnrpc.CloseStatusUpdate) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_CloseChannelServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_CloseChannelServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_CloseChannelServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_CloseChannelServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_CloseChannelServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_CloseChannelServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_CloseChannelServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_CloseChannelServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_CloseChannelServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_CloseChannelServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SendPaymentServer is a mock of Lightning_SendPaymentServer interface. -type MockLightning_SendPaymentServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SendPaymentServerMockRecorder -} - -// MockLightning_SendPaymentServerMockRecorder is the mock recorder for MockLightning_SendPaymentServer. -type MockLightning_SendPaymentServerMockRecorder struct { - mock *MockLightning_SendPaymentServer -} - -// NewMockLightning_SendPaymentServer creates a new mock instance. -func NewMockLightning_SendPaymentServer(ctrl *gomock.Controller) *MockLightning_SendPaymentServer { - mock := &MockLightning_SendPaymentServer{ctrl: ctrl} - mock.recorder = &MockLightning_SendPaymentServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SendPaymentServer) EXPECT() *MockLightning_SendPaymentServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SendPaymentServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SendPaymentServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).Context)) -} - -// Recv mocks base method. -func (m *MockLightning_SendPaymentServer) Recv() (*lnrpc.SendRequest, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.SendRequest) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SendPaymentServerMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SendPaymentServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SendPaymentServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SendPaymentServer) Send(arg0 *lnrpc.SendResponse) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SendPaymentServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SendPaymentServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SendPaymentServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SendPaymentServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SendPaymentServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SendPaymentServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SendPaymentServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SendPaymentServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SendPaymentServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SendPaymentServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SendToRouteServer is a mock of Lightning_SendToRouteServer interface. -type MockLightning_SendToRouteServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SendToRouteServerMockRecorder -} - -// MockLightning_SendToRouteServerMockRecorder is the mock recorder for MockLightning_SendToRouteServer. -type MockLightning_SendToRouteServerMockRecorder struct { - mock *MockLightning_SendToRouteServer -} - -// NewMockLightning_SendToRouteServer creates a new mock instance. -func NewMockLightning_SendToRouteServer(ctrl *gomock.Controller) *MockLightning_SendToRouteServer { - mock := &MockLightning_SendToRouteServer{ctrl: ctrl} - mock.recorder = &MockLightning_SendToRouteServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SendToRouteServer) EXPECT() *MockLightning_SendToRouteServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SendToRouteServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SendToRouteServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).Context)) -} - -// Recv mocks base method. -func (m *MockLightning_SendToRouteServer) Recv() (*lnrpc.SendToRouteRequest, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.SendToRouteRequest) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_SendToRouteServerMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SendToRouteServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SendToRouteServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SendToRouteServer) Send(arg0 *lnrpc.SendResponse) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SendToRouteServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SendToRouteServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SendToRouteServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SendToRouteServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SendToRouteServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SendToRouteServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SendToRouteServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SendToRouteServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SendToRouteServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SendToRouteServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribeInvoicesServer is a mock of Lightning_SubscribeInvoicesServer interface. -type MockLightning_SubscribeInvoicesServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeInvoicesServerMockRecorder -} - -// MockLightning_SubscribeInvoicesServerMockRecorder is the mock recorder for MockLightning_SubscribeInvoicesServer. -type MockLightning_SubscribeInvoicesServerMockRecorder struct { - mock *MockLightning_SubscribeInvoicesServer -} - -// NewMockLightning_SubscribeInvoicesServer creates a new mock instance. -func NewMockLightning_SubscribeInvoicesServer(ctrl *gomock.Controller) *MockLightning_SubscribeInvoicesServer { - mock := &MockLightning_SubscribeInvoicesServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeInvoicesServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeInvoicesServer) EXPECT() *MockLightning_SubscribeInvoicesServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeInvoicesServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeInvoicesServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeInvoicesServer) Send(arg0 *lnrpc.Invoice) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeInvoicesServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeInvoicesServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeInvoicesServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeInvoicesServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeInvoicesServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeInvoicesServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribeChannelGraphServer is a mock of Lightning_SubscribeChannelGraphServer interface. -type MockLightning_SubscribeChannelGraphServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelGraphServerMockRecorder -} - -// MockLightning_SubscribeChannelGraphServerMockRecorder is the mock recorder for MockLightning_SubscribeChannelGraphServer. -type MockLightning_SubscribeChannelGraphServerMockRecorder struct { - mock *MockLightning_SubscribeChannelGraphServer -} - -// NewMockLightning_SubscribeChannelGraphServer creates a new mock instance. -func NewMockLightning_SubscribeChannelGraphServer(ctrl *gomock.Controller) *MockLightning_SubscribeChannelGraphServer { - mock := &MockLightning_SubscribeChannelGraphServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelGraphServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelGraphServer) EXPECT() *MockLightning_SubscribeChannelGraphServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelGraphServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelGraphServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeChannelGraphServer) Send(arg0 *lnrpc.GraphTopologyUpdate) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeChannelGraphServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelGraphServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeChannelGraphServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeChannelGraphServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeChannelGraphServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeChannelGraphServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribeChannelBackupsServer is a mock of Lightning_SubscribeChannelBackupsServer interface. -type MockLightning_SubscribeChannelBackupsServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeChannelBackupsServerMockRecorder -} - -// MockLightning_SubscribeChannelBackupsServerMockRecorder is the mock recorder for MockLightning_SubscribeChannelBackupsServer. -type MockLightning_SubscribeChannelBackupsServerMockRecorder struct { - mock *MockLightning_SubscribeChannelBackupsServer -} - -// NewMockLightning_SubscribeChannelBackupsServer creates a new mock instance. -func NewMockLightning_SubscribeChannelBackupsServer(ctrl *gomock.Controller) *MockLightning_SubscribeChannelBackupsServer { - mock := &MockLightning_SubscribeChannelBackupsServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeChannelBackupsServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeChannelBackupsServer) EXPECT() *MockLightning_SubscribeChannelBackupsServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeChannelBackupsServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelBackupsServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeChannelBackupsServer) Send(arg0 *lnrpc.ChanBackupSnapshot) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeChannelBackupsServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeChannelBackupsServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeChannelBackupsServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeChannelBackupsServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeChannelBackupsServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeChannelBackupsServer)(nil).SetTrailer), arg0) -} - -// MockLightning_RegisterRPCMiddlewareServer is a mock of Lightning_RegisterRPCMiddlewareServer interface. -type MockLightning_RegisterRPCMiddlewareServer struct { - ctrl *gomock.Controller - recorder *MockLightning_RegisterRPCMiddlewareServerMockRecorder -} - -// MockLightning_RegisterRPCMiddlewareServerMockRecorder is the mock recorder for MockLightning_RegisterRPCMiddlewareServer. -type MockLightning_RegisterRPCMiddlewareServerMockRecorder struct { - mock *MockLightning_RegisterRPCMiddlewareServer -} - -// NewMockLightning_RegisterRPCMiddlewareServer creates a new mock instance. -func NewMockLightning_RegisterRPCMiddlewareServer(ctrl *gomock.Controller) *MockLightning_RegisterRPCMiddlewareServer { - mock := &MockLightning_RegisterRPCMiddlewareServer{ctrl: ctrl} - mock.recorder = &MockLightning_RegisterRPCMiddlewareServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_RegisterRPCMiddlewareServer) EXPECT() *MockLightning_RegisterRPCMiddlewareServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).Context)) -} - -// Recv mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) Recv() (*lnrpc.RPCMiddlewareResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*lnrpc.RPCMiddlewareResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_RegisterRPCMiddlewareServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) Send(arg0 *lnrpc.RPCMiddlewareRequest) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_RegisterRPCMiddlewareServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_RegisterRPCMiddlewareServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_RegisterRPCMiddlewareServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_RegisterRPCMiddlewareServer)(nil).SetTrailer), arg0) -} - -// MockLightning_SubscribeCustomMessagesServer is a mock of Lightning_SubscribeCustomMessagesServer interface. -type MockLightning_SubscribeCustomMessagesServer struct { - ctrl *gomock.Controller - recorder *MockLightning_SubscribeCustomMessagesServerMockRecorder -} - -// MockLightning_SubscribeCustomMessagesServerMockRecorder is the mock recorder for MockLightning_SubscribeCustomMessagesServer. -type MockLightning_SubscribeCustomMessagesServerMockRecorder struct { - mock *MockLightning_SubscribeCustomMessagesServer -} - -// NewMockLightning_SubscribeCustomMessagesServer creates a new mock instance. -func NewMockLightning_SubscribeCustomMessagesServer(ctrl *gomock.Controller) *MockLightning_SubscribeCustomMessagesServer { - mock := &MockLightning_SubscribeCustomMessagesServer{ctrl: ctrl} - mock.recorder = &MockLightning_SubscribeCustomMessagesServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockLightning_SubscribeCustomMessagesServer) EXPECT() *MockLightning_SubscribeCustomMessagesServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockLightning_SubscribeCustomMessagesServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockLightning_SubscribeCustomMessagesServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockLightning_SubscribeCustomMessagesServer) Send(arg0 *lnrpc.CustomMessage) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) Send(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockLightning_SubscribeCustomMessagesServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockLightning_SubscribeCustomMessagesServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockLightning_SubscribeCustomMessagesServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockLightning_SubscribeCustomMessagesServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockLightning_SubscribeCustomMessagesServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockLightning_SubscribeCustomMessagesServer)(nil).SetTrailer), arg0) -} diff --git a/liquidator.go b/liquidator.go index fee0c08..cb6e2c3 100644 --- a/liquidator.go +++ b/liquidator.go @@ -1,3 +1,5 @@ +//go:generate mockgen -destination ./nodeguard/nodeguard_mock.go -package nodeguard github.com/Elenpay/liquidator/nodeguard NodeGuardServiceClient + package main import ( diff --git a/main.go b/main.go index 1533d46..faee348 100644 --- a/main.go +++ b/main.go @@ -19,11 +19,15 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ + +//go:generate mockgen -destination ./lightning_rpc_mock.go -package main github.com/lightningnetwork/lnd/lnrpc LightningClient + package main import ( - _ "github.com/joho/godotenv/autoload" "time" + + _ "github.com/joho/godotenv/autoload" ) const ( diff --git a/nodeguard/nodeguard_mock.go b/nodeguard/nodeguard_mock.go index 3d2072b..d7b25b1 100644 --- a/nodeguard/nodeguard_mock.go +++ b/nodeguard/nodeguard_mock.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: nodeguard/nodeguard_grpc.pb.go +// Source: github.com/Elenpay/liquidator/nodeguard (interfaces: NodeGuardServiceClient) // // Generated by this command: // -// mockgen -destination ./nodeguard/nodeguard_mock.go -source nodeguard/nodeguard_grpc.pb.go -package nodeguard +// mockgen -destination ./nodeguard/nodeguard_mock.go -package nodeguard github.com/Elenpay/liquidator/nodeguard NodeGuardServiceClient // // Package nodeguard is a generated GoMock package. @@ -21,6 +21,7 @@ import ( type MockNodeGuardServiceClient struct { ctrl *gomock.Controller recorder *MockNodeGuardServiceClientMockRecorder + isgomock struct{} } // MockNodeGuardServiceClientMockRecorder is the mock recorder for MockNodeGuardServiceClient. @@ -299,268 +300,3 @@ func (mr *MockNodeGuardServiceClientMockRecorder) RequestWithdrawal(ctx, in any, varargs := append([]any{ctx, in}, opts...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RequestWithdrawal", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).RequestWithdrawal), varargs...) } - -// MockNodeGuardServiceServer is a mock of NodeGuardServiceServer interface. -type MockNodeGuardServiceServer struct { - ctrl *gomock.Controller - recorder *MockNodeGuardServiceServerMockRecorder -} - -// MockNodeGuardServiceServerMockRecorder is the mock recorder for MockNodeGuardServiceServer. -type MockNodeGuardServiceServerMockRecorder struct { - mock *MockNodeGuardServiceServer -} - -// NewMockNodeGuardServiceServer creates a new mock instance. -func NewMockNodeGuardServiceServer(ctrl *gomock.Controller) *MockNodeGuardServiceServer { - mock := &MockNodeGuardServiceServer{ctrl: ctrl} - mock.recorder = &MockNodeGuardServiceServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockNodeGuardServiceServer) EXPECT() *MockNodeGuardServiceServerMockRecorder { - return m.recorder -} - -// AddLiquidityRule mocks base method. -func (m *MockNodeGuardServiceServer) AddLiquidityRule(arg0 context.Context, arg1 *AddLiquidityRuleRequest) (*AddLiquidityRuleResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AddLiquidityRule", arg0, arg1) - ret0, _ := ret[0].(*AddLiquidityRuleResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// AddLiquidityRule indicates an expected call of AddLiquidityRule. -func (mr *MockNodeGuardServiceServerMockRecorder) AddLiquidityRule(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddLiquidityRule", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).AddLiquidityRule), arg0, arg1) -} - -// AddNode mocks base method. -func (m *MockNodeGuardServiceServer) AddNode(arg0 context.Context, arg1 *AddNodeRequest) (*AddNodeResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AddNode", arg0, arg1) - ret0, _ := ret[0].(*AddNodeResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// AddNode indicates an expected call of AddNode. -func (mr *MockNodeGuardServiceServerMockRecorder) AddNode(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddNode", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).AddNode), arg0, arg1) -} - -// CloseChannel mocks base method. -func (m *MockNodeGuardServiceServer) CloseChannel(arg0 context.Context, arg1 *CloseChannelRequest) (*CloseChannelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseChannel", arg0, arg1) - ret0, _ := ret[0].(*CloseChannelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// CloseChannel indicates an expected call of CloseChannel. -func (mr *MockNodeGuardServiceServerMockRecorder) CloseChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).CloseChannel), arg0, arg1) -} - -// GetAvailableUtxos mocks base method. -func (m *MockNodeGuardServiceServer) GetAvailableUtxos(arg0 context.Context, arg1 *GetAvailableUtxosRequest) (*GetAvailableUtxosResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetAvailableUtxos", arg0, arg1) - ret0, _ := ret[0].(*GetAvailableUtxosResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetAvailableUtxos indicates an expected call of GetAvailableUtxos. -func (mr *MockNodeGuardServiceServerMockRecorder) GetAvailableUtxos(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAvailableUtxos", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetAvailableUtxos), arg0, arg1) -} - -// GetAvailableWallets mocks base method. -func (m *MockNodeGuardServiceServer) GetAvailableWallets(arg0 context.Context, arg1 *GetAvailableWalletsRequest) (*GetAvailableWalletsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetAvailableWallets", arg0, arg1) - ret0, _ := ret[0].(*GetAvailableWalletsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetAvailableWallets indicates an expected call of GetAvailableWallets. -func (mr *MockNodeGuardServiceServerMockRecorder) GetAvailableWallets(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAvailableWallets", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetAvailableWallets), arg0, arg1) -} - -// GetChannel mocks base method. -func (m *MockNodeGuardServiceServer) GetChannel(arg0 context.Context, arg1 *GetChannelRequest) (*GetChannelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetChannel", arg0, arg1) - ret0, _ := ret[0].(*GetChannelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetChannel indicates an expected call of GetChannel. -func (mr *MockNodeGuardServiceServerMockRecorder) GetChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetChannel), arg0, arg1) -} - -// GetChannelOperationRequest mocks base method. -func (m *MockNodeGuardServiceServer) GetChannelOperationRequest(arg0 context.Context, arg1 *GetChannelOperationRequestRequest) (*GetChannelOperationRequestResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetChannelOperationRequest", arg0, arg1) - ret0, _ := ret[0].(*GetChannelOperationRequestResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetChannelOperationRequest indicates an expected call of GetChannelOperationRequest. -func (mr *MockNodeGuardServiceServerMockRecorder) GetChannelOperationRequest(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChannelOperationRequest", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetChannelOperationRequest), arg0, arg1) -} - -// GetLiquidityRules mocks base method. -func (m *MockNodeGuardServiceServer) GetLiquidityRules(arg0 context.Context, arg1 *GetLiquidityRulesRequest) (*GetLiquidityRulesResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetLiquidityRules", arg0, arg1) - ret0, _ := ret[0].(*GetLiquidityRulesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetLiquidityRules indicates an expected call of GetLiquidityRules. -func (mr *MockNodeGuardServiceServerMockRecorder) GetLiquidityRules(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLiquidityRules", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetLiquidityRules), arg0, arg1) -} - -// GetNewWalletAddress mocks base method. -func (m *MockNodeGuardServiceServer) GetNewWalletAddress(arg0 context.Context, arg1 *GetNewWalletAddressRequest) (*GetNewWalletAddressResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetNewWalletAddress", arg0, arg1) - ret0, _ := ret[0].(*GetNewWalletAddressResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetNewWalletAddress indicates an expected call of GetNewWalletAddress. -func (mr *MockNodeGuardServiceServerMockRecorder) GetNewWalletAddress(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNewWalletAddress", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetNewWalletAddress), arg0, arg1) -} - -// GetNodes mocks base method. -func (m *MockNodeGuardServiceServer) GetNodes(arg0 context.Context, arg1 *GetNodesRequest) (*GetNodesResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetNodes", arg0, arg1) - ret0, _ := ret[0].(*GetNodesResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetNodes indicates an expected call of GetNodes. -func (mr *MockNodeGuardServiceServerMockRecorder) GetNodes(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNodes", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetNodes), arg0, arg1) -} - -// GetWithdrawalsRequestStatus mocks base method. -func (m *MockNodeGuardServiceServer) GetWithdrawalsRequestStatus(arg0 context.Context, arg1 *GetWithdrawalsRequestStatusRequest) (*GetWithdrawalsRequestStatusResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetWithdrawalsRequestStatus", arg0, arg1) - ret0, _ := ret[0].(*GetWithdrawalsRequestStatusResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetWithdrawalsRequestStatus indicates an expected call of GetWithdrawalsRequestStatus. -func (mr *MockNodeGuardServiceServerMockRecorder) GetWithdrawalsRequestStatus(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWithdrawalsRequestStatus", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetWithdrawalsRequestStatus), arg0, arg1) -} - -// OpenChannel mocks base method. -func (m *MockNodeGuardServiceServer) OpenChannel(arg0 context.Context, arg1 *OpenChannelRequest) (*OpenChannelResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "OpenChannel", arg0, arg1) - ret0, _ := ret[0].(*OpenChannelResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// OpenChannel indicates an expected call of OpenChannel. -func (mr *MockNodeGuardServiceServerMockRecorder) OpenChannel(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).OpenChannel), arg0, arg1) -} - -// RequestWithdrawal mocks base method. -func (m *MockNodeGuardServiceServer) RequestWithdrawal(arg0 context.Context, arg1 *RequestWithdrawalRequest) (*RequestWithdrawalResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RequestWithdrawal", arg0, arg1) - ret0, _ := ret[0].(*RequestWithdrawalResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// RequestWithdrawal indicates an expected call of RequestWithdrawal. -func (mr *MockNodeGuardServiceServerMockRecorder) RequestWithdrawal(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RequestWithdrawal", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).RequestWithdrawal), arg0, arg1) -} - -// mustEmbedUnimplementedNodeGuardServiceServer mocks base method. -func (m *MockNodeGuardServiceServer) mustEmbedUnimplementedNodeGuardServiceServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedNodeGuardServiceServer") -} - -// mustEmbedUnimplementedNodeGuardServiceServer indicates an expected call of mustEmbedUnimplementedNodeGuardServiceServer. -func (mr *MockNodeGuardServiceServerMockRecorder) mustEmbedUnimplementedNodeGuardServiceServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedNodeGuardServiceServer", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).mustEmbedUnimplementedNodeGuardServiceServer)) -} - -// MockUnsafeNodeGuardServiceServer is a mock of UnsafeNodeGuardServiceServer interface. -type MockUnsafeNodeGuardServiceServer struct { - ctrl *gomock.Controller - recorder *MockUnsafeNodeGuardServiceServerMockRecorder -} - -// MockUnsafeNodeGuardServiceServerMockRecorder is the mock recorder for MockUnsafeNodeGuardServiceServer. -type MockUnsafeNodeGuardServiceServerMockRecorder struct { - mock *MockUnsafeNodeGuardServiceServer -} - -// NewMockUnsafeNodeGuardServiceServer creates a new mock instance. -func NewMockUnsafeNodeGuardServiceServer(ctrl *gomock.Controller) *MockUnsafeNodeGuardServiceServer { - mock := &MockUnsafeNodeGuardServiceServer{ctrl: ctrl} - mock.recorder = &MockUnsafeNodeGuardServiceServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockUnsafeNodeGuardServiceServer) EXPECT() *MockUnsafeNodeGuardServiceServerMockRecorder { - return m.recorder -} - -// mustEmbedUnimplementedNodeGuardServiceServer mocks base method. -func (m *MockUnsafeNodeGuardServiceServer) mustEmbedUnimplementedNodeGuardServiceServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedNodeGuardServiceServer") -} - -// mustEmbedUnimplementedNodeGuardServiceServer indicates an expected call of mustEmbedUnimplementedNodeGuardServiceServer. -func (mr *MockUnsafeNodeGuardServiceServerMockRecorder) mustEmbedUnimplementedNodeGuardServiceServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedNodeGuardServiceServer", reflect.TypeOf((*MockUnsafeNodeGuardServiceServer)(nil).mustEmbedUnimplementedNodeGuardServiceServer)) -} diff --git a/provider/loopd_mock.go b/provider/loopd_mock.go index dcb1244..4ab447e 100644 --- a/provider/loopd_mock.go +++ b/provider/loopd_mock.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: loop/looprpc/client_grpc.pb.go +// Source: github.com/lightninglabs/loop/looprpc (interfaces: SwapClientClient) // // Generated by this command: // -// mockgen -destination ./provider/loopd_mock.go -source loop/looprpc/client_grpc.pb.go -package provider +// mockgen -destination ./loopd_mock.go -package provider github.com/lightninglabs/loop/looprpc SwapClientClient // // Package provider is a generated GoMock package. @@ -16,13 +16,13 @@ import ( looprpc "github.com/lightninglabs/loop/looprpc" gomock "go.uber.org/mock/gomock" grpc "google.golang.org/grpc" - metadata "google.golang.org/grpc/metadata" ) // MockSwapClientClient is a mock of SwapClientClient interface. type MockSwapClientClient struct { ctrl *gomock.Controller recorder *MockSwapClientClientMockRecorder + isgomock struct{} } // MockSwapClientClientMockRecorder is the mock recorder for MockSwapClientClient. @@ -62,6 +62,26 @@ func (mr *MockSwapClientClientMockRecorder) AbandonSwap(ctx, in any, opts ...any return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AbandonSwap", reflect.TypeOf((*MockSwapClientClient)(nil).AbandonSwap), varargs...) } +// FetchL402Token mocks base method. +func (m *MockSwapClientClient) FetchL402Token(ctx context.Context, in *looprpc.FetchL402TokenRequest, opts ...grpc.CallOption) (*looprpc.FetchL402TokenResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "FetchL402Token", varargs...) + ret0, _ := ret[0].(*looprpc.FetchL402TokenResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// FetchL402Token indicates an expected call of FetchL402Token. +func (mr *MockSwapClientClientMockRecorder) FetchL402Token(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FetchL402Token", reflect.TypeOf((*MockSwapClientClient)(nil).FetchL402Token), varargs...) +} + // GetInfo mocks base method. func (m *MockSwapClientClient) GetInfo(ctx context.Context, in *looprpc.GetInfoRequest, opts ...grpc.CallOption) (*looprpc.GetInfoResponse, error) { m.ctrl.T.Helper() @@ -82,6 +102,26 @@ func (mr *MockSwapClientClientMockRecorder) GetInfo(ctx, in any, opts ...any) *g return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInfo", reflect.TypeOf((*MockSwapClientClient)(nil).GetInfo), varargs...) } +// GetL402Tokens mocks base method. +func (m *MockSwapClientClient) GetL402Tokens(ctx context.Context, in *looprpc.TokensRequest, opts ...grpc.CallOption) (*looprpc.TokensResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetL402Tokens", varargs...) + ret0, _ := ret[0].(*looprpc.TokensResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetL402Tokens indicates an expected call of GetL402Tokens. +func (mr *MockSwapClientClientMockRecorder) GetL402Tokens(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetL402Tokens", reflect.TypeOf((*MockSwapClientClient)(nil).GetL402Tokens), varargs...) +} + // GetLiquidityParams mocks base method. func (m *MockSwapClientClient) GetLiquidityParams(ctx context.Context, in *looprpc.GetLiquidityParamsRequest, opts ...grpc.CallOption) (*looprpc.LiquidityParameters, error) { m.ctrl.T.Helper() @@ -162,6 +202,26 @@ func (mr *MockSwapClientClientMockRecorder) GetLsatTokens(ctx, in any, opts ...a return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLsatTokens", reflect.TypeOf((*MockSwapClientClient)(nil).GetLsatTokens), varargs...) } +// GetStaticAddressSummary mocks base method. +func (m *MockSwapClientClient) GetStaticAddressSummary(ctx context.Context, in *looprpc.StaticAddressSummaryRequest, opts ...grpc.CallOption) (*looprpc.StaticAddressSummaryResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetStaticAddressSummary", varargs...) + ret0, _ := ret[0].(*looprpc.StaticAddressSummaryResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetStaticAddressSummary indicates an expected call of GetStaticAddressSummary. +func (mr *MockSwapClientClientMockRecorder) GetStaticAddressSummary(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetStaticAddressSummary", reflect.TypeOf((*MockSwapClientClient)(nil).GetStaticAddressSummary), varargs...) +} + // InstantOut mocks base method. func (m *MockSwapClientClient) InstantOut(ctx context.Context, in *looprpc.InstantOutRequest, opts ...grpc.CallOption) (*looprpc.InstantOutResponse, error) { m.ctrl.T.Helper() @@ -202,6 +262,26 @@ func (mr *MockSwapClientClientMockRecorder) InstantOutQuote(ctx, in any, opts .. return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InstantOutQuote", reflect.TypeOf((*MockSwapClientClient)(nil).InstantOutQuote), varargs...) } +// ListInstantOuts mocks base method. +func (m *MockSwapClientClient) ListInstantOuts(ctx context.Context, in *looprpc.ListInstantOutsRequest, opts ...grpc.CallOption) (*looprpc.ListInstantOutsResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "ListInstantOuts", varargs...) + ret0, _ := ret[0].(*looprpc.ListInstantOutsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// ListInstantOuts indicates an expected call of ListInstantOuts. +func (mr *MockSwapClientClientMockRecorder) ListInstantOuts(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListInstantOuts", reflect.TypeOf((*MockSwapClientClient)(nil).ListInstantOuts), varargs...) +} + // ListReservations mocks base method. func (m *MockSwapClientClient) ListReservations(ctx context.Context, in *looprpc.ListReservationsRequest, opts ...grpc.CallOption) (*looprpc.ListReservationsResponse, error) { m.ctrl.T.Helper() @@ -222,6 +302,46 @@ func (mr *MockSwapClientClientMockRecorder) ListReservations(ctx, in any, opts . return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListReservations", reflect.TypeOf((*MockSwapClientClient)(nil).ListReservations), varargs...) } +// ListStaticAddressDeposits mocks base method. +func (m *MockSwapClientClient) ListStaticAddressDeposits(ctx context.Context, in *looprpc.ListStaticAddressDepositsRequest, opts ...grpc.CallOption) (*looprpc.ListStaticAddressDepositsResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "ListStaticAddressDeposits", varargs...) + ret0, _ := ret[0].(*looprpc.ListStaticAddressDepositsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// ListStaticAddressDeposits indicates an expected call of ListStaticAddressDeposits. +func (mr *MockSwapClientClientMockRecorder) ListStaticAddressDeposits(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListStaticAddressDeposits", reflect.TypeOf((*MockSwapClientClient)(nil).ListStaticAddressDeposits), varargs...) +} + +// ListStaticAddressSwaps mocks base method. +func (m *MockSwapClientClient) ListStaticAddressSwaps(ctx context.Context, in *looprpc.ListStaticAddressSwapsRequest, opts ...grpc.CallOption) (*looprpc.ListStaticAddressSwapsResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "ListStaticAddressSwaps", varargs...) + ret0, _ := ret[0].(*looprpc.ListStaticAddressSwapsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// ListStaticAddressSwaps indicates an expected call of ListStaticAddressSwaps. +func (mr *MockSwapClientClientMockRecorder) ListStaticAddressSwaps(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListStaticAddressSwaps", reflect.TypeOf((*MockSwapClientClient)(nil).ListStaticAddressSwaps), varargs...) +} + // ListSwaps mocks base method. func (m *MockSwapClientClient) ListSwaps(ctx context.Context, in *looprpc.ListSwapsRequest, opts ...grpc.CallOption) (*looprpc.ListSwapsResponse, error) { m.ctrl.T.Helper() @@ -242,6 +362,26 @@ func (mr *MockSwapClientClientMockRecorder) ListSwaps(ctx, in any, opts ...any) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSwaps", reflect.TypeOf((*MockSwapClientClient)(nil).ListSwaps), varargs...) } +// ListUnspentDeposits mocks base method. +func (m *MockSwapClientClient) ListUnspentDeposits(ctx context.Context, in *looprpc.ListUnspentDepositsRequest, opts ...grpc.CallOption) (*looprpc.ListUnspentDepositsResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "ListUnspentDeposits", varargs...) + ret0, _ := ret[0].(*looprpc.ListUnspentDepositsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// ListUnspentDeposits indicates an expected call of ListUnspentDeposits. +func (mr *MockSwapClientClientMockRecorder) ListUnspentDeposits(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListUnspentDeposits", reflect.TypeOf((*MockSwapClientClient)(nil).ListUnspentDeposits), varargs...) +} + // LoopIn mocks base method. func (m *MockSwapClientClient) LoopIn(ctx context.Context, in *looprpc.LoopInRequest, opts ...grpc.CallOption) (*looprpc.SwapResponse, error) { m.ctrl.T.Helper() @@ -342,6 +482,26 @@ func (mr *MockSwapClientClientMockRecorder) Monitor(ctx, in any, opts ...any) *g return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Monitor", reflect.TypeOf((*MockSwapClientClient)(nil).Monitor), varargs...) } +// NewStaticAddress mocks base method. +func (m *MockSwapClientClient) NewStaticAddress(ctx context.Context, in *looprpc.NewStaticAddressRequest, opts ...grpc.CallOption) (*looprpc.NewStaticAddressResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "NewStaticAddress", varargs...) + ret0, _ := ret[0].(*looprpc.NewStaticAddressResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// NewStaticAddress indicates an expected call of NewStaticAddress. +func (mr *MockSwapClientClientMockRecorder) NewStaticAddress(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewStaticAddress", reflect.TypeOf((*MockSwapClientClient)(nil).NewStaticAddress), varargs...) +} + // Probe mocks base method. func (m *MockSwapClientClient) Probe(ctx context.Context, in *looprpc.ProbeRequest, opts ...grpc.CallOption) (*looprpc.ProbeResponse, error) { m.ctrl.T.Helper() @@ -382,6 +542,26 @@ func (mr *MockSwapClientClientMockRecorder) SetLiquidityParams(ctx, in any, opts return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetLiquidityParams", reflect.TypeOf((*MockSwapClientClient)(nil).SetLiquidityParams), varargs...) } +// StaticAddressLoopIn mocks base method. +func (m *MockSwapClientClient) StaticAddressLoopIn(ctx context.Context, in *looprpc.StaticAddressLoopInRequest, opts ...grpc.CallOption) (*looprpc.StaticAddressLoopInResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "StaticAddressLoopIn", varargs...) + ret0, _ := ret[0].(*looprpc.StaticAddressLoopInResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// StaticAddressLoopIn indicates an expected call of StaticAddressLoopIn. +func (mr *MockSwapClientClientMockRecorder) StaticAddressLoopIn(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StaticAddressLoopIn", reflect.TypeOf((*MockSwapClientClient)(nil).StaticAddressLoopIn), varargs...) +} + // SuggestSwaps mocks base method. func (m *MockSwapClientClient) SuggestSwaps(ctx context.Context, in *looprpc.SuggestSwapsRequest, opts ...grpc.CallOption) (*looprpc.SuggestSwapsResponse, error) { m.ctrl.T.Helper() @@ -422,598 +602,22 @@ func (mr *MockSwapClientClientMockRecorder) SwapInfo(ctx, in any, opts ...any) * return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SwapInfo", reflect.TypeOf((*MockSwapClientClient)(nil).SwapInfo), varargs...) } -// MockSwapClient_MonitorClient is a mock of SwapClient_MonitorClient interface. -type MockSwapClient_MonitorClient struct { - ctrl *gomock.Controller - recorder *MockSwapClient_MonitorClientMockRecorder -} - -// MockSwapClient_MonitorClientMockRecorder is the mock recorder for MockSwapClient_MonitorClient. -type MockSwapClient_MonitorClientMockRecorder struct { - mock *MockSwapClient_MonitorClient -} - -// NewMockSwapClient_MonitorClient creates a new mock instance. -func NewMockSwapClient_MonitorClient(ctrl *gomock.Controller) *MockSwapClient_MonitorClient { - mock := &MockSwapClient_MonitorClient{ctrl: ctrl} - mock.recorder = &MockSwapClient_MonitorClientMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockSwapClient_MonitorClient) EXPECT() *MockSwapClient_MonitorClientMockRecorder { - return m.recorder -} - -// CloseSend mocks base method. -func (m *MockSwapClient_MonitorClient) CloseSend() error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CloseSend") - ret0, _ := ret[0].(error) - return ret0 -} - -// CloseSend indicates an expected call of CloseSend. -func (mr *MockSwapClient_MonitorClientMockRecorder) CloseSend() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).CloseSend)) -} - -// Context mocks base method. -func (m *MockSwapClient_MonitorClient) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockSwapClient_MonitorClientMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).Context)) -} - -// Header mocks base method. -func (m *MockSwapClient_MonitorClient) Header() (metadata.MD, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Header") - ret0, _ := ret[0].(metadata.MD) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Header indicates an expected call of Header. -func (mr *MockSwapClient_MonitorClientMockRecorder) Header() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Header", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).Header)) -} - -// Recv mocks base method. -func (m *MockSwapClient_MonitorClient) Recv() (*looprpc.SwapStatus, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Recv") - ret0, _ := ret[0].(*looprpc.SwapStatus) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Recv indicates an expected call of Recv. -func (mr *MockSwapClient_MonitorClientMockRecorder) Recv() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).Recv)) -} - -// RecvMsg mocks base method. -func (m_2 *MockSwapClient_MonitorClient) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockSwapClient_MonitorClientMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).RecvMsg), m) -} - -// SendMsg mocks base method. -func (m_2 *MockSwapClient_MonitorClient) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockSwapClient_MonitorClientMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).SendMsg), m) -} - -// Trailer mocks base method. -func (m *MockSwapClient_MonitorClient) Trailer() metadata.MD { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Trailer") - ret0, _ := ret[0].(metadata.MD) - return ret0 -} - -// Trailer indicates an expected call of Trailer. -func (mr *MockSwapClient_MonitorClientMockRecorder) Trailer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Trailer", reflect.TypeOf((*MockSwapClient_MonitorClient)(nil).Trailer)) -} - -// MockSwapClientServer is a mock of SwapClientServer interface. -type MockSwapClientServer struct { - ctrl *gomock.Controller - recorder *MockSwapClientServerMockRecorder -} - -// MockSwapClientServerMockRecorder is the mock recorder for MockSwapClientServer. -type MockSwapClientServerMockRecorder struct { - mock *MockSwapClientServer -} - -// NewMockSwapClientServer creates a new mock instance. -func NewMockSwapClientServer(ctrl *gomock.Controller) *MockSwapClientServer { - mock := &MockSwapClientServer{ctrl: ctrl} - mock.recorder = &MockSwapClientServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockSwapClientServer) EXPECT() *MockSwapClientServerMockRecorder { - return m.recorder -} - -// AbandonSwap mocks base method. -func (m *MockSwapClientServer) AbandonSwap(arg0 context.Context, arg1 *looprpc.AbandonSwapRequest) (*looprpc.AbandonSwapResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AbandonSwap", arg0, arg1) - ret0, _ := ret[0].(*looprpc.AbandonSwapResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// AbandonSwap indicates an expected call of AbandonSwap. -func (mr *MockSwapClientServerMockRecorder) AbandonSwap(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AbandonSwap", reflect.TypeOf((*MockSwapClientServer)(nil).AbandonSwap), arg0, arg1) -} - -// GetInfo mocks base method. -func (m *MockSwapClientServer) GetInfo(arg0 context.Context, arg1 *looprpc.GetInfoRequest) (*looprpc.GetInfoResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetInfo", arg0, arg1) - ret0, _ := ret[0].(*looprpc.GetInfoResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetInfo indicates an expected call of GetInfo. -func (mr *MockSwapClientServerMockRecorder) GetInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInfo", reflect.TypeOf((*MockSwapClientServer)(nil).GetInfo), arg0, arg1) -} - -// GetLiquidityParams mocks base method. -func (m *MockSwapClientServer) GetLiquidityParams(arg0 context.Context, arg1 *looprpc.GetLiquidityParamsRequest) (*looprpc.LiquidityParameters, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetLiquidityParams", arg0, arg1) - ret0, _ := ret[0].(*looprpc.LiquidityParameters) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetLiquidityParams indicates an expected call of GetLiquidityParams. -func (mr *MockSwapClientServerMockRecorder) GetLiquidityParams(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLiquidityParams", reflect.TypeOf((*MockSwapClientServer)(nil).GetLiquidityParams), arg0, arg1) -} - -// GetLoopInQuote mocks base method. -func (m *MockSwapClientServer) GetLoopInQuote(arg0 context.Context, arg1 *looprpc.QuoteRequest) (*looprpc.InQuoteResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetLoopInQuote", arg0, arg1) - ret0, _ := ret[0].(*looprpc.InQuoteResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetLoopInQuote indicates an expected call of GetLoopInQuote. -func (mr *MockSwapClientServerMockRecorder) GetLoopInQuote(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLoopInQuote", reflect.TypeOf((*MockSwapClientServer)(nil).GetLoopInQuote), arg0, arg1) -} - -// GetLoopInTerms mocks base method. -func (m *MockSwapClientServer) GetLoopInTerms(arg0 context.Context, arg1 *looprpc.TermsRequest) (*looprpc.InTermsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetLoopInTerms", arg0, arg1) - ret0, _ := ret[0].(*looprpc.InTermsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetLoopInTerms indicates an expected call of GetLoopInTerms. -func (mr *MockSwapClientServerMockRecorder) GetLoopInTerms(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLoopInTerms", reflect.TypeOf((*MockSwapClientServer)(nil).GetLoopInTerms), arg0, arg1) -} - -// GetLsatTokens mocks base method. -func (m *MockSwapClientServer) GetLsatTokens(arg0 context.Context, arg1 *looprpc.TokensRequest) (*looprpc.TokensResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetLsatTokens", arg0, arg1) - ret0, _ := ret[0].(*looprpc.TokensResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// GetLsatTokens indicates an expected call of GetLsatTokens. -func (mr *MockSwapClientServerMockRecorder) GetLsatTokens(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLsatTokens", reflect.TypeOf((*MockSwapClientServer)(nil).GetLsatTokens), arg0, arg1) -} - -// InstantOut mocks base method. -func (m *MockSwapClientServer) InstantOut(arg0 context.Context, arg1 *looprpc.InstantOutRequest) (*looprpc.InstantOutResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InstantOut", arg0, arg1) - ret0, _ := ret[0].(*looprpc.InstantOutResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// InstantOut indicates an expected call of InstantOut. -func (mr *MockSwapClientServerMockRecorder) InstantOut(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InstantOut", reflect.TypeOf((*MockSwapClientServer)(nil).InstantOut), arg0, arg1) -} - -// InstantOutQuote mocks base method. -func (m *MockSwapClientServer) InstantOutQuote(arg0 context.Context, arg1 *looprpc.InstantOutQuoteRequest) (*looprpc.InstantOutQuoteResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InstantOutQuote", arg0, arg1) - ret0, _ := ret[0].(*looprpc.InstantOutQuoteResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// InstantOutQuote indicates an expected call of InstantOutQuote. -func (mr *MockSwapClientServerMockRecorder) InstantOutQuote(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InstantOutQuote", reflect.TypeOf((*MockSwapClientServer)(nil).InstantOutQuote), arg0, arg1) -} - -// ListReservations mocks base method. -func (m *MockSwapClientServer) ListReservations(arg0 context.Context, arg1 *looprpc.ListReservationsRequest) (*looprpc.ListReservationsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListReservations", arg0, arg1) - ret0, _ := ret[0].(*looprpc.ListReservationsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListReservations indicates an expected call of ListReservations. -func (mr *MockSwapClientServerMockRecorder) ListReservations(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListReservations", reflect.TypeOf((*MockSwapClientServer)(nil).ListReservations), arg0, arg1) -} - -// ListSwaps mocks base method. -func (m *MockSwapClientServer) ListSwaps(arg0 context.Context, arg1 *looprpc.ListSwapsRequest) (*looprpc.ListSwapsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListSwaps", arg0, arg1) - ret0, _ := ret[0].(*looprpc.ListSwapsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// ListSwaps indicates an expected call of ListSwaps. -func (mr *MockSwapClientServerMockRecorder) ListSwaps(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSwaps", reflect.TypeOf((*MockSwapClientServer)(nil).ListSwaps), arg0, arg1) -} - -// LoopIn mocks base method. -func (m *MockSwapClientServer) LoopIn(arg0 context.Context, arg1 *looprpc.LoopInRequest) (*looprpc.SwapResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoopIn", arg0, arg1) - ret0, _ := ret[0].(*looprpc.SwapResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LoopIn indicates an expected call of LoopIn. -func (mr *MockSwapClientServerMockRecorder) LoopIn(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoopIn", reflect.TypeOf((*MockSwapClientServer)(nil).LoopIn), arg0, arg1) -} - -// LoopOut mocks base method. -func (m *MockSwapClientServer) LoopOut(arg0 context.Context, arg1 *looprpc.LoopOutRequest) (*looprpc.SwapResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoopOut", arg0, arg1) - ret0, _ := ret[0].(*looprpc.SwapResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LoopOut indicates an expected call of LoopOut. -func (mr *MockSwapClientServerMockRecorder) LoopOut(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoopOut", reflect.TypeOf((*MockSwapClientServer)(nil).LoopOut), arg0, arg1) -} - -// LoopOutQuote mocks base method. -func (m *MockSwapClientServer) LoopOutQuote(arg0 context.Context, arg1 *looprpc.QuoteRequest) (*looprpc.OutQuoteResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoopOutQuote", arg0, arg1) - ret0, _ := ret[0].(*looprpc.OutQuoteResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LoopOutQuote indicates an expected call of LoopOutQuote. -func (mr *MockSwapClientServerMockRecorder) LoopOutQuote(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoopOutQuote", reflect.TypeOf((*MockSwapClientServer)(nil).LoopOutQuote), arg0, arg1) -} - -// LoopOutTerms mocks base method. -func (m *MockSwapClientServer) LoopOutTerms(arg0 context.Context, arg1 *looprpc.TermsRequest) (*looprpc.OutTermsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoopOutTerms", arg0, arg1) - ret0, _ := ret[0].(*looprpc.OutTermsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// LoopOutTerms indicates an expected call of LoopOutTerms. -func (mr *MockSwapClientServerMockRecorder) LoopOutTerms(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoopOutTerms", reflect.TypeOf((*MockSwapClientServer)(nil).LoopOutTerms), arg0, arg1) -} - -// Monitor mocks base method. -func (m *MockSwapClientServer) Monitor(arg0 *looprpc.MonitorRequest, arg1 looprpc.SwapClient_MonitorServer) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Monitor", arg0, arg1) - ret0, _ := ret[0].(error) - return ret0 -} - -// Monitor indicates an expected call of Monitor. -func (mr *MockSwapClientServerMockRecorder) Monitor(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Monitor", reflect.TypeOf((*MockSwapClientServer)(nil).Monitor), arg0, arg1) -} - -// Probe mocks base method. -func (m *MockSwapClientServer) Probe(arg0 context.Context, arg1 *looprpc.ProbeRequest) (*looprpc.ProbeResponse, error) { +// WithdrawDeposits mocks base method. +func (m *MockSwapClientClient) WithdrawDeposits(ctx context.Context, in *looprpc.WithdrawDepositsRequest, opts ...grpc.CallOption) (*looprpc.WithdrawDepositsResponse, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Probe", arg0, arg1) - ret0, _ := ret[0].(*looprpc.ProbeResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// Probe indicates an expected call of Probe. -func (mr *MockSwapClientServerMockRecorder) Probe(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Probe", reflect.TypeOf((*MockSwapClientServer)(nil).Probe), arg0, arg1) -} - -// SetLiquidityParams mocks base method. -func (m *MockSwapClientServer) SetLiquidityParams(arg0 context.Context, arg1 *looprpc.SetLiquidityParamsRequest) (*looprpc.SetLiquidityParamsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetLiquidityParams", arg0, arg1) - ret0, _ := ret[0].(*looprpc.SetLiquidityParamsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SetLiquidityParams indicates an expected call of SetLiquidityParams. -func (mr *MockSwapClientServerMockRecorder) SetLiquidityParams(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetLiquidityParams", reflect.TypeOf((*MockSwapClientServer)(nil).SetLiquidityParams), arg0, arg1) -} - -// SuggestSwaps mocks base method. -func (m *MockSwapClientServer) SuggestSwaps(arg0 context.Context, arg1 *looprpc.SuggestSwapsRequest) (*looprpc.SuggestSwapsResponse, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SuggestSwaps", arg0, arg1) - ret0, _ := ret[0].(*looprpc.SuggestSwapsResponse) - ret1, _ := ret[1].(error) - return ret0, ret1 -} - -// SuggestSwaps indicates an expected call of SuggestSwaps. -func (mr *MockSwapClientServerMockRecorder) SuggestSwaps(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SuggestSwaps", reflect.TypeOf((*MockSwapClientServer)(nil).SuggestSwaps), arg0, arg1) -} - -// SwapInfo mocks base method. -func (m *MockSwapClientServer) SwapInfo(arg0 context.Context, arg1 *looprpc.SwapInfoRequest) (*looprpc.SwapStatus, error) { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SwapInfo", arg0, arg1) - ret0, _ := ret[0].(*looprpc.SwapStatus) + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "WithdrawDeposits", varargs...) + ret0, _ := ret[0].(*looprpc.WithdrawDepositsResponse) ret1, _ := ret[1].(error) return ret0, ret1 } -// SwapInfo indicates an expected call of SwapInfo. -func (mr *MockSwapClientServerMockRecorder) SwapInfo(arg0, arg1 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SwapInfo", reflect.TypeOf((*MockSwapClientServer)(nil).SwapInfo), arg0, arg1) -} - -// mustEmbedUnimplementedSwapClientServer mocks base method. -func (m *MockSwapClientServer) mustEmbedUnimplementedSwapClientServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedSwapClientServer") -} - -// mustEmbedUnimplementedSwapClientServer indicates an expected call of mustEmbedUnimplementedSwapClientServer. -func (mr *MockSwapClientServerMockRecorder) mustEmbedUnimplementedSwapClientServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedSwapClientServer", reflect.TypeOf((*MockSwapClientServer)(nil).mustEmbedUnimplementedSwapClientServer)) -} - -// MockUnsafeSwapClientServer is a mock of UnsafeSwapClientServer interface. -type MockUnsafeSwapClientServer struct { - ctrl *gomock.Controller - recorder *MockUnsafeSwapClientServerMockRecorder -} - -// MockUnsafeSwapClientServerMockRecorder is the mock recorder for MockUnsafeSwapClientServer. -type MockUnsafeSwapClientServerMockRecorder struct { - mock *MockUnsafeSwapClientServer -} - -// NewMockUnsafeSwapClientServer creates a new mock instance. -func NewMockUnsafeSwapClientServer(ctrl *gomock.Controller) *MockUnsafeSwapClientServer { - mock := &MockUnsafeSwapClientServer{ctrl: ctrl} - mock.recorder = &MockUnsafeSwapClientServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockUnsafeSwapClientServer) EXPECT() *MockUnsafeSwapClientServerMockRecorder { - return m.recorder -} - -// mustEmbedUnimplementedSwapClientServer mocks base method. -func (m *MockUnsafeSwapClientServer) mustEmbedUnimplementedSwapClientServer() { - m.ctrl.T.Helper() - m.ctrl.Call(m, "mustEmbedUnimplementedSwapClientServer") -} - -// mustEmbedUnimplementedSwapClientServer indicates an expected call of mustEmbedUnimplementedSwapClientServer. -func (mr *MockUnsafeSwapClientServerMockRecorder) mustEmbedUnimplementedSwapClientServer() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedSwapClientServer", reflect.TypeOf((*MockUnsafeSwapClientServer)(nil).mustEmbedUnimplementedSwapClientServer)) -} - -// MockSwapClient_MonitorServer is a mock of SwapClient_MonitorServer interface. -type MockSwapClient_MonitorServer struct { - ctrl *gomock.Controller - recorder *MockSwapClient_MonitorServerMockRecorder -} - -// MockSwapClient_MonitorServerMockRecorder is the mock recorder for MockSwapClient_MonitorServer. -type MockSwapClient_MonitorServerMockRecorder struct { - mock *MockSwapClient_MonitorServer -} - -// NewMockSwapClient_MonitorServer creates a new mock instance. -func NewMockSwapClient_MonitorServer(ctrl *gomock.Controller) *MockSwapClient_MonitorServer { - mock := &MockSwapClient_MonitorServer{ctrl: ctrl} - mock.recorder = &MockSwapClient_MonitorServerMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockSwapClient_MonitorServer) EXPECT() *MockSwapClient_MonitorServerMockRecorder { - return m.recorder -} - -// Context mocks base method. -func (m *MockSwapClient_MonitorServer) Context() context.Context { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Context") - ret0, _ := ret[0].(context.Context) - return ret0 -} - -// Context indicates an expected call of Context. -func (mr *MockSwapClient_MonitorServerMockRecorder) Context() *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Context", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).Context)) -} - -// RecvMsg mocks base method. -func (m_2 *MockSwapClient_MonitorServer) RecvMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "RecvMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// RecvMsg indicates an expected call of RecvMsg. -func (mr *MockSwapClient_MonitorServerMockRecorder) RecvMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RecvMsg", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).RecvMsg), m) -} - -// Send mocks base method. -func (m *MockSwapClient_MonitorServer) Send(arg0 *looprpc.SwapStatus) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Send", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// Send indicates an expected call of Send. -func (mr *MockSwapClient_MonitorServerMockRecorder) Send(arg0 any) *gomock.Call { +// WithdrawDeposits indicates an expected call of WithdrawDeposits. +func (mr *MockSwapClientClientMockRecorder) WithdrawDeposits(ctx, in any, opts ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).Send), arg0) -} - -// SendHeader mocks base method. -func (m *MockSwapClient_MonitorServer) SendHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SendHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendHeader indicates an expected call of SendHeader. -func (mr *MockSwapClient_MonitorServerMockRecorder) SendHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendHeader", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).SendHeader), arg0) -} - -// SendMsg mocks base method. -func (m_2 *MockSwapClient_MonitorServer) SendMsg(m any) error { - m_2.ctrl.T.Helper() - ret := m_2.ctrl.Call(m_2, "SendMsg", m) - ret0, _ := ret[0].(error) - return ret0 -} - -// SendMsg indicates an expected call of SendMsg. -func (mr *MockSwapClient_MonitorServerMockRecorder) SendMsg(m any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SendMsg", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).SendMsg), m) -} - -// SetHeader mocks base method. -func (m *MockSwapClient_MonitorServer) SetHeader(arg0 metadata.MD) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetHeader", arg0) - ret0, _ := ret[0].(error) - return ret0 -} - -// SetHeader indicates an expected call of SetHeader. -func (mr *MockSwapClient_MonitorServerMockRecorder) SetHeader(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetHeader", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).SetHeader), arg0) -} - -// SetTrailer mocks base method. -func (m *MockSwapClient_MonitorServer) SetTrailer(arg0 metadata.MD) { - m.ctrl.T.Helper() - m.ctrl.Call(m, "SetTrailer", arg0) -} - -// SetTrailer indicates an expected call of SetTrailer. -func (mr *MockSwapClient_MonitorServerMockRecorder) SetTrailer(arg0 any) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTrailer", reflect.TypeOf((*MockSwapClient_MonitorServer)(nil).SetTrailer), arg0) + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WithdrawDeposits", reflect.TypeOf((*MockSwapClientClient)(nil).WithdrawDeposits), varargs...) } diff --git a/provider/provider.go b/provider/provider.go index eb3f922..71c3d16 100644 --- a/provider/provider.go +++ b/provider/provider.go @@ -1,3 +1,6 @@ +//go:generate mockgen -destination ./provider_mock.go -package provider -source provider.go +//go:generate mockgen -destination ./loopd_mock.go -package provider github.com/lightninglabs/loop/looprpc SwapClientClient + package provider import ( diff --git a/provider/provider_mock.go b/provider/provider_mock.go index da714c0..4aca144 100644 --- a/provider/provider_mock.go +++ b/provider/provider_mock.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: provider/provider.go +// Source: provider.go // // Generated by this command: // -// mockgen -destination ./provider/provider_mock.go -source provider/provider.go -package provider +// mockgen -destination ./provider_mock.go -package provider -source provider.go // // Package provider is a generated GoMock package. @@ -21,6 +21,7 @@ import ( type MockProvider struct { ctrl *gomock.Controller recorder *MockProviderMockRecorder + isgomock struct{} } // MockProviderMockRecorder is the mock recorder for MockProvider. From 003c39e23914abe727b39828a4153c8e8cbf4a81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 11:20:26 +0200 Subject: [PATCH 04/12] feat: remove lnd and loop submodules from the repository --- .gitmodules | 6 ------ lnd | 1 - loop | 1 - 3 files changed, 8 deletions(-) delete mode 100644 .gitmodules delete mode 160000 lnd delete mode 160000 loop diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 6fcd59c..0000000 --- a/.gitmodules +++ /dev/null @@ -1,6 +0,0 @@ -[submodule "lnd"] - path = lnd - url = https://github.com/lightningnetwork/lnd.git -[submodule "loop"] - path = loop - url = https://github.com/lightninglabs/loop diff --git a/lnd b/lnd deleted file mode 160000 index 8bba792..0000000 --- a/lnd +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8bba79222f439127e46ec3ff7ec7c650e0d88d56 diff --git a/loop b/loop deleted file mode 160000 index ab30e0b..0000000 --- a/loop +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ab30e0b4e852dc8538369c6be33bb8d8f95f83ae From 3b4e9f260cd36d79b8de18db93d401a58daacfea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:00:20 +0200 Subject: [PATCH 05/12] feat: add swapLockTimeout configuration flag Add new command line flag for configuring swap lock timeout duration with default value of 30 minutes. This allows users to customize when swap locks automatically expire. --- flags.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flags.go b/flags.go index 980d1af..ad9c23c 100644 --- a/flags.go +++ b/flags.go @@ -125,6 +125,10 @@ func init() { rootCmd.Flags().String("sweepConfTarget", "400", "Target number of confirmations for swaps, this uses bitcoin core broken estimator, procced with caution") viper.BindPFlag("sweepConfTarget", rootCmd.Flags().Lookup("sweepConfTarget")) + // Swap lock timeout + rootCmd.Flags().String("swapLockTimeout", "30m", "Timeout for swap locks to automatically expire (e.g. 30m, 1h, 45m)") + viper.BindPFlag("swapLockTimeout", rootCmd.Flags().Lookup("swapLockTimeout")) + //Now we set the global vars pollingInterval = viper.GetDuration("pollingInterval") From d6e8ad9c056039a8b13de41c46047b0a2cb8119b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:00:35 +0200 Subject: [PATCH 06/12] feat: implement swap locking mechanism for LoopProvider Add thread-safe locking system to prevent concurrent submarine and reverse swaps with configurable timeout periods and automatic lock expiration. --- provider/loop_provider.go | 194 ++++++++-------- provider/loop_provider_test.go | 399 +++++++++++++++++---------------- 2 files changed, 301 insertions(+), 292 deletions(-) diff --git a/provider/loop_provider.go b/provider/loop_provider.go index 9c53d90..3945e54 100644 --- a/provider/loop_provider.go +++ b/provider/loop_provider.go @@ -4,8 +4,8 @@ import ( "context" "encoding/hex" "fmt" - "reflect" "strconv" + "sync" "time" "github.com/Elenpay/liquidator/customerrors" @@ -17,18 +17,98 @@ import ( ) type LoopProvider struct { + // Timestamp of when submarine swap lock was acquired + submarineSwapLockTime *time.Time + + // Timestamp of when reverse submarine swap lock was acquired + reverseSwapLockTime *time.Time + + // General mutex for managing lock state + stateMutex sync.RWMutex +} + +// acquireSubmarineSwapLock tries to acquire the submarine swap lock +func (l *LoopProvider) acquireSubmarineSwapLock() error { + l.stateMutex.Lock() + defer l.stateMutex.Unlock() + + // Check if there's an active lock and if it has expired + if l.submarineSwapLockTime != nil { + swapLockTimeout := viper.GetDuration("swapLockTimeout") + if time.Since(*l.submarineSwapLockTime) < swapLockTimeout { + return &customerrors.SwapInProgressError{ + Message: fmt.Sprintf("submarine swap is locked, started at %s, will expire at %s", + l.submarineSwapLockTime.Format(time.RFC3339), + l.submarineSwapLockTime.Add(swapLockTimeout).Format(time.RFC3339)), + } + } + } + + // Acquire the lock + now := time.Now() + l.submarineSwapLockTime = &now + log.Infof("Acquired submarine swap lock at %s", now.Format(time.RFC3339)) + return nil +} + +// releaseSubmarineSwapLock releases the submarine swap lock +func (l *LoopProvider) releaseSubmarineSwapLock() { + l.stateMutex.Lock() + defer l.stateMutex.Unlock() + + if l.submarineSwapLockTime != nil { + log.Infof("Released submarine swap lock that was acquired at %s", l.submarineSwapLockTime.Format(time.RFC3339)) + l.submarineSwapLockTime = nil + } +} + +// acquireReverseSwapLock tries to acquire the reverse swap lock +func (l *LoopProvider) acquireReverseSwapLock() error { + l.stateMutex.Lock() + defer l.stateMutex.Unlock() + + // Check if there's an active lock and if it has expired + if l.reverseSwapLockTime != nil { + swapLockTimeout := viper.GetDuration("swapLockTimeout") + if time.Since(*l.reverseSwapLockTime) < swapLockTimeout { + return &customerrors.SwapInProgressError{ + Message: fmt.Sprintf("reverse submarine swap is locked, started at %s, will expire at %s", + l.reverseSwapLockTime.Format(time.RFC3339), + l.reverseSwapLockTime.Add(swapLockTimeout).Format(time.RFC3339)), + } + } + } + + // Acquire the lock + now := time.Now() + l.reverseSwapLockTime = &now + log.Infof("Acquired reverse swap lock at %s", now.Format(time.RFC3339)) + return nil +} + +// releaseReverseSwapLock releases the reverse swap lock +func (l *LoopProvider) releaseReverseSwapLock() { + l.stateMutex.Lock() + defer l.stateMutex.Unlock() + + if l.reverseSwapLockTime != nil { + log.Infof("Released reverse swap lock that was acquired at %s", l.reverseSwapLockTime.Format(time.RFC3339)) + l.reverseSwapLockTime = nil + } } // Submarine Swap L1->L2 based on loop (Loop In) func (l *LoopProvider) RequestSubmarineSwap(ctx context.Context, request SubmarineSwapRequest, client looprpc.SwapClientClient) (SubmarineSwapResponse, error) { - //Check that no sub swap is already in progress - err := checkSubmarineSwapNotInProgress(ctx, client) + //Check that no sub swap is already in progress and acquire lock (rate limiting) + err := l.acquireSubmarineSwapLock() if err != nil { log.Error(err) return SubmarineSwapResponse{}, err } + // Note: Lock will expire automatically via timeout - no manual release for anti-spam purposes + if request.SatsAmount <= 0 { //Create error err := fmt.Errorf("swap amount is <= 0") @@ -89,9 +169,10 @@ func (l *LoopProvider) RequestSubmarineSwap(ctx context.Context, request Submari LastHop: lastHopBytes, ExternalHtlc: true, HtlcConfTarget: 0, - Label: fmt.Sprintf("Submarine swap %d sats on date %s", request.SatsAmount, time.Now().Format(time.RFC3339)), + Label: fmt.Sprintf("Swap in %d sats on date %s", request.SatsAmount, time.Now().Format(time.RFC3339)), Initiator: "Liquidator", - Private: false, + Private: true, + //TODO Review if hop hints are needed }) @@ -123,99 +204,19 @@ func (l *LoopProvider) RequestSubmarineSwap(ctx context.Context, request Submari } -// Check that a Submarine Swap is not already in progress, by now the limit is one swap at a time for Swaps L1->L2 -func checkSubmarineSwapNotInProgress(ctx context.Context, client looprpc.SwapClientClient) error { - - //Invoking ListSwaps check that a swap is not already in progress based on channelId of the request - swaps, err := client.ListSwaps(ctx, &looprpc.ListSwapsRequest{}) - if err != nil { - log.Error(err) - return err - } - - //Filter swaps of Loop In type and which are not older than 24 hours (to avoid old swaps stuck in INITIATED or HTLC_PUBLISHED state to prevent new swaps) - var loopInSwaps []*looprpc.SwapStatus - for _, swap := range swaps.Swaps { - if swap.Type == looprpc.SwapType_LOOP_IN && time.Since(time.Unix(0, swap.InitiationTime)) < 24*time.Hour { - loopInSwaps = append(loopInSwaps, swap) - } - } - - //CHeck that all the swaps status are either SUCCESS or FAILED, meaning that they are not in progress - for _, swap := range loopInSwaps { - if swap.State != looprpc.SwapState_SUCCESS && swap.State != looprpc.SwapState_FAILED { - //Create error of Swap already in progress - - id := hex.EncodeToString(swap.GetIdBytes()) - errMessage := fmt.Sprintf("another submarine swap is already in progress, swap id: %s", id) - - swapInProgressErr := customerrors.SwapInProgressError{ - Message: errMessage, - } - - return &swapInProgressErr - } - } - - return nil -} - -// Function that checks that a reverse submarine swap is only one per this channelid -func checkReverseSubmarineSwapNotInProgress(ctx context.Context, client looprpc.SwapClientClient, request ReverseSubmarineSwapRequest) error { - - //Invoking ListSwaps check that a swap is not already in progress based on channelId of the request - swapRequest := &looprpc.ListSwapsRequest{} - - log.Debugf("swapRequest: %+v", swapRequest) - log.Debugf("context: %+v", ctx) - - swaps, err := client.ListSwaps(ctx, swapRequest) - if err != nil { - log.Error(err) - return err - } - - //If there are no swaps, return nil - if len(swaps.Swaps) == 0 { - return nil - } - - //Filter swaps of Loop Out type - var loopOutSwaps []*looprpc.SwapStatus - for _, swap := range swaps.Swaps { - if swap.Type == looprpc.SwapType_LOOP_OUT && reflect.DeepEqual(swap.OutgoingChanSet, request.ChannelSet) { - loopOutSwaps = append(loopOutSwaps, swap) - } - } - - //CHeck that all the swaps status are either SUCCESS or FAILED, meaning that they are not in progress - for _, swap := range loopOutSwaps { - if swap.State != looprpc.SwapState_SUCCESS && swap.State != looprpc.SwapState_FAILED { - //Create error - id := hex.EncodeToString(swap.GetIdBytes()) - errMessage := fmt.Sprintf("another submarine swap is already in progress, swap id: %s", id) - - swapInProgressErr := customerrors.SwapInProgressError{ - Message: errMessage, - } - - return &swapInProgressErr - } - - } - return nil -} - +// Reverse Submarine Swap L2->L1 based on loop (Loop Out) // Reverse Submarine Swap L2->L1 based on loop (Loop Out) func (l *LoopProvider) RequestReverseSubmarineSwap(ctx context.Context, request ReverseSubmarineSwapRequest, client looprpc.SwapClientClient) (ReverseSubmarineSwapResponse, error) { - //Check that no other swap is in progress - err := checkReverseSubmarineSwapNotInProgress(ctx, client, request) + //Check that no other swap is in progress and acquire lock (rate limiting) + err := l.acquireReverseSwapLock() if err != nil { log.Error(err) return ReverseSubmarineSwapResponse{}, err } + // Note: Lock will expire automatically via timeout - no manual release for anti-spam purposes + if request.SatsAmount <= 0 { //Create error err := fmt.Errorf("swap amount is <= 0") @@ -272,9 +273,9 @@ func (l *LoopProvider) RequestReverseSubmarineSwap(ctx context.Context, request MaxSwapFee: int64(limits.maxSwapFee), MaxPrepayRoutingFee: int64(limits.maxPrepayRoutingFee), MaxSwapRoutingFee: maxSwapRoutingFee, - OutgoingChanSet: request.ChannelSet, - SweepConfTarget: viper.GetInt32("sweepConfTarget"), - HtlcConfirmations: 3, + // OutgoingChanSet: request.ChannelSet, Disabled, evidence indicates this is not needed + SweepConfTarget: viper.GetInt32("sweepConfTarget"), + HtlcConfirmations: 3, //The publication deadline is maximum the offset of the swap deadline conf plus the current time SwapPublicationDeadline: uint64(time.Now().Add(viper.GetDuration("swapPublicationOffset") * time.Minute).Unix()), Label: fmt.Sprintf("Reverse submarine swap %d sats on date %s for channels: %v", request.SatsAmount, time.Now().Format(time.RFC3339), request.ChannelSet), @@ -363,8 +364,6 @@ func (l *LoopProvider) MonitorSwap(ctx context.Context, swapId string, swapClien return looprpc.SwapStatus{}, err } - var response looprpc.SwapStatus - for { //Get swap status @@ -383,14 +382,11 @@ func (l *LoopProvider) MonitorSwap(ctx context.Context, swapId string, swapClien //If the swap is completed or failed, return the response if swapInfo.State == looprpc.SwapState_SUCCESS || swapInfo.State == looprpc.SwapState_FAILED { - response = *swapInfo - break + return *swapInfo, nil } time.Sleep(1 * time.Second) } - return response, nil - } diff --git a/provider/loop_provider_test.go b/provider/loop_provider_test.go index 4937e28..3939a49 100644 --- a/provider/loop_provider_test.go +++ b/provider/loop_provider_test.go @@ -4,6 +4,8 @@ import ( "context" "encoding/hex" "reflect" + "strings" + "sync" "testing" "time" @@ -22,6 +24,7 @@ func TestMain(m *testing.M) { func setLimitFees() { viper.Set("limitQuoteFees", "0.005") viper.Set("limitFeesL2", "0.002") + viper.Set("swapLockTimeout", "30s") // Set a short timeout for testing } func TestLoopProvider_RequestSubmarineSwap(t *testing.T) { @@ -363,199 +366,6 @@ func TestLoopProvider_GetSwapStatus(t *testing.T) { } } -func Test_checkSubmarineSwapNotInProgress(t *testing.T) { - - //Swap client with ListSwaps returning a swap in progress - ctrl := gomock.NewController(t) - defer ctrl.Finish() - - //Mock SwapInfo - swapClientWithOngoingSwaps := NewMockSwapClientClient(ctrl) - idBytes, err := hex.DecodeString("1234") - if err != nil { - t.Errorf("Error decoding hex string: %v", err) - } - - swapClientWithOngoingSwaps.EXPECT().ListSwaps(gomock.Any(), gomock.Any()).Return(&looprpc.ListSwapsResponse{ - Swaps: []*looprpc.SwapStatus{ - { - Amt: 0, - Id: "", - IdBytes: idBytes, - Type: looprpc.SwapType_LOOP_IN, - State: looprpc.SwapState_INITIATED, - FailureReason: 0, - //InitiationTime 4 hours ago - InitiationTime: time.Now().Add(-4 * time.Hour).UnixNano(), - LastUpdateTime: time.Now().Add(-4 * time.Hour).UnixNano(), - HtlcAddress: "", - HtlcAddressP2Wsh: "", - HtlcAddressP2Tr: "", - CostServer: 0, - CostOnchain: 0, - CostOffchain: 0, - LastHop: []byte{}, - OutgoingChanSet: []uint64{}, - Label: "", - }, - }, - }, nil).AnyTimes() - - //Swap client with ListSwaps returning no swaps - swapClientWithNoOngoingSwaps := NewMockSwapClientClient(ctrl) - swapClientWithNoOngoingSwaps.EXPECT().ListSwaps(gomock.Any(), gomock.Any()).Return(&looprpc.ListSwapsResponse{ - Swaps: []*looprpc.SwapStatus{ - { - Amt: 0, - Id: "", - IdBytes: idBytes, - Type: looprpc.SwapType_LOOP_IN, - State: looprpc.SwapState_INITIATED, - FailureReason: 0, - //InitiationTime is more than 24 hours ago, stuck but ignored - InitiationTime: time.Now().Add(-25 * time.Hour).UnixNano(), - LastUpdateTime: time.Now().Add(-25 * time.Hour).UnixNano(), - HtlcAddress: "", - HtlcAddressP2Wsh: "", - HtlcAddressP2Tr: "", - CostServer: 0, - CostOnchain: 0, - CostOffchain: 0, - LastHop: []byte{}, - OutgoingChanSet: []uint64{}, - Label: "", - }, - }, - }, nil).AnyTimes() - - type args struct { - ctx context.Context - client looprpc.SwapClientClient - } - tests := []struct { - name string - args args - wantErr bool - }{ - { - name: "checkSubmarineSwapNotInProgress_valid", - args: args{ - ctx: context.Background(), - client: swapClientWithNoOngoingSwaps, - }, - wantErr: false, - }, - { - name: "checkSubmarineSwapNotInProgress_ErrorOngoingSwap", - args: args{ - ctx: context.Background(), - client: swapClientWithOngoingSwaps, - }, - wantErr: true, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if err := checkSubmarineSwapNotInProgress(tt.args.ctx, tt.args.client); (err != nil) != tt.wantErr { - t.Errorf("checkSubmarineSwapNotInProgress() error = %v, wantErr %v", err, tt.wantErr) - } - }) - } -} - -// checkReverseSubmarineSwapNotInProgress -func Test_checkReverseSubmarineSwapNotInProgress(t *testing.T) { - - //Swap client with ListSwaps returning a swap in progress - ctrl := gomock.NewController(t) - defer ctrl.Finish() - - channelSet := []uint64{1, 2, 3} - - //Mock SwapInfo - swapClientWithOngoingSwaps := NewMockSwapClientClient(ctrl) - idBytes, err := hex.DecodeString("1234") - if err != nil { - t.Errorf("Error decoding hex string: %v", err) - } - - swapClientWithOngoingSwaps.EXPECT().ListSwaps(gomock.Any(), gomock.Any()).Return(&looprpc.ListSwapsResponse{ - Swaps: []*looprpc.SwapStatus{ - { - Amt: 0, - Id: "", - IdBytes: idBytes, - Type: looprpc.SwapType_LOOP_OUT, - State: looprpc.SwapState_INITIATED, - FailureReason: 0, - InitiationTime: 0, - LastUpdateTime: 0, - HtlcAddress: "", - HtlcAddressP2Wsh: "", - HtlcAddressP2Tr: "", - CostServer: 0, - CostOnchain: 0, - CostOffchain: 0, - LastHop: []byte{}, - OutgoingChanSet: channelSet, - Label: "", - }, - }, - }, nil).AnyTimes() - - //Swap client with ListSwaps returning no swaps - swapClientWithNoOngoingSwaps := NewMockSwapClientClient(ctrl) - swapClientWithNoOngoingSwaps.EXPECT().ListSwaps(gomock.Any(), gomock.Any()).Return(&looprpc.ListSwapsResponse{ - Swaps: []*looprpc.SwapStatus{}, - }, nil).AnyTimes() - - type args struct { - ctx context.Context - client looprpc.SwapClientClient - request ReverseSubmarineSwapRequest - } - tests := []struct { - name string - args args - wantErr bool - }{ - { - name: "checkReverseSubmarineSwapNotInProgress_valid", - args: args{ - ctx: context.Background(), - client: swapClientWithNoOngoingSwaps, - request: ReverseSubmarineSwapRequest{ - ReceiverBTCAddress: "", - SatsAmount: 0, - ChannelSet: channelSet, - }, - }, - wantErr: false, - }, - { - name: "checkReverseSubmarineSwapNotInProgress_ErrorOngoingSwap", - args: args{ - ctx: context.Background(), - client: swapClientWithOngoingSwaps, - request: ReverseSubmarineSwapRequest{ - ReceiverBTCAddress: "", - SatsAmount: 0, - ChannelSet: channelSet, - }, - }, - wantErr: true, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if err := checkReverseSubmarineSwapNotInProgress(tt.args.ctx, tt.args.client, tt.args.request); (err != nil) != tt.wantErr { - t.Errorf("checkReverseSubmarineSwapNotInProgress() error = %v, wantErr %v", err, tt.wantErr) - } - }) - } - -} - func TestLoopProvider_MonitorSwap(t *testing.T) { ctrl := gomock.NewController(t) @@ -662,3 +472,206 @@ func TestLoopProvider_MonitorSwap(t *testing.T) { }) } } + +// TestLoopProvider_LockFunctionality tests the submarine swap and reverse swap locking mechanisms +func TestLoopProvider_LockFunctionality(t *testing.T) { + + // Test submarine swap lock functionality + t.Run("SubmarineSwapLock", func(t *testing.T) { + l := &LoopProvider{} + + // Test acquiring lock for the first time + err := l.acquireSubmarineSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring submarine swap lock for the first time, got: %v", err) + } + + // Test that lock is active - should fail to acquire again + err = l.acquireSubmarineSwapLock() + if err == nil { + t.Error("Expected error when trying to acquire submarine swap lock while already locked") + } + + // Verify the error message contains rate limit info + if err != nil && !contains(err.Error(), "submarine swap is locked") { + t.Errorf("Expected rate limit error message, got: %v", err) + } + + // Test manual release + l.releaseSubmarineSwapLock() + + // Should be able to acquire again after release + err = l.acquireSubmarineSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring submarine swap lock after release, got: %v", err) + } + + // Clean up + l.releaseSubmarineSwapLock() + }) + + // Test reverse swap lock functionality + t.Run("ReverseSwapLock", func(t *testing.T) { + l := &LoopProvider{} + + // Test acquiring lock for the first time + err := l.acquireReverseSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring reverse swap lock for the first time, got: %v", err) + } + + // Test that lock is active - should fail to acquire again + err = l.acquireReverseSwapLock() + if err == nil { + t.Error("Expected error when trying to acquire reverse swap lock while already locked") + } + + // Verify the error message contains rate limit info + if err != nil && !contains(err.Error(), "reverse submarine swap is locked") { + t.Errorf("Expected rate limit error message, got: %v", err) + } + + // Test manual release + l.releaseReverseSwapLock() + + // Should be able to acquire again after release + err = l.acquireReverseSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring reverse swap lock after release, got: %v", err) + } + + // Clean up + l.releaseReverseSwapLock() + }) + + // Test that submarine and reverse swap locks are independent + t.Run("IndependentLocks", func(t *testing.T) { + l := &LoopProvider{} + + // Acquire submarine swap lock + err := l.acquireSubmarineSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring submarine swap lock, got: %v", err) + } + + // Should still be able to acquire reverse swap lock + err = l.acquireReverseSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring reverse swap lock while submarine swap is locked, got: %v", err) + } + + // Clean up + l.releaseSubmarineSwapLock() + l.releaseReverseSwapLock() + }) +} + +// TestLoopProvider_LockTimeout tests the automatic timeout functionality +func TestLoopProvider_LockTimeout(t *testing.T) { + // Set a very short timeout for this test + originalTimeout := viper.GetDuration("swapLockTimeout") + viper.Set("swapLockTimeout", "100ms") + defer viper.Set("swapLockTimeout", originalTimeout) + + t.Run("SubmarineSwapLockTimeout", func(t *testing.T) { + l := &LoopProvider{} + + // Acquire lock + err := l.acquireSubmarineSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring submarine swap lock, got: %v", err) + } + + // Immediately try to acquire again - should fail + err = l.acquireSubmarineSwapLock() + if err == nil { + t.Error("Expected error when trying to acquire submarine swap lock while already locked") + } + + // Wait for timeout + time.Sleep(150 * time.Millisecond) + + // Should be able to acquire again after timeout + err = l.acquireSubmarineSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring submarine swap lock after timeout, got: %v", err) + } + + // Clean up + l.releaseSubmarineSwapLock() + }) + + t.Run("ReverseSwapLockTimeout", func(t *testing.T) { + l := &LoopProvider{} + + // Acquire lock + err := l.acquireReverseSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring reverse swap lock, got: %v", err) + } + + // Immediately try to acquire again - should fail + err = l.acquireReverseSwapLock() + if err == nil { + t.Error("Expected error when trying to acquire reverse swap lock while already locked") + } + + // Wait for timeout + time.Sleep(150 * time.Millisecond) + + // Should be able to acquire again after timeout + err = l.acquireReverseSwapLock() + if err != nil { + t.Errorf("Expected no error when acquiring reverse swap lock after timeout, got: %v", err) + } + + // Clean up + l.releaseReverseSwapLock() + }) +} + +// TestLoopProvider_ConcurrentLockAccess tests thread safety of the lock mechanism +func TestLoopProvider_ConcurrentLockAccess(t *testing.T) { + l := &LoopProvider{} + + t.Run("ConcurrentSubmarineSwapLock", func(t *testing.T) { + successCount := 0 + errorCount := 0 + var mu sync.Mutex + var wg sync.WaitGroup + + // Try to acquire the lock from multiple goroutines + for i := 0; i < 10; i++ { + wg.Add(1) + go func() { + defer wg.Done() + err := l.acquireSubmarineSwapLock() + mu.Lock() + if err == nil { + successCount++ + } else { + errorCount++ + } + mu.Unlock() + }() + } + + wg.Wait() + + // Only one should succeed, the rest should fail + if successCount != 1 { + t.Errorf("Expected exactly 1 successful lock acquisition, got: %d", successCount) + } + if errorCount != 9 { + t.Errorf("Expected exactly 9 failed lock acquisitions, got: %d", errorCount) + } + + // Clean up + l.releaseSubmarineSwapLock() + }) +} + +// Helper function to check if a string contains a substring +func contains(s, substr string) bool { + return strings.Contains(s, substr) +} From 5780489a259bfd8dc2b937456c5bcb699f8957b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:01:03 +0200 Subject: [PATCH 07/12] feat: add swapLockTimeout flag to README for swap lock expiration --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d990f69..a91d0b0 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,7 @@ Flags: --nodeguardHost string Hostname:port to connect to nodeguard --pollingInterval string Interval to poll data (default "15s") --retriesBeforeBackoff int Number of retries before applying backoff to the swap (default 3) + --swapLockTimeout string Timeout for swap locks to automatically expire (default "30m") --swapPublicationOffset string Swap publication deadline offset (Maximum time for the swap provider to publish the swap) (default "60m") --sweepConfTarget string Target number of confirmations for swaps, this uses bitcoin core broken estimator, procced with caution (default "400") ``` @@ -63,6 +64,7 @@ All the flags can be set as environment variables, with the following format, ex - LOGLEVEL (optional) : Log level (default info) from: {trace, debug, info, warn, error, fatal, panic} - LOGFORMAT (optional) : Log format (default json) from: {json, text} - SWAPPUBLICATIONOFFSET (optional) : Swap publication deadline offset (Maximum time for the swap provider to publish the swap) (default 30m) +- SWAPLOCKTIMEOUT (optional) : Timeout for swap locks to automatically expire (default 30m) - RETRIESBEFOREBACKOFF (optional) : Number of retries before applying backoff to the swap (default: 3) - BACKOFFCOEFFICIENT (optional) : Coefficient to apply to the backoff (default: 0.95) - BACKOFFLIMIT (optional) : Limit coefficient of the backoff (default: 0.1) From b693d4cff84434f067b5abc8e6514d27b374397a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:04:05 +0200 Subject: [PATCH 08/12] Update nodeguard proto to newest ver --- nodeguard/nodeguard.pb.go | 1851 +++++++++++++++++++++----------- nodeguard/nodeguard_grpc.pb.go | 247 ++++- nodeguard/nodeguard_mock.go | 415 ++++++- rpc/nodeguard.proto | 186 +++- 4 files changed, 2000 insertions(+), 699 deletions(-) diff --git a/nodeguard/nodeguard.pb.go b/nodeguard/nodeguard.pb.go index 341f310..229c133 100644 --- a/nodeguard/nodeguard.pb.go +++ b/nodeguard/nodeguard.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.33.0 -// protoc v4.25.3 +// protoc-gen-go v1.34.2 +// protoc v5.29.3 // source: nodeguard.proto package nodeguard @@ -298,6 +298,7 @@ const ( WITHDRAWAL_REQUEST_STATUS_WITHDRAWAL_REJECTED WITHDRAWAL_REQUEST_STATUS = 3 WITHDRAWAL_REQUEST_STATUS_WITHDRAWAL_PENDING_CONFIRMATION WITHDRAWAL_REQUEST_STATUS = 4 WITHDRAWAL_REQUEST_STATUS_WITHDRAWAL_FAILED WITHDRAWAL_REQUEST_STATUS = 5 + WITHDRAWAL_REQUEST_STATUS_WITHDRAWAL_BUMPED WITHDRAWAL_REQUEST_STATUS = 6 ) // Enum value maps for WITHDRAWAL_REQUEST_STATUS. @@ -309,6 +310,7 @@ var ( 3: "WITHDRAWAL_REJECTED", 4: "WITHDRAWAL_PENDING_CONFIRMATION", 5: "WITHDRAWAL_FAILED", + 6: "WITHDRAWAL_BUMPED", } WITHDRAWAL_REQUEST_STATUS_value = map[string]int32{ "WITHDRAWAL_SETTLED": 0, @@ -317,6 +319,7 @@ var ( "WITHDRAWAL_REJECTED": 3, "WITHDRAWAL_PENDING_CONFIRMATION": 4, "WITHDRAWAL_FAILED": 5, + "WITHDRAWAL_BUMPED": 6, } ) @@ -614,6 +617,7 @@ type GetNewWalletAddressRequest struct { unknownFields protoimpl.UnknownFields WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` + Reserve bool `protobuf:"varint,2,opt,name=reserve,proto3" json:"reserve,omitempty"` // If set to true, the returned address will be marked as used } func (x *GetNewWalletAddressRequest) Reset() { @@ -655,6 +659,13 @@ func (x *GetNewWalletAddressRequest) GetWalletId() int32 { return 0 } +func (x *GetNewWalletAddressRequest) GetReserve() bool { + if x != nil { + return x.Reserve + } + return false +} + type GetNewWalletAddressResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -702,14 +713,74 @@ func (x *GetNewWalletAddressResponse) GetAddress() string { return "" } +type Destination struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // BTC address to send the funds to + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + // Amount in satoshis + AmountSats int64 `protobuf:"varint,2,opt,name=amount_sats,json=amountSats,proto3" json:"amount_sats,omitempty"` +} + +func (x *Destination) Reset() { + *x = Destination{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Destination) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Destination) ProtoMessage() {} + +func (x *Destination) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Destination.ProtoReflect.Descriptor instead. +func (*Destination) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{5} +} + +func (x *Destination) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +func (x *Destination) GetAmountSats() int64 { + if x != nil { + return x.AmountSats + } + return 0 +} + type RequestWithdrawalRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` - Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` + WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` + // Deprecated: Marked as deprecated in nodeguard.proto. + Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` // Amount in satoshis + // + // Deprecated: Marked as deprecated in nodeguard.proto. Amount int64 `protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"` Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` // in JSON format @@ -722,12 +793,16 @@ type RequestWithdrawalRequest struct { MempoolFeeRate FEES_TYPE `protobuf:"varint,8,opt,name=mempool_fee_rate,json=mempoolFeeRate,proto3,enum=nodeguard.FEES_TYPE" json:"mempool_fee_rate,omitempty"` // Fee rate in sat/vbyte CustomFeeRate *int32 `protobuf:"varint,9,opt,name=custom_fee_rate,json=customFeeRate,proto3,oneof" json:"custom_fee_rate,omitempty"` + // External reference id for the withdrawal request + ReferenceId *string `protobuf:"bytes,10,opt,name=reference_id,json=referenceId,proto3,oneof" json:"reference_id,omitempty"` + // Destinations for the withdrawal + Destinations []*Destination `protobuf:"bytes,11,rep,name=destinations,proto3" json:"destinations,omitempty"` } func (x *RequestWithdrawalRequest) Reset() { *x = RequestWithdrawalRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[5] + mi := &file_nodeguard_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -740,7 +815,7 @@ func (x *RequestWithdrawalRequest) String() string { func (*RequestWithdrawalRequest) ProtoMessage() {} func (x *RequestWithdrawalRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[5] + mi := &file_nodeguard_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -753,7 +828,7 @@ func (x *RequestWithdrawalRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RequestWithdrawalRequest.ProtoReflect.Descriptor instead. func (*RequestWithdrawalRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{5} + return file_nodeguard_proto_rawDescGZIP(), []int{6} } func (x *RequestWithdrawalRequest) GetWalletId() int32 { @@ -763,6 +838,7 @@ func (x *RequestWithdrawalRequest) GetWalletId() int32 { return 0 } +// Deprecated: Marked as deprecated in nodeguard.proto. func (x *RequestWithdrawalRequest) GetAddress() string { if x != nil { return x.Address @@ -770,6 +846,7 @@ func (x *RequestWithdrawalRequest) GetAddress() string { return "" } +// Deprecated: Marked as deprecated in nodeguard.proto. func (x *RequestWithdrawalRequest) GetAmount() int64 { if x != nil { return x.Amount @@ -819,6 +896,20 @@ func (x *RequestWithdrawalRequest) GetCustomFeeRate() int32 { return 0 } +func (x *RequestWithdrawalRequest) GetReferenceId() string { + if x != nil && x.ReferenceId != nil { + return *x.ReferenceId + } + return "" +} + +func (x *RequestWithdrawalRequest) GetDestinations() []*Destination { + if x != nil { + return x.Destinations + } + return nil +} + type RequestWithdrawalResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -833,7 +924,7 @@ type RequestWithdrawalResponse struct { func (x *RequestWithdrawalResponse) Reset() { *x = RequestWithdrawalResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[6] + mi := &file_nodeguard_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -846,7 +937,7 @@ func (x *RequestWithdrawalResponse) String() string { func (*RequestWithdrawalResponse) ProtoMessage() {} func (x *RequestWithdrawalResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[6] + mi := &file_nodeguard_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -859,7 +950,7 @@ func (x *RequestWithdrawalResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RequestWithdrawalResponse.ProtoReflect.Descriptor instead. func (*RequestWithdrawalResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{6} + return file_nodeguard_proto_rawDescGZIP(), []int{7} } func (x *RequestWithdrawalResponse) GetTxid() string { @@ -895,7 +986,7 @@ type GetAvailableWalletsRequest struct { func (x *GetAvailableWalletsRequest) Reset() { *x = GetAvailableWalletsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[7] + mi := &file_nodeguard_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -908,7 +999,7 @@ func (x *GetAvailableWalletsRequest) String() string { func (*GetAvailableWalletsRequest) ProtoMessage() {} func (x *GetAvailableWalletsRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[7] + mi := &file_nodeguard_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -921,7 +1012,7 @@ func (x *GetAvailableWalletsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetAvailableWalletsRequest.ProtoReflect.Descriptor instead. func (*GetAvailableWalletsRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{7} + return file_nodeguard_proto_rawDescGZIP(), []int{8} } func (x *GetAvailableWalletsRequest) GetId() []int32 { @@ -949,7 +1040,7 @@ type AccountKeySettings struct { func (x *AccountKeySettings) Reset() { *x = AccountKeySettings{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[8] + mi := &file_nodeguard_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -962,7 +1053,7 @@ func (x *AccountKeySettings) String() string { func (*AccountKeySettings) ProtoMessage() {} func (x *AccountKeySettings) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[8] + mi := &file_nodeguard_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -975,7 +1066,7 @@ func (x *AccountKeySettings) ProtoReflect() protoreflect.Message { // Deprecated: Use AccountKeySettings.ProtoReflect.Descriptor instead. func (*AccountKeySettings) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{8} + return file_nodeguard_proto_rawDescGZIP(), []int{9} } func (x *AccountKeySettings) GetXpub() string { @@ -1000,7 +1091,7 @@ type Wallet struct { func (x *Wallet) Reset() { *x = Wallet{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[9] + mi := &file_nodeguard_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1013,7 +1104,7 @@ func (x *Wallet) String() string { func (*Wallet) ProtoMessage() {} func (x *Wallet) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[9] + mi := &file_nodeguard_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1026,7 +1117,7 @@ func (x *Wallet) ProtoReflect() protoreflect.Message { // Deprecated: Use Wallet.ProtoReflect.Descriptor instead. func (*Wallet) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{9} + return file_nodeguard_proto_rawDescGZIP(), []int{10} } func (x *Wallet) GetId() int32 { @@ -1075,7 +1166,7 @@ type GetAvailableWalletsResponse struct { func (x *GetAvailableWalletsResponse) Reset() { *x = GetAvailableWalletsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[10] + mi := &file_nodeguard_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1088,7 +1179,7 @@ func (x *GetAvailableWalletsResponse) String() string { func (*GetAvailableWalletsResponse) ProtoMessage() {} func (x *GetAvailableWalletsResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[10] + mi := &file_nodeguard_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1101,7 +1192,7 @@ func (x *GetAvailableWalletsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetAvailableWalletsResponse.ProtoReflect.Descriptor instead. func (*GetAvailableWalletsResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{10} + return file_nodeguard_proto_rawDescGZIP(), []int{11} } func (x *GetAvailableWalletsResponse) GetWallets() []*Wallet { @@ -1111,6 +1202,110 @@ func (x *GetAvailableWalletsResponse) GetWallets() []*Wallet { return nil } +type GetWalletBalanceRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` +} + +func (x *GetWalletBalanceRequest) Reset() { + *x = GetWalletBalanceRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetWalletBalanceRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetWalletBalanceRequest) ProtoMessage() {} + +func (x *GetWalletBalanceRequest) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetWalletBalanceRequest.ProtoReflect.Descriptor instead. +func (*GetWalletBalanceRequest) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{12} +} + +func (x *GetWalletBalanceRequest) GetWalletId() int32 { + if x != nil { + return x.WalletId + } + return 0 +} + +type GetWalletBalanceResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Confirmed balance in satoshis + ConfirmedBalance int64 `protobuf:"varint,1,opt,name=confirmed_balance,json=confirmedBalance,proto3" json:"confirmed_balance,omitempty"` + // Unconfirmed balance in satoshis + UnconfirmedBalance int64 `protobuf:"varint,2,opt,name=unconfirmed_balance,json=unconfirmedBalance,proto3" json:"unconfirmed_balance,omitempty"` +} + +func (x *GetWalletBalanceResponse) Reset() { + *x = GetWalletBalanceResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetWalletBalanceResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetWalletBalanceResponse) ProtoMessage() {} + +func (x *GetWalletBalanceResponse) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetWalletBalanceResponse.ProtoReflect.Descriptor instead. +func (*GetWalletBalanceResponse) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{13} +} + +func (x *GetWalletBalanceResponse) GetConfirmedBalance() int64 { + if x != nil { + return x.ConfirmedBalance + } + return 0 +} + +func (x *GetWalletBalanceResponse) GetUnconfirmedBalance() int64 { + if x != nil { + return x.UnconfirmedBalance + } + return 0 +} + type AddNodeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1123,8 +1318,7 @@ type AddNodeRequest struct { ChannelAdminMacaroon string `protobuf:"bytes,4,opt,name=channel_admin_macaroon,json=channelAdminMacaroon,proto3" json:"channel_admin_macaroon,omitempty"` // Endpoint of the node in the form of host:port (gRPC) Endpoint string `protobuf:"bytes,5,opt,name=endpoint,proto3" json:"endpoint,omitempty"` - // Whether this node's hot wallet should be autoswept to the returning funds - // wallet + // Whether this node's hot wallet should be autoswept to the returning funds wallet AutosweepEnabled bool `protobuf:"varint,6,opt,name=autosweep_enabled,json=autosweepEnabled,proto3" json:"autosweep_enabled,omitempty"` // Wallet ID as stored in the NG's database for use in autosweep ops ReturningFundsWalletId int32 `protobuf:"varint,7,opt,name=returning_funds_wallet_id,json=returningFundsWalletId,proto3" json:"returning_funds_wallet_id,omitempty"` @@ -1133,7 +1327,7 @@ type AddNodeRequest struct { func (x *AddNodeRequest) Reset() { *x = AddNodeRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[11] + mi := &file_nodeguard_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1146,7 +1340,7 @@ func (x *AddNodeRequest) String() string { func (*AddNodeRequest) ProtoMessage() {} func (x *AddNodeRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[11] + mi := &file_nodeguard_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1159,7 +1353,7 @@ func (x *AddNodeRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddNodeRequest.ProtoReflect.Descriptor instead. func (*AddNodeRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{11} + return file_nodeguard_proto_rawDescGZIP(), []int{14} } func (x *AddNodeRequest) GetPubKey() string { @@ -1220,7 +1414,7 @@ type AddNodeResponse struct { func (x *AddNodeResponse) Reset() { *x = AddNodeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[12] + mi := &file_nodeguard_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1233,7 +1427,7 @@ func (x *AddNodeResponse) String() string { func (*AddNodeResponse) ProtoMessage() {} func (x *AddNodeResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[12] + mi := &file_nodeguard_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1246,7 +1440,7 @@ func (x *AddNodeResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddNodeResponse.ProtoReflect.Descriptor instead. func (*AddNodeResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{12} + return file_nodeguard_proto_rawDescGZIP(), []int{15} } type Node struct { @@ -1261,8 +1455,7 @@ type Node struct { Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` // Endpoint of the node in the form of host:port (gRPC) Endpoint string `protobuf:"bytes,5,opt,name=endpoint,proto3" json:"endpoint,omitempty"` - // Whether this node's hot wallet should be autoswept to the returning funds - // wallet + // Whether this node's hot wallet should be autoswept to the returning funds wallet AutosweepEnabled bool `protobuf:"varint,6,opt,name=autosweep_enabled,json=autosweepEnabled,proto3" json:"autosweep_enabled,omitempty"` // Wallet ID as stored in the NG's database for use in autosweep ops ReturningFundsWalletId int32 `protobuf:"varint,7,opt,name=returning_funds_wallet_id,json=returningFundsWalletId,proto3" json:"returning_funds_wallet_id,omitempty"` @@ -1271,7 +1464,7 @@ type Node struct { func (x *Node) Reset() { *x = Node{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[13] + mi := &file_nodeguard_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1284,7 +1477,7 @@ func (x *Node) String() string { func (*Node) ProtoMessage() {} func (x *Node) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[13] + mi := &file_nodeguard_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1297,7 +1490,7 @@ func (x *Node) ProtoReflect() protoreflect.Message { // Deprecated: Use Node.ProtoReflect.Descriptor instead. func (*Node) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{13} + return file_nodeguard_proto_rawDescGZIP(), []int{16} } func (x *Node) GetId() int32 { @@ -1361,7 +1554,7 @@ type GetNodesRequest struct { func (x *GetNodesRequest) Reset() { *x = GetNodesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[14] + mi := &file_nodeguard_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1374,7 +1567,7 @@ func (x *GetNodesRequest) String() string { func (*GetNodesRequest) ProtoMessage() {} func (x *GetNodesRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[14] + mi := &file_nodeguard_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1387,7 +1580,7 @@ func (x *GetNodesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNodesRequest.ProtoReflect.Descriptor instead. func (*GetNodesRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{14} + return file_nodeguard_proto_rawDescGZIP(), []int{17} } func (x *GetNodesRequest) GetIncludeUnmanaged() bool { @@ -1408,7 +1601,7 @@ type GetNodesResponse struct { func (x *GetNodesResponse) Reset() { *x = GetNodesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[15] + mi := &file_nodeguard_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1421,7 +1614,7 @@ func (x *GetNodesResponse) String() string { func (*GetNodesResponse) ProtoMessage() {} func (x *GetNodesResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[15] + mi := &file_nodeguard_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1434,7 +1627,7 @@ func (x *GetNodesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNodesResponse.ProtoReflect.Descriptor instead. func (*GetNodesResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{15} + return file_nodeguard_proto_rawDescGZIP(), []int{18} } func (x *GetNodesResponse) GetNodes() []*Node { @@ -1472,7 +1665,7 @@ type OpenChannelRequest struct { func (x *OpenChannelRequest) Reset() { *x = OpenChannelRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[16] + mi := &file_nodeguard_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1485,7 +1678,7 @@ func (x *OpenChannelRequest) String() string { func (*OpenChannelRequest) ProtoMessage() {} func (x *OpenChannelRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[16] + mi := &file_nodeguard_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1498,7 +1691,7 @@ func (x *OpenChannelRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use OpenChannelRequest.ProtoReflect.Descriptor instead. func (*OpenChannelRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{16} + return file_nodeguard_proto_rawDescGZIP(), []int{19} } func (x *OpenChannelRequest) GetSourcePubKey() string { @@ -1564,8 +1757,7 @@ func (x *OpenChannelRequest) GetCustomFeeRate() int32 { return 0 } -// A successful response returns the channel_operation_request_id but it does -// NOT indicate that the channel has been open, external monitoring is required +// A successful response returns the channel_operation_request_id but it does NOT indicate that the channel has been open, external monitoring is required type OpenChannelResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1577,7 +1769,7 @@ type OpenChannelResponse struct { func (x *OpenChannelResponse) Reset() { *x = OpenChannelResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[17] + mi := &file_nodeguard_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1590,7 +1782,7 @@ func (x *OpenChannelResponse) String() string { func (*OpenChannelResponse) ProtoMessage() {} func (x *OpenChannelResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[17] + mi := &file_nodeguard_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1603,7 +1795,7 @@ func (x *OpenChannelResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OpenChannelResponse.ProtoReflect.Descriptor instead. func (*OpenChannelResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{17} + return file_nodeguard_proto_rawDescGZIP(), []int{20} } func (x *OpenChannelResponse) GetChannelOperationRequestId() int32 { @@ -1627,7 +1819,7 @@ type CloseChannelRequest struct { func (x *CloseChannelRequest) Reset() { *x = CloseChannelRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[18] + mi := &file_nodeguard_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1640,7 +1832,7 @@ func (x *CloseChannelRequest) String() string { func (*CloseChannelRequest) ProtoMessage() {} func (x *CloseChannelRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[18] + mi := &file_nodeguard_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1653,7 +1845,7 @@ func (x *CloseChannelRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CloseChannelRequest.ProtoReflect.Descriptor instead. func (*CloseChannelRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{18} + return file_nodeguard_proto_rawDescGZIP(), []int{21} } func (x *CloseChannelRequest) GetChannelId() uint64 { @@ -1670,8 +1862,7 @@ func (x *CloseChannelRequest) GetForce() bool { return false } -// A successful response is an empty message and does NOT indicate that the -// channel has been closed, external monitoring is required +// A successful response is an empty message and does NOT indicate that the channel has been closed, external monitoring is required type CloseChannelResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1681,7 +1872,7 @@ type CloseChannelResponse struct { func (x *CloseChannelResponse) Reset() { *x = CloseChannelResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[19] + mi := &file_nodeguard_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1694,7 +1885,7 @@ func (x *CloseChannelResponse) String() string { func (*CloseChannelResponse) ProtoMessage() {} func (x *CloseChannelResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[19] + mi := &file_nodeguard_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1707,7 +1898,7 @@ func (x *CloseChannelResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CloseChannelResponse.ProtoReflect.Descriptor instead. func (*CloseChannelResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{19} + return file_nodeguard_proto_rawDescGZIP(), []int{22} } type GetChannelOperationRequestRequest struct { @@ -1722,7 +1913,7 @@ type GetChannelOperationRequestRequest struct { func (x *GetChannelOperationRequestRequest) Reset() { *x = GetChannelOperationRequestRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[20] + mi := &file_nodeguard_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1735,7 +1926,7 @@ func (x *GetChannelOperationRequestRequest) String() string { func (*GetChannelOperationRequestRequest) ProtoMessage() {} func (x *GetChannelOperationRequestRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[20] + mi := &file_nodeguard_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1748,7 +1939,7 @@ func (x *GetChannelOperationRequestRequest) ProtoReflect() protoreflect.Message // Deprecated: Use GetChannelOperationRequestRequest.ProtoReflect.Descriptor instead. func (*GetChannelOperationRequestRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{20} + return file_nodeguard_proto_rawDescGZIP(), []int{23} } func (x *GetChannelOperationRequestRequest) GetChannelOperationRequestId() int32 { @@ -1781,7 +1972,7 @@ type GetChannelOperationRequestResponse struct { func (x *GetChannelOperationRequestResponse) Reset() { *x = GetChannelOperationRequestResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[21] + mi := &file_nodeguard_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1794,7 +1985,7 @@ func (x *GetChannelOperationRequestResponse) String() string { func (*GetChannelOperationRequestResponse) ProtoMessage() {} func (x *GetChannelOperationRequestResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[21] + mi := &file_nodeguard_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1807,7 +1998,7 @@ func (x *GetChannelOperationRequestResponse) ProtoReflect() protoreflect.Message // Deprecated: Use GetChannelOperationRequestResponse.ProtoReflect.Descriptor instead. func (*GetChannelOperationRequestResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{21} + return file_nodeguard_proto_rawDescGZIP(), []int{24} } func (x *GetChannelOperationRequestResponse) GetSatsAmount() int64 { @@ -1927,7 +2118,7 @@ type AddLiquidityRuleRequest struct { func (x *AddLiquidityRuleRequest) Reset() { *x = AddLiquidityRuleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[22] + mi := &file_nodeguard_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1940,7 +2131,7 @@ func (x *AddLiquidityRuleRequest) String() string { func (*AddLiquidityRuleRequest) ProtoMessage() {} func (x *AddLiquidityRuleRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[22] + mi := &file_nodeguard_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1953,7 +2144,7 @@ func (x *AddLiquidityRuleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddLiquidityRuleRequest.ProtoReflect.Descriptor instead. func (*AddLiquidityRuleRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{22} + return file_nodeguard_proto_rawDescGZIP(), []int{25} } func (x *AddLiquidityRuleRequest) GetChannelId() int32 { @@ -2024,7 +2215,7 @@ type AddLiquidityRuleResponse struct { func (x *AddLiquidityRuleResponse) Reset() { *x = AddLiquidityRuleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[23] + mi := &file_nodeguard_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2037,7 +2228,7 @@ func (x *AddLiquidityRuleResponse) String() string { func (*AddLiquidityRuleResponse) ProtoMessage() {} func (x *AddLiquidityRuleResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[23] + mi := &file_nodeguard_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2050,7 +2241,7 @@ func (x *AddLiquidityRuleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddLiquidityRuleResponse.ProtoReflect.Descriptor instead. func (*AddLiquidityRuleResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{23} + return file_nodeguard_proto_rawDescGZIP(), []int{26} } func (x *AddLiquidityRuleResponse) GetRuleId() int32 { @@ -2060,28 +2251,65 @@ func (x *AddLiquidityRuleResponse) GetRuleId() int32 { return 0 } -type GetAvailableUtxosRequest struct { +type GetUtxosRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields +} - // Wallet ID as stored in the NG's database - WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` +func (x *GetUtxosRequest) Reset() { + *x = GetUtxosRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetUtxosRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetUtxosRequest) ProtoMessage() {} + +func (x *GetUtxosRequest) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetUtxosRequest.ProtoReflect.Descriptor instead. +func (*GetUtxosRequest) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{27} +} + +type GetAvailableUtxosRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Wallet ID as stored in the NG's database + WalletId int32 `protobuf:"varint,1,opt,name=wallet_id,json=walletId,proto3" json:"wallet_id,omitempty"` // How to order the UTXOs for automatic selection Strategy *COIN_SELECTION_STRATEGY `protobuf:"varint,2,opt,name=strategy,proto3,enum=nodeguard.COIN_SELECTION_STRATEGY,oneof" json:"strategy,omitempty"` // How many UTXOs are allowed to be used for the withdrawal Limit *int32 `protobuf:"varint,3,opt,name=limit,proto3,oneof" json:"limit,omitempty"` // Amount in satoshis Amount *int64 `protobuf:"varint,4,opt,name=amount,proto3,oneof" json:"amount,omitempty"` - // Order the UTXOs by closest to the amount specified if the strategy selected - // is CLOSEST_TO_TARGET_FIRST + // Order the UTXOs by closest to the amount specified if the strategy selected is CLOSEST_TO_TARGET_FIRST ClosestTo *int64 `protobuf:"varint,5,opt,name=closestTo,proto3,oneof" json:"closestTo,omitempty"` } func (x *GetAvailableUtxosRequest) Reset() { *x = GetAvailableUtxosRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[24] + mi := &file_nodeguard_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2094,7 +2322,7 @@ func (x *GetAvailableUtxosRequest) String() string { func (*GetAvailableUtxosRequest) ProtoMessage() {} func (x *GetAvailableUtxosRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[24] + mi := &file_nodeguard_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2107,7 +2335,7 @@ func (x *GetAvailableUtxosRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetAvailableUtxosRequest.ProtoReflect.Descriptor instead. func (*GetAvailableUtxosRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{24} + return file_nodeguard_proto_rawDescGZIP(), []int{28} } func (x *GetAvailableUtxosRequest) GetWalletId() int32 { @@ -2152,12 +2380,13 @@ type Utxo struct { Amount int64 `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"` Outpoint string `protobuf:"bytes,2,opt,name=outpoint,proto3" json:"outpoint,omitempty"` + Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` } func (x *Utxo) Reset() { *x = Utxo{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[25] + mi := &file_nodeguard_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2170,7 +2399,7 @@ func (x *Utxo) String() string { func (*Utxo) ProtoMessage() {} func (x *Utxo) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[25] + mi := &file_nodeguard_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2183,7 +2412,7 @@ func (x *Utxo) ProtoReflect() protoreflect.Message { // Deprecated: Use Utxo.ProtoReflect.Descriptor instead. func (*Utxo) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{25} + return file_nodeguard_proto_rawDescGZIP(), []int{29} } func (x *Utxo) GetAmount() int64 { @@ -2200,7 +2429,14 @@ func (x *Utxo) GetOutpoint() string { return "" } -type GetAvailableUtxosResponse struct { +func (x *Utxo) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +type GetUtxosResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -2209,23 +2445,23 @@ type GetAvailableUtxosResponse struct { Unconfirmed []*Utxo `protobuf:"bytes,2,rep,name=unconfirmed,proto3" json:"unconfirmed,omitempty"` } -func (x *GetAvailableUtxosResponse) Reset() { - *x = GetAvailableUtxosResponse{} +func (x *GetUtxosResponse) Reset() { + *x = GetUtxosResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[26] + mi := &file_nodeguard_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *GetAvailableUtxosResponse) String() string { +func (x *GetUtxosResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetAvailableUtxosResponse) ProtoMessage() {} +func (*GetUtxosResponse) ProtoMessage() {} -func (x *GetAvailableUtxosResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[26] +func (x *GetUtxosResponse) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2236,19 +2472,19 @@ func (x *GetAvailableUtxosResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetAvailableUtxosResponse.ProtoReflect.Descriptor instead. -func (*GetAvailableUtxosResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{26} +// Deprecated: Use GetUtxosResponse.ProtoReflect.Descriptor instead. +func (*GetUtxosResponse) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{30} } -func (x *GetAvailableUtxosResponse) GetConfirmed() []*Utxo { +func (x *GetUtxosResponse) GetConfirmed() []*Utxo { if x != nil { return x.Confirmed } return nil } -func (x *GetAvailableUtxosResponse) GetUnconfirmed() []*Utxo { +func (x *GetUtxosResponse) GetUnconfirmed() []*Utxo { if x != nil { return x.Unconfirmed } @@ -2266,7 +2502,7 @@ type GetWithdrawalsRequestStatusRequest struct { func (x *GetWithdrawalsRequestStatusRequest) Reset() { *x = GetWithdrawalsRequestStatusRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[27] + mi := &file_nodeguard_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2279,7 +2515,7 @@ func (x *GetWithdrawalsRequestStatusRequest) String() string { func (*GetWithdrawalsRequestStatusRequest) ProtoMessage() {} func (x *GetWithdrawalsRequestStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[27] + mi := &file_nodeguard_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2292,7 +2528,7 @@ func (x *GetWithdrawalsRequestStatusRequest) ProtoReflect() protoreflect.Message // Deprecated: Use GetWithdrawalsRequestStatusRequest.ProtoReflect.Descriptor instead. func (*GetWithdrawalsRequestStatusRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{27} + return file_nodeguard_proto_rawDescGZIP(), []int{31} } func (x *GetWithdrawalsRequestStatusRequest) GetRequestIds() []int32 { @@ -2310,12 +2546,15 @@ type WithdrawalRequest struct { RequestId int32 `protobuf:"varint,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Status WITHDRAWAL_REQUEST_STATUS `protobuf:"varint,2,opt,name=status,proto3,enum=nodeguard.WITHDRAWAL_REQUEST_STATUS" json:"status,omitempty"` RejectOrCancelReason *string `protobuf:"bytes,3,opt,name=reject_or_cancel_reason,json=rejectOrCancelReason,proto3,oneof" json:"reject_or_cancel_reason,omitempty"` + ReferenceId *string `protobuf:"bytes,4,opt,name=reference_id,json=referenceId,proto3,oneof" json:"reference_id,omitempty"` + Confirmations uint64 `protobuf:"varint,5,opt,name=confirmations,proto3" json:"confirmations,omitempty"` + TxId *string `protobuf:"bytes,6,opt,name=tx_id,json=txId,proto3,oneof" json:"tx_id,omitempty"` } func (x *WithdrawalRequest) Reset() { *x = WithdrawalRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[28] + mi := &file_nodeguard_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2328,7 +2567,7 @@ func (x *WithdrawalRequest) String() string { func (*WithdrawalRequest) ProtoMessage() {} func (x *WithdrawalRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[28] + mi := &file_nodeguard_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2341,7 +2580,7 @@ func (x *WithdrawalRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use WithdrawalRequest.ProtoReflect.Descriptor instead. func (*WithdrawalRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{28} + return file_nodeguard_proto_rawDescGZIP(), []int{32} } func (x *WithdrawalRequest) GetRequestId() int32 { @@ -2365,6 +2604,27 @@ func (x *WithdrawalRequest) GetRejectOrCancelReason() string { return "" } +func (x *WithdrawalRequest) GetReferenceId() string { + if x != nil && x.ReferenceId != nil { + return *x.ReferenceId + } + return "" +} + +func (x *WithdrawalRequest) GetConfirmations() uint64 { + if x != nil { + return x.Confirmations + } + return 0 +} + +func (x *WithdrawalRequest) GetTxId() string { + if x != nil && x.TxId != nil { + return *x.TxId + } + return "" +} + type GetWithdrawalsRequestStatusResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2376,7 +2636,7 @@ type GetWithdrawalsRequestStatusResponse struct { func (x *GetWithdrawalsRequestStatusResponse) Reset() { *x = GetWithdrawalsRequestStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[29] + mi := &file_nodeguard_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2389,7 +2649,7 @@ func (x *GetWithdrawalsRequestStatusResponse) String() string { func (*GetWithdrawalsRequestStatusResponse) ProtoMessage() {} func (x *GetWithdrawalsRequestStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[29] + mi := &file_nodeguard_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2402,7 +2662,7 @@ func (x *GetWithdrawalsRequestStatusResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use GetWithdrawalsRequestStatusResponse.ProtoReflect.Descriptor instead. func (*GetWithdrawalsRequestStatusResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{29} + return file_nodeguard_proto_rawDescGZIP(), []int{33} } func (x *GetWithdrawalsRequestStatusResponse) GetWithdrawalRequests() []*WithdrawalRequest { @@ -2412,6 +2672,53 @@ func (x *GetWithdrawalsRequestStatusResponse) GetWithdrawalRequests() []*Withdra return nil } +type GetWithdrawalsRequestStatusByReferenceIdsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ReferenceIds []string `protobuf:"bytes,1,rep,name=reference_ids,json=referenceIds,proto3" json:"reference_ids,omitempty"` +} + +func (x *GetWithdrawalsRequestStatusByReferenceIdsRequest) Reset() { + *x = GetWithdrawalsRequestStatusByReferenceIdsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetWithdrawalsRequestStatusByReferenceIdsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetWithdrawalsRequestStatusByReferenceIdsRequest) ProtoMessage() {} + +func (x *GetWithdrawalsRequestStatusByReferenceIdsRequest) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetWithdrawalsRequestStatusByReferenceIdsRequest.ProtoReflect.Descriptor instead. +func (*GetWithdrawalsRequestStatusByReferenceIdsRequest) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{34} +} + +func (x *GetWithdrawalsRequestStatusByReferenceIdsRequest) GetReferenceIds() []string { + if x != nil { + return x.ReferenceIds + } + return nil +} + type GetChannelRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2424,7 +2731,7 @@ type GetChannelRequest struct { func (x *GetChannelRequest) Reset() { *x = GetChannelRequest{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[30] + mi := &file_nodeguard_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2437,7 +2744,7 @@ func (x *GetChannelRequest) String() string { func (*GetChannelRequest) ProtoMessage() {} func (x *GetChannelRequest) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[30] + mi := &file_nodeguard_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2450,7 +2757,7 @@ func (x *GetChannelRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetChannelRequest.ProtoReflect.Descriptor instead. func (*GetChannelRequest) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{30} + return file_nodeguard_proto_rawDescGZIP(), []int{35} } func (x *GetChannelRequest) GetChannelId() int32 { @@ -2479,7 +2786,7 @@ type GetChannelResponse struct { func (x *GetChannelResponse) Reset() { *x = GetChannelResponse{} if protoimpl.UnsafeEnabled { - mi := &file_nodeguard_proto_msgTypes[31] + mi := &file_nodeguard_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2492,7 +2799,7 @@ func (x *GetChannelResponse) String() string { func (*GetChannelResponse) ProtoMessage() {} func (x *GetChannelResponse) ProtoReflect() protoreflect.Message { - mi := &file_nodeguard_proto_msgTypes[31] + mi := &file_nodeguard_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2505,7 +2812,7 @@ func (x *GetChannelResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetChannelResponse.ProtoReflect.Descriptor instead. func (*GetChannelResponse) Descriptor() ([]byte, []int) { - return file_nodeguard_proto_rawDescGZIP(), []int{31} + return file_nodeguard_proto_rawDescGZIP(), []int{36} } func (x *GetChannelResponse) GetFundingTx() string { @@ -2571,6 +2878,154 @@ func (x *GetChannelResponse) GetIsPrivate() bool { return false } +type Tag struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + UtxoOutpoint string `protobuf:"bytes,3,opt,name=utxo_outpoint,json=utxoOutpoint,proto3" json:"utxo_outpoint,omitempty"` // Format txid-outputIndex +} + +func (x *Tag) Reset() { + *x = Tag{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Tag) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Tag) ProtoMessage() {} + +func (x *Tag) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Tag.ProtoReflect.Descriptor instead. +func (*Tag) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{37} +} + +func (x *Tag) GetKey() string { + if x != nil { + return x.Key + } + return "" +} + +func (x *Tag) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *Tag) GetUtxoOutpoint() string { + if x != nil { + return x.UtxoOutpoint + } + return "" +} + +type AddTagsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tags []*Tag `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags,omitempty"` +} + +func (x *AddTagsRequest) Reset() { + *x = AddTagsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddTagsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddTagsRequest) ProtoMessage() {} + +func (x *AddTagsRequest) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AddTagsRequest.ProtoReflect.Descriptor instead. +func (*AddTagsRequest) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{38} +} + +func (x *AddTagsRequest) GetTags() []*Tag { + if x != nil { + return x.Tags + } + return nil +} + +type AddTagsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *AddTagsResponse) Reset() { + *x = AddTagsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_nodeguard_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddTagsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddTagsResponse) ProtoMessage() {} + +func (x *AddTagsResponse) ProtoReflect() protoreflect.Message { + mi := &file_nodeguard_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AddTagsResponse.ProtoReflect.Descriptor instead. +func (*AddTagsResponse) Descriptor() ([]byte, []int) { + return file_nodeguard_proto_rawDescGZIP(), []int{39} +} + var File_nodeguard_proto protoreflect.FileDescriptor var file_nodeguard_proto_rawDesc = []byte{ @@ -2619,26 +3074,152 @@ var file_nodeguard_proto_rawDesc = []byte{ 0x6b, 0x65, 0x79, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x39, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x4e, 0x65, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x53, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x49, 0x64, 0x22, 0x37, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, - 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x80, 0x03, 0x0a, 0x18, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, - 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, - 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x37, 0x0a, 0x1b, + 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x48, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, + 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x61, 0x74, 0x73, 0x22, + 0xfd, 0x03, 0x0a, 0x18, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, + 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, 0x73, + 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x74, 0x78, 0x6f, 0x73, + 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x3e, 0x0a, 0x10, 0x6d, 0x65, 0x6d, + 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, + 0x46, 0x45, 0x45, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x52, 0x0e, 0x6d, 0x65, 0x6d, 0x70, 0x6f, + 0x6f, 0x6c, 0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x0f, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x46, 0x65, 0x65, 0x52, + 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, + 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3a, + 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0b, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x65, + 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0f, + 0x0a, 0x0d, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x22, + 0x72, 0x0a, 0x19, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, + 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x68, 0x6f, 0x74, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x48, 0x6f, 0x74, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x49, 0x64, 0x22, 0x7a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x3c, 0x0a, 0x0b, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x72, 0x64, 0x2e, 0x57, 0x41, 0x4c, 0x4c, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x48, 0x00, + 0x52, 0x0a, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, + 0x0e, 0x0a, 0x0c, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x28, 0x0a, 0x12, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x74, + 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x70, 0x75, 0x62, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x78, 0x70, 0x75, 0x62, 0x22, 0xbf, 0x01, 0x0a, 0x06, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x68, + 0x6f, 0x74, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x69, 0x73, 0x48, 0x6f, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x4f, 0x0a, 0x14, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4b, 0x65, + 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x12, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22, 0x4a, 0x0a, 0x1b, 0x47, + 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x77, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6e, 0x6f, + 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x07, + 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x36, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x22, + 0x78, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, + 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x75, 0x6e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x99, 0x02, 0x0a, 0x0e, 0x41, 0x64, + 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, + 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x63, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x61, 0x63, + 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, + 0x11, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, + 0x65, 0x65, 0x70, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x77, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x6c, + 0x6c, 0x65, 0x74, 0x49, 0x64, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe9, 0x01, 0x0a, 0x04, 0x4e, 0x6f, 0x64, + 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, + 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, 0x65, + 0x65, 0x70, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x77, 0x61, 0x6c, + 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x6c, 0x6c, + 0x65, 0x74, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x64, 0x65, 0x5f, 0x75, 0x6e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x55, 0x6e, 0x6d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x64, 0x22, 0x39, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, + 0x61, 0x72, 0x64, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, + 0x8c, 0x03, 0x0a, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x13, + 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x75, 0x62, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, + 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, + 0x73, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x73, 0x61, 0x74, 0x73, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x75, @@ -2650,287 +3231,212 @@ var file_nodeguard_proto_rawDesc = []byte{ 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x22, 0x72, - 0x0a, 0x19, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, - 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, - 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, - 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x68, 0x6f, 0x74, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x48, 0x6f, 0x74, 0x57, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x49, 0x64, 0x22, 0x7a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, - 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, - 0x12, 0x3c, 0x0a, 0x0b, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, - 0x64, 0x2e, 0x57, 0x41, 0x4c, 0x4c, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x48, 0x00, 0x52, - 0x0a, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0e, - 0x0a, 0x0c, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x28, - 0x0a, 0x12, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x74, 0x74, - 0x69, 0x6e, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x70, 0x75, 0x62, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x78, 0x70, 0x75, 0x62, 0x22, 0xbf, 0x01, 0x0a, 0x06, 0x57, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x68, 0x6f, - 0x74, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x69, 0x73, 0x48, 0x6f, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x4f, 0x0a, 0x14, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, - 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, - 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4b, 0x65, 0x79, - 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x12, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22, 0x4a, 0x0a, 0x1b, 0x47, 0x65, - 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x77, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6e, 0x6f, 0x64, - 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x07, 0x77, - 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x99, 0x02, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, - 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, - 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x12, 0x1a, - 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x75, - 0x74, 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, - 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x49, 0x64, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe9, 0x01, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, - 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x75, 0x74, - 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x77, 0x65, 0x65, 0x70, 0x45, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, - 0x64, 0x22, 0x3e, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, - 0x75, 0x6e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x55, 0x6e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x64, 0x22, 0x39, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x8c, 0x03, 0x0a, - 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x75, - 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x65, 0x73, - 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, 0x73, 0x5f, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x61, 0x74, - 0x73, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x65, 0x73, - 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x74, 0x78, 0x6f, - 0x73, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x3e, 0x0a, 0x10, 0x6d, 0x65, - 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, - 0x2e, 0x46, 0x45, 0x45, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x52, 0x0e, 0x6d, 0x65, 0x6d, 0x70, - 0x6f, 0x6f, 0x6c, 0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x0f, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x46, 0x65, 0x65, - 0x52, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x22, 0x56, 0x0a, 0x13, 0x4f, - 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x49, 0x64, 0x22, 0x4a, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, - 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, - 0x16, 0x0a, 0x14, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x64, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x1c, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xfb, 0x04, - 0x0a, 0x22, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, 0x73, 0x5f, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x73, 0x41, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, - 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x45, 0x52, - 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x48, 0x00, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, - 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x45, 0x52, - 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x48, 0x01, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x05, 0x74, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, - 0x2a, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x66, - 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x48, 0x04, 0x52, - 0x07, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x77, - 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x48, 0x05, - 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, - 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x6f, 0x64, - 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x48, 0x06, 0x52, 0x0a, 0x64, 0x65, 0x73, - 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x48, 0x07, - 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, - 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x42, - 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x74, 0x78, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, - 0x0f, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0c, 0x0a, - 0x0a, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, - 0x64, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, - 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22, 0xaf, 0x04, 0x0a, 0x17, - 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x22, 0x56, + 0x0a, 0x13, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x4a, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, + 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x64, 0x0a, 0x21, 0x47, 0x65, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x3f, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, + 0x22, 0xfb, 0x04, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, 0x73, 0x5f, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x61, + 0x74, 0x73, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4f, + 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x48, + 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4f, + 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x48, 0x01, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x05, 0x74, 0x78, 0x5f, 0x69, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x88, + 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x0d, 0x63, 0x6c, + 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1e, + 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, + 0x48, 0x04, 0x52, 0x07, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, + 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x05, 0x48, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, + 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x6e, + 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x48, 0x06, 0x52, 0x0a, + 0x64, 0x65, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, + 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x03, 0x48, 0x07, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, + 0x01, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, + 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, + 0x49, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x07, 0x0a, + 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x74, 0x78, 0x5f, 0x69, 0x64, + 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, + 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x0f, + 0x0a, 0x0d, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, + 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22, 0xaf, + 0x04, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, + 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x77, 0x61, + 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x73, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, + 0x37, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, + 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, + 0x6d, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x14, 0x6d, 0x69, 0x6e, 0x69, + 0x6d, 0x75, 0x6d, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x48, 0x02, 0x52, + 0x0f, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x1b, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, + 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x72, 0x75, + 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x73, 0x52, 0x65, 0x76, 0x65, + 0x72, 0x73, 0x65, 0x53, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x75, 0x6c, + 0x65, 0x12, 0x35, 0x0a, 0x14, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, + 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x03, 0x52, 0x12, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x53, 0x77, 0x61, 0x70, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x16, 0x72, 0x65, 0x76, 0x65, + 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x04, 0x52, 0x13, 0x72, 0x65, 0x76, 0x65, + 0x72, 0x73, 0x65, 0x53, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x88, + 0x01, 0x01, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x19, 0x0a, 0x17, + 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, + 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x62, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x17, 0x0a, 0x15, + 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, + 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, + 0x22, 0x33, 0x0a, 0x18, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, + 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, + 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, + 0x75, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x11, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x55, 0x74, 0x78, 0x6f, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x87, 0x02, 0x0a, 0x18, 0x47, 0x65, 0x74, + 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, + 0x49, 0x64, 0x12, 0x43, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x2e, 0x43, 0x4f, 0x49, 0x4e, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x48, 0x00, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, + 0x74, 0x65, 0x67, 0x79, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, + 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x03, 0x48, 0x02, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, + 0x21, 0x0a, 0x09, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x03, 0x48, 0x03, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x88, + 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x42, + 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x73, 0x74, + 0x54, 0x6f, 0x22, 0x54, 0x0a, 0x04, 0x55, 0x74, 0x78, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x18, + 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x74, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x55, + 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x09, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x55, 0x74, 0x78, 0x6f, + 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x0b, 0x75, + 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x55, 0x74, 0x78, + 0x6f, 0x52, 0x0b, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x22, 0x45, + 0x0a, 0x22, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x49, 0x64, 0x73, 0x22, 0xcb, 0x02, 0x0a, 0x11, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x41, + 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x0a, 0x17, 0x72, 0x65, 0x6a, 0x65, + 0x63, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x6a, + 0x65, 0x63, 0x74, 0x4f, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, + 0x6e, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x72, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x05, 0x74, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x48, 0x02, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x1a, 0x0a, 0x18, + 0x5f, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x74, 0x78, + 0x5f, 0x69, 0x64, 0x22, 0x74, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x13, 0x77, 0x69, + 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, + 0x61, 0x72, 0x64, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x57, 0x0a, 0x30, 0x47, 0x65, 0x74, + 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, + 0x0d, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, + 0x64, 0x73, 0x22, 0x32, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, - 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, - 0x73, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x15, - 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x13, 0x6d, - 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, - 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x14, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, - 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x48, 0x02, 0x52, 0x0f, 0x72, 0x65, - 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x88, 0x01, 0x01, - 0x12, 0x3c, 0x0a, 0x1b, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, - 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x73, 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, - 0x53, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x35, - 0x0a, 0x14, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x12, - 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x53, 0x77, 0x61, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x16, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, - 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x04, 0x52, 0x13, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, - 0x53, 0x77, 0x61, 0x70, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, - 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x69, - 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x72, 0x65, - 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x73, - 0x77, 0x61, 0x70, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x33, 0x0a, - 0x18, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x75, 0x6c, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x75, 0x6c, 0x65, - 0x49, 0x64, 0x22, 0x87, 0x02, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, - 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x08, - 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, - 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x4f, 0x49, 0x4e, 0x5f, - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, - 0x47, 0x59, 0x48, 0x00, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x88, 0x01, - 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x48, 0x01, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x48, 0x02, 0x52, 0x06, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x63, 0x6c, 0x6f, - 0x73, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x48, 0x03, 0x52, 0x09, - 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, - 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0c, - 0x0a, 0x0a, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x22, 0x3a, 0x0a, 0x04, - 0x55, 0x74, 0x78, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, - 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x7d, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, - 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, - 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, - 0x75, 0x61, 0x72, 0x64, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x72, 0x6d, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x0b, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, - 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x52, 0x0b, 0x75, 0x6e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x22, 0x45, 0x0a, 0x22, 0x47, 0x65, 0x74, 0x57, 0x69, - 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, - 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x73, 0x22, 0xc8, - 0x01, 0x0a, 0x11, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, - 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, - 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x12, 0x3a, 0x0a, 0x17, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x4f, 0x72, 0x43, 0x61, - 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x1a, 0x0a, - 0x18, 0x5f, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x74, 0x0a, 0x23, 0x47, 0x65, 0x74, - 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x4d, 0x0a, 0x13, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, - 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x77, 0x69, 0x74, - 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, - 0x32, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x49, 0x64, 0x22, 0xa0, 0x03, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x75, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x17, 0x0a, 0x07, - 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, - 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, 0x73, 0x5f, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x73, - 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x62, 0x74, 0x63, 0x5f, 0x63, 0x6c, - 0x6f, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x74, 0x63, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, - 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x55, 0x53, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, - 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x12, 0x43, 0x0a, 0x1e, - 0x69, 0x73, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x69, 0x71, - 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x69, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, - 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x62, 0x74, 0x63, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2a, 0x2a, 0x0a, 0x0b, 0x57, 0x41, 0x4c, 0x4c, 0x45, 0x54, + 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0xa0, 0x03, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x12, 0x21, 0x0a, 0x0c, + 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, + 0x17, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x74, 0x73, + 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, + 0x61, 0x74, 0x73, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x62, 0x74, 0x63, + 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x74, 0x63, 0x43, 0x6c, 0x6f, 0x73, 0x65, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, + 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x64, 0x65, + 0x67, 0x75, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x12, + 0x43, 0x0a, 0x1e, 0x69, 0x73, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x6c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x69, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6d, + 0x61, 0x74, 0x65, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x62, 0x74, 0x63, 0x5f, 0x63, 0x6c, 0x6f, 0x73, + 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x52, 0x0a, 0x03, 0x54, 0x61, 0x67, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x74, 0x78, 0x6f, + 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x75, 0x74, 0x78, 0x6f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x34, 0x0a, + 0x0e, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x22, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x04, 0x74, + 0x61, 0x67, 0x73, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x2a, 0x0a, 0x0b, 0x57, 0x41, 0x4c, 0x4c, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x54, 0x48, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x48, 0x4f, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x4c, 0x44, 0x10, 0x02, 0x2a, 0x5e, 0x0a, 0x09, 0x46, 0x45, 0x45, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, @@ -2962,7 +3468,7 @@ var file_nodeguard_proto_rawDesc = []byte{ 0x42, 0x49, 0x47, 0x47, 0x45, 0x53, 0x54, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, - 0x55, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x41, 0x4d, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x03, 0x2a, 0xc3, + 0x55, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x41, 0x4d, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x03, 0x2a, 0xda, 0x01, 0x0a, 0x19, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x12, 0x16, 0x0a, 0x12, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x4c, @@ -2975,72 +3481,83 @@ var file_nodeguard_proto_rawDesc = []byte{ 0x44, 0x52, 0x41, 0x57, 0x41, 0x4c, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, - 0x45, 0x44, 0x10, 0x05, 0x2a, 0x26, 0x0a, 0x0e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x50, 0x45, 0x4e, 0x10, 0x00, - 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x10, 0x01, 0x32, 0xc5, 0x09, 0x0a, - 0x10, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x75, 0x61, 0x72, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x12, 0x5e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, - 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, - 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, - 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x71, 0x75, 0x69, - 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x64, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, - 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, - 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, - 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x26, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, + 0x45, 0x44, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, + 0x41, 0x4c, 0x5f, 0x42, 0x55, 0x4d, 0x50, 0x45, 0x44, 0x10, 0x06, 0x2a, 0x26, 0x0a, 0x0e, 0x43, + 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x12, 0x08, 0x0a, + 0x04, 0x4f, 0x50, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4c, 0x4f, 0x53, 0x45, + 0x44, 0x10, 0x01, 0x32, 0xbb, 0x0c, 0x0a, 0x10, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x75, 0x61, 0x72, + 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x4c, + 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x2e, + 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x71, + 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, + 0x65, 0x74, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4e, + 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x25, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x23, 0x2e, 0x6e, - 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x4e, 0x6f, - 0x64, 0x65, 0x12, 0x19, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, - 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, - 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x47, 0x65, 0x74, - 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, - 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, - 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, - 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x25, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, - 0x64, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6e, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x77, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, + 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, + 0x77, 0x61, 0x6c, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, + 0x75, 0x61, 0x72, 0x64, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, + 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, + 0x0a, 0x07, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x19, 0x2e, 0x6e, 0x6f, 0x64, 0x65, + 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x2e, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x43, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x6e, + 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, + 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x25, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, - 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x12, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x12, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, - 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x43, - 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, - 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, - 0x0a, 0x10, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, - 0x6c, 0x65, 0x12, 0x22, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, - 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, + 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x61, 0x6c, 0x6c, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x10, 0x47, + 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x22, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x57, + 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, + 0x47, 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x6e, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, + 0x61, 0x72, 0x64, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x72, 0x64, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x72, 0x64, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, + 0x72, 0x64, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, + 0x64, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, + 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, + 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x22, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, 0x69, 0x74, 0x79, 0x52, - 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x11, 0x47, - 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, 0x6f, 0x73, - 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, - 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, - 0x64, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, + 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x71, 0x75, 0x69, 0x64, + 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x55, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, + 0x74, 0x78, 0x6f, 0x73, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x74, 0x78, + 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, + 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x55, 0x74, 0x78, + 0x6f, 0x73, 0x12, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, + 0x65, 0x74, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, + 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x74, 0x78, 0x6f, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2d, 0x2e, 0x6e, 0x6f, 0x64, @@ -3049,13 +3566,27 @@ var file_nodeguard_proto_rawDesc = []byte{ 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x47, 0x65, 0x74, - 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, - 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, - 0x64, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, - 0x61, 0x72, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x98, 0x01, 0x0a, 0x29, 0x47, 0x65, + 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x73, 0x12, 0x3b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, + 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, + 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x2e, 0x47, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x47, 0x65, 0x74, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x40, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x73, 0x12, 0x19, 0x2e, 0x6e, 0x6f, 0x64, + 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, + 0x64, 0x2e, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -3071,95 +3602,113 @@ func file_nodeguard_proto_rawDescGZIP() []byte { } var file_nodeguard_proto_enumTypes = make([]protoimpl.EnumInfo, 7) -var file_nodeguard_proto_msgTypes = make([]protoimpl.MessageInfo, 32) -var file_nodeguard_proto_goTypes = []interface{}{ - (WALLET_TYPE)(0), // 0: nodeguard.WALLET_TYPE - (FEES_TYPE)(0), // 1: nodeguard.FEES_TYPE - (CHANNEL_OPERATION_STATUS)(0), // 2: nodeguard.CHANNEL_OPERATION_STATUS - (CHANNEL_OPERATION_TYPE)(0), // 3: nodeguard.CHANNEL_OPERATION_TYPE - (COIN_SELECTION_STRATEGY)(0), // 4: nodeguard.COIN_SELECTION_STRATEGY - (WITHDRAWAL_REQUEST_STATUS)(0), // 5: nodeguard.WITHDRAWAL_REQUEST_STATUS - (CHANNEL_STATUS)(0), // 6: nodeguard.CHANNEL_STATUS - (*GetLiquidityRulesRequest)(nil), // 7: nodeguard.GetLiquidityRulesRequest - (*GetLiquidityRulesResponse)(nil), // 8: nodeguard.GetLiquidityRulesResponse - (*LiquidityRule)(nil), // 9: nodeguard.LiquidityRule - (*GetNewWalletAddressRequest)(nil), // 10: nodeguard.GetNewWalletAddressRequest - (*GetNewWalletAddressResponse)(nil), // 11: nodeguard.GetNewWalletAddressResponse - (*RequestWithdrawalRequest)(nil), // 12: nodeguard.RequestWithdrawalRequest - (*RequestWithdrawalResponse)(nil), // 13: nodeguard.RequestWithdrawalResponse - (*GetAvailableWalletsRequest)(nil), // 14: nodeguard.GetAvailableWalletsRequest - (*AccountKeySettings)(nil), // 15: nodeguard.AccountKeySettings - (*Wallet)(nil), // 16: nodeguard.Wallet - (*GetAvailableWalletsResponse)(nil), // 17: nodeguard.GetAvailableWalletsResponse - (*AddNodeRequest)(nil), // 18: nodeguard.AddNodeRequest - (*AddNodeResponse)(nil), // 19: nodeguard.AddNodeResponse - (*Node)(nil), // 20: nodeguard.Node - (*GetNodesRequest)(nil), // 21: nodeguard.GetNodesRequest - (*GetNodesResponse)(nil), // 22: nodeguard.GetNodesResponse - (*OpenChannelRequest)(nil), // 23: nodeguard.OpenChannelRequest - (*OpenChannelResponse)(nil), // 24: nodeguard.OpenChannelResponse - (*CloseChannelRequest)(nil), // 25: nodeguard.CloseChannelRequest - (*CloseChannelResponse)(nil), // 26: nodeguard.CloseChannelResponse - (*GetChannelOperationRequestRequest)(nil), // 27: nodeguard.GetChannelOperationRequestRequest - (*GetChannelOperationRequestResponse)(nil), // 28: nodeguard.GetChannelOperationRequestResponse - (*AddLiquidityRuleRequest)(nil), // 29: nodeguard.AddLiquidityRuleRequest - (*AddLiquidityRuleResponse)(nil), // 30: nodeguard.AddLiquidityRuleResponse - (*GetAvailableUtxosRequest)(nil), // 31: nodeguard.GetAvailableUtxosRequest - (*Utxo)(nil), // 32: nodeguard.Utxo - (*GetAvailableUtxosResponse)(nil), // 33: nodeguard.GetAvailableUtxosResponse - (*GetWithdrawalsRequestStatusRequest)(nil), // 34: nodeguard.GetWithdrawalsRequestStatusRequest - (*WithdrawalRequest)(nil), // 35: nodeguard.WithdrawalRequest - (*GetWithdrawalsRequestStatusResponse)(nil), // 36: nodeguard.GetWithdrawalsRequestStatusResponse - (*GetChannelRequest)(nil), // 37: nodeguard.GetChannelRequest - (*GetChannelResponse)(nil), // 38: nodeguard.GetChannelResponse +var file_nodeguard_proto_msgTypes = make([]protoimpl.MessageInfo, 40) +var file_nodeguard_proto_goTypes = []any{ + (WALLET_TYPE)(0), // 0: nodeguard.WALLET_TYPE + (FEES_TYPE)(0), // 1: nodeguard.FEES_TYPE + (CHANNEL_OPERATION_STATUS)(0), // 2: nodeguard.CHANNEL_OPERATION_STATUS + (CHANNEL_OPERATION_TYPE)(0), // 3: nodeguard.CHANNEL_OPERATION_TYPE + (COIN_SELECTION_STRATEGY)(0), // 4: nodeguard.COIN_SELECTION_STRATEGY + (WITHDRAWAL_REQUEST_STATUS)(0), // 5: nodeguard.WITHDRAWAL_REQUEST_STATUS + (CHANNEL_STATUS)(0), // 6: nodeguard.CHANNEL_STATUS + (*GetLiquidityRulesRequest)(nil), // 7: nodeguard.GetLiquidityRulesRequest + (*GetLiquidityRulesResponse)(nil), // 8: nodeguard.GetLiquidityRulesResponse + (*LiquidityRule)(nil), // 9: nodeguard.LiquidityRule + (*GetNewWalletAddressRequest)(nil), // 10: nodeguard.GetNewWalletAddressRequest + (*GetNewWalletAddressResponse)(nil), // 11: nodeguard.GetNewWalletAddressResponse + (*Destination)(nil), // 12: nodeguard.Destination + (*RequestWithdrawalRequest)(nil), // 13: nodeguard.RequestWithdrawalRequest + (*RequestWithdrawalResponse)(nil), // 14: nodeguard.RequestWithdrawalResponse + (*GetAvailableWalletsRequest)(nil), // 15: nodeguard.GetAvailableWalletsRequest + (*AccountKeySettings)(nil), // 16: nodeguard.AccountKeySettings + (*Wallet)(nil), // 17: nodeguard.Wallet + (*GetAvailableWalletsResponse)(nil), // 18: nodeguard.GetAvailableWalletsResponse + (*GetWalletBalanceRequest)(nil), // 19: nodeguard.GetWalletBalanceRequest + (*GetWalletBalanceResponse)(nil), // 20: nodeguard.GetWalletBalanceResponse + (*AddNodeRequest)(nil), // 21: nodeguard.AddNodeRequest + (*AddNodeResponse)(nil), // 22: nodeguard.AddNodeResponse + (*Node)(nil), // 23: nodeguard.Node + (*GetNodesRequest)(nil), // 24: nodeguard.GetNodesRequest + (*GetNodesResponse)(nil), // 25: nodeguard.GetNodesResponse + (*OpenChannelRequest)(nil), // 26: nodeguard.OpenChannelRequest + (*OpenChannelResponse)(nil), // 27: nodeguard.OpenChannelResponse + (*CloseChannelRequest)(nil), // 28: nodeguard.CloseChannelRequest + (*CloseChannelResponse)(nil), // 29: nodeguard.CloseChannelResponse + (*GetChannelOperationRequestRequest)(nil), // 30: nodeguard.GetChannelOperationRequestRequest + (*GetChannelOperationRequestResponse)(nil), // 31: nodeguard.GetChannelOperationRequestResponse + (*AddLiquidityRuleRequest)(nil), // 32: nodeguard.AddLiquidityRuleRequest + (*AddLiquidityRuleResponse)(nil), // 33: nodeguard.AddLiquidityRuleResponse + (*GetUtxosRequest)(nil), // 34: nodeguard.GetUtxosRequest + (*GetAvailableUtxosRequest)(nil), // 35: nodeguard.GetAvailableUtxosRequest + (*Utxo)(nil), // 36: nodeguard.Utxo + (*GetUtxosResponse)(nil), // 37: nodeguard.GetUtxosResponse + (*GetWithdrawalsRequestStatusRequest)(nil), // 38: nodeguard.GetWithdrawalsRequestStatusRequest + (*WithdrawalRequest)(nil), // 39: nodeguard.WithdrawalRequest + (*GetWithdrawalsRequestStatusResponse)(nil), // 40: nodeguard.GetWithdrawalsRequestStatusResponse + (*GetWithdrawalsRequestStatusByReferenceIdsRequest)(nil), // 41: nodeguard.GetWithdrawalsRequestStatusByReferenceIdsRequest + (*GetChannelRequest)(nil), // 42: nodeguard.GetChannelRequest + (*GetChannelResponse)(nil), // 43: nodeguard.GetChannelResponse + (*Tag)(nil), // 44: nodeguard.Tag + (*AddTagsRequest)(nil), // 45: nodeguard.AddTagsRequest + (*AddTagsResponse)(nil), // 46: nodeguard.AddTagsResponse } var file_nodeguard_proto_depIdxs = []int32{ 9, // 0: nodeguard.GetLiquidityRulesResponse.liquidity_rules:type_name -> nodeguard.LiquidityRule 1, // 1: nodeguard.RequestWithdrawalRequest.mempool_fee_rate:type_name -> nodeguard.FEES_TYPE - 0, // 2: nodeguard.GetAvailableWalletsRequest.wallet_type:type_name -> nodeguard.WALLET_TYPE - 15, // 3: nodeguard.Wallet.account_key_settings:type_name -> nodeguard.AccountKeySettings - 16, // 4: nodeguard.GetAvailableWalletsResponse.wallets:type_name -> nodeguard.Wallet - 20, // 5: nodeguard.GetNodesResponse.nodes:type_name -> nodeguard.Node - 1, // 6: nodeguard.OpenChannelRequest.mempool_fee_rate:type_name -> nodeguard.FEES_TYPE - 2, // 7: nodeguard.GetChannelOperationRequestResponse.status:type_name -> nodeguard.CHANNEL_OPERATION_STATUS - 3, // 8: nodeguard.GetChannelOperationRequestResponse.type:type_name -> nodeguard.CHANNEL_OPERATION_TYPE - 4, // 9: nodeguard.GetAvailableUtxosRequest.strategy:type_name -> nodeguard.COIN_SELECTION_STRATEGY - 32, // 10: nodeguard.GetAvailableUtxosResponse.confirmed:type_name -> nodeguard.Utxo - 32, // 11: nodeguard.GetAvailableUtxosResponse.unconfirmed:type_name -> nodeguard.Utxo - 5, // 12: nodeguard.WithdrawalRequest.status:type_name -> nodeguard.WITHDRAWAL_REQUEST_STATUS - 35, // 13: nodeguard.GetWithdrawalsRequestStatusResponse.withdrawal_requests:type_name -> nodeguard.WithdrawalRequest - 6, // 14: nodeguard.GetChannelResponse.status:type_name -> nodeguard.CHANNEL_STATUS - 7, // 15: nodeguard.NodeGuardService.GetLiquidityRules:input_type -> nodeguard.GetLiquidityRulesRequest - 10, // 16: nodeguard.NodeGuardService.GetNewWalletAddress:input_type -> nodeguard.GetNewWalletAddressRequest - 12, // 17: nodeguard.NodeGuardService.RequestWithdrawal:input_type -> nodeguard.RequestWithdrawalRequest - 18, // 18: nodeguard.NodeGuardService.AddNode:input_type -> nodeguard.AddNodeRequest - 21, // 19: nodeguard.NodeGuardService.GetNodes:input_type -> nodeguard.GetNodesRequest - 14, // 20: nodeguard.NodeGuardService.GetAvailableWallets:input_type -> nodeguard.GetAvailableWalletsRequest - 23, // 21: nodeguard.NodeGuardService.OpenChannel:input_type -> nodeguard.OpenChannelRequest - 25, // 22: nodeguard.NodeGuardService.CloseChannel:input_type -> nodeguard.CloseChannelRequest - 27, // 23: nodeguard.NodeGuardService.GetChannelOperationRequest:input_type -> nodeguard.GetChannelOperationRequestRequest - 29, // 24: nodeguard.NodeGuardService.AddLiquidityRule:input_type -> nodeguard.AddLiquidityRuleRequest - 31, // 25: nodeguard.NodeGuardService.GetAvailableUtxos:input_type -> nodeguard.GetAvailableUtxosRequest - 34, // 26: nodeguard.NodeGuardService.GetWithdrawalsRequestStatus:input_type -> nodeguard.GetWithdrawalsRequestStatusRequest - 37, // 27: nodeguard.NodeGuardService.GetChannel:input_type -> nodeguard.GetChannelRequest - 8, // 28: nodeguard.NodeGuardService.GetLiquidityRules:output_type -> nodeguard.GetLiquidityRulesResponse - 11, // 29: nodeguard.NodeGuardService.GetNewWalletAddress:output_type -> nodeguard.GetNewWalletAddressResponse - 13, // 30: nodeguard.NodeGuardService.RequestWithdrawal:output_type -> nodeguard.RequestWithdrawalResponse - 19, // 31: nodeguard.NodeGuardService.AddNode:output_type -> nodeguard.AddNodeResponse - 22, // 32: nodeguard.NodeGuardService.GetNodes:output_type -> nodeguard.GetNodesResponse - 17, // 33: nodeguard.NodeGuardService.GetAvailableWallets:output_type -> nodeguard.GetAvailableWalletsResponse - 24, // 34: nodeguard.NodeGuardService.OpenChannel:output_type -> nodeguard.OpenChannelResponse - 26, // 35: nodeguard.NodeGuardService.CloseChannel:output_type -> nodeguard.CloseChannelResponse - 28, // 36: nodeguard.NodeGuardService.GetChannelOperationRequest:output_type -> nodeguard.GetChannelOperationRequestResponse - 30, // 37: nodeguard.NodeGuardService.AddLiquidityRule:output_type -> nodeguard.AddLiquidityRuleResponse - 33, // 38: nodeguard.NodeGuardService.GetAvailableUtxos:output_type -> nodeguard.GetAvailableUtxosResponse - 36, // 39: nodeguard.NodeGuardService.GetWithdrawalsRequestStatus:output_type -> nodeguard.GetWithdrawalsRequestStatusResponse - 38, // 40: nodeguard.NodeGuardService.GetChannel:output_type -> nodeguard.GetChannelResponse - 28, // [28:41] is the sub-list for method output_type - 15, // [15:28] is the sub-list for method input_type - 15, // [15:15] is the sub-list for extension type_name - 15, // [15:15] is the sub-list for extension extendee - 0, // [0:15] is the sub-list for field type_name + 12, // 2: nodeguard.RequestWithdrawalRequest.destinations:type_name -> nodeguard.Destination + 0, // 3: nodeguard.GetAvailableWalletsRequest.wallet_type:type_name -> nodeguard.WALLET_TYPE + 16, // 4: nodeguard.Wallet.account_key_settings:type_name -> nodeguard.AccountKeySettings + 17, // 5: nodeguard.GetAvailableWalletsResponse.wallets:type_name -> nodeguard.Wallet + 23, // 6: nodeguard.GetNodesResponse.nodes:type_name -> nodeguard.Node + 1, // 7: nodeguard.OpenChannelRequest.mempool_fee_rate:type_name -> nodeguard.FEES_TYPE + 2, // 8: nodeguard.GetChannelOperationRequestResponse.status:type_name -> nodeguard.CHANNEL_OPERATION_STATUS + 3, // 9: nodeguard.GetChannelOperationRequestResponse.type:type_name -> nodeguard.CHANNEL_OPERATION_TYPE + 4, // 10: nodeguard.GetAvailableUtxosRequest.strategy:type_name -> nodeguard.COIN_SELECTION_STRATEGY + 36, // 11: nodeguard.GetUtxosResponse.confirmed:type_name -> nodeguard.Utxo + 36, // 12: nodeguard.GetUtxosResponse.unconfirmed:type_name -> nodeguard.Utxo + 5, // 13: nodeguard.WithdrawalRequest.status:type_name -> nodeguard.WITHDRAWAL_REQUEST_STATUS + 39, // 14: nodeguard.GetWithdrawalsRequestStatusResponse.withdrawal_requests:type_name -> nodeguard.WithdrawalRequest + 6, // 15: nodeguard.GetChannelResponse.status:type_name -> nodeguard.CHANNEL_STATUS + 44, // 16: nodeguard.AddTagsRequest.tags:type_name -> nodeguard.Tag + 7, // 17: nodeguard.NodeGuardService.GetLiquidityRules:input_type -> nodeguard.GetLiquidityRulesRequest + 10, // 18: nodeguard.NodeGuardService.GetNewWalletAddress:input_type -> nodeguard.GetNewWalletAddressRequest + 13, // 19: nodeguard.NodeGuardService.RequestWithdrawal:input_type -> nodeguard.RequestWithdrawalRequest + 21, // 20: nodeguard.NodeGuardService.AddNode:input_type -> nodeguard.AddNodeRequest + 24, // 21: nodeguard.NodeGuardService.GetNodes:input_type -> nodeguard.GetNodesRequest + 15, // 22: nodeguard.NodeGuardService.GetAvailableWallets:input_type -> nodeguard.GetAvailableWalletsRequest + 19, // 23: nodeguard.NodeGuardService.GetWalletBalance:input_type -> nodeguard.GetWalletBalanceRequest + 26, // 24: nodeguard.NodeGuardService.OpenChannel:input_type -> nodeguard.OpenChannelRequest + 28, // 25: nodeguard.NodeGuardService.CloseChannel:input_type -> nodeguard.CloseChannelRequest + 30, // 26: nodeguard.NodeGuardService.GetChannelOperationRequest:input_type -> nodeguard.GetChannelOperationRequestRequest + 32, // 27: nodeguard.NodeGuardService.AddLiquidityRule:input_type -> nodeguard.AddLiquidityRuleRequest + 35, // 28: nodeguard.NodeGuardService.GetAvailableUtxos:input_type -> nodeguard.GetAvailableUtxosRequest + 34, // 29: nodeguard.NodeGuardService.GetUtxos:input_type -> nodeguard.GetUtxosRequest + 38, // 30: nodeguard.NodeGuardService.GetWithdrawalsRequestStatus:input_type -> nodeguard.GetWithdrawalsRequestStatusRequest + 41, // 31: nodeguard.NodeGuardService.GetWithdrawalsRequestStatusByReferenceIds:input_type -> nodeguard.GetWithdrawalsRequestStatusByReferenceIdsRequest + 42, // 32: nodeguard.NodeGuardService.GetChannel:input_type -> nodeguard.GetChannelRequest + 45, // 33: nodeguard.NodeGuardService.AddTags:input_type -> nodeguard.AddTagsRequest + 8, // 34: nodeguard.NodeGuardService.GetLiquidityRules:output_type -> nodeguard.GetLiquidityRulesResponse + 11, // 35: nodeguard.NodeGuardService.GetNewWalletAddress:output_type -> nodeguard.GetNewWalletAddressResponse + 14, // 36: nodeguard.NodeGuardService.RequestWithdrawal:output_type -> nodeguard.RequestWithdrawalResponse + 22, // 37: nodeguard.NodeGuardService.AddNode:output_type -> nodeguard.AddNodeResponse + 25, // 38: nodeguard.NodeGuardService.GetNodes:output_type -> nodeguard.GetNodesResponse + 18, // 39: nodeguard.NodeGuardService.GetAvailableWallets:output_type -> nodeguard.GetAvailableWalletsResponse + 20, // 40: nodeguard.NodeGuardService.GetWalletBalance:output_type -> nodeguard.GetWalletBalanceResponse + 27, // 41: nodeguard.NodeGuardService.OpenChannel:output_type -> nodeguard.OpenChannelResponse + 29, // 42: nodeguard.NodeGuardService.CloseChannel:output_type -> nodeguard.CloseChannelResponse + 31, // 43: nodeguard.NodeGuardService.GetChannelOperationRequest:output_type -> nodeguard.GetChannelOperationRequestResponse + 33, // 44: nodeguard.NodeGuardService.AddLiquidityRule:output_type -> nodeguard.AddLiquidityRuleResponse + 37, // 45: nodeguard.NodeGuardService.GetAvailableUtxos:output_type -> nodeguard.GetUtxosResponse + 37, // 46: nodeguard.NodeGuardService.GetUtxos:output_type -> nodeguard.GetUtxosResponse + 40, // 47: nodeguard.NodeGuardService.GetWithdrawalsRequestStatus:output_type -> nodeguard.GetWithdrawalsRequestStatusResponse + 40, // 48: nodeguard.NodeGuardService.GetWithdrawalsRequestStatusByReferenceIds:output_type -> nodeguard.GetWithdrawalsRequestStatusResponse + 43, // 49: nodeguard.NodeGuardService.GetChannel:output_type -> nodeguard.GetChannelResponse + 46, // 50: nodeguard.NodeGuardService.AddTags:output_type -> nodeguard.AddTagsResponse + 34, // [34:51] is the sub-list for method output_type + 17, // [17:34] is the sub-list for method input_type + 17, // [17:17] is the sub-list for extension type_name + 17, // [17:17] is the sub-list for extension extendee + 0, // [0:17] is the sub-list for field type_name } func init() { file_nodeguard_proto_init() } @@ -3168,7 +3717,7 @@ func file_nodeguard_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_nodeguard_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*GetLiquidityRulesRequest); i { case 0: return &v.state @@ -3180,7 +3729,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*GetLiquidityRulesResponse); i { case 0: return &v.state @@ -3192,7 +3741,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*LiquidityRule); i { case 0: return &v.state @@ -3204,7 +3753,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*GetNewWalletAddressRequest); i { case 0: return &v.state @@ -3216,7 +3765,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[4].Exporter = func(v any, i int) any { switch v := v.(*GetNewWalletAddressResponse); i { case 0: return &v.state @@ -3228,7 +3777,19 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*Destination); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[6].Exporter = func(v any, i int) any { switch v := v.(*RequestWithdrawalRequest); i { case 0: return &v.state @@ -3240,7 +3801,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[7].Exporter = func(v any, i int) any { switch v := v.(*RequestWithdrawalResponse); i { case 0: return &v.state @@ -3252,7 +3813,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[8].Exporter = func(v any, i int) any { switch v := v.(*GetAvailableWalletsRequest); i { case 0: return &v.state @@ -3264,7 +3825,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[9].Exporter = func(v any, i int) any { switch v := v.(*AccountKeySettings); i { case 0: return &v.state @@ -3276,7 +3837,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[10].Exporter = func(v any, i int) any { switch v := v.(*Wallet); i { case 0: return &v.state @@ -3288,7 +3849,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[11].Exporter = func(v any, i int) any { switch v := v.(*GetAvailableWalletsResponse); i { case 0: return &v.state @@ -3300,7 +3861,31 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GetWalletBalanceRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*GetWalletBalanceResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[14].Exporter = func(v any, i int) any { switch v := v.(*AddNodeRequest); i { case 0: return &v.state @@ -3312,7 +3897,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[15].Exporter = func(v any, i int) any { switch v := v.(*AddNodeResponse); i { case 0: return &v.state @@ -3324,7 +3909,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[16].Exporter = func(v any, i int) any { switch v := v.(*Node); i { case 0: return &v.state @@ -3336,7 +3921,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[17].Exporter = func(v any, i int) any { switch v := v.(*GetNodesRequest); i { case 0: return &v.state @@ -3348,7 +3933,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[18].Exporter = func(v any, i int) any { switch v := v.(*GetNodesResponse); i { case 0: return &v.state @@ -3360,7 +3945,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[19].Exporter = func(v any, i int) any { switch v := v.(*OpenChannelRequest); i { case 0: return &v.state @@ -3372,7 +3957,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[20].Exporter = func(v any, i int) any { switch v := v.(*OpenChannelResponse); i { case 0: return &v.state @@ -3384,7 +3969,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[21].Exporter = func(v any, i int) any { switch v := v.(*CloseChannelRequest); i { case 0: return &v.state @@ -3396,7 +3981,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[22].Exporter = func(v any, i int) any { switch v := v.(*CloseChannelResponse); i { case 0: return &v.state @@ -3408,7 +3993,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[23].Exporter = func(v any, i int) any { switch v := v.(*GetChannelOperationRequestRequest); i { case 0: return &v.state @@ -3420,7 +4005,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[24].Exporter = func(v any, i int) any { switch v := v.(*GetChannelOperationRequestResponse); i { case 0: return &v.state @@ -3432,7 +4017,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[25].Exporter = func(v any, i int) any { switch v := v.(*AddLiquidityRuleRequest); i { case 0: return &v.state @@ -3444,7 +4029,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[26].Exporter = func(v any, i int) any { switch v := v.(*AddLiquidityRuleResponse); i { case 0: return &v.state @@ -3456,7 +4041,19 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[27].Exporter = func(v any, i int) any { + switch v := v.(*GetUtxosRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[28].Exporter = func(v any, i int) any { switch v := v.(*GetAvailableUtxosRequest); i { case 0: return &v.state @@ -3468,7 +4065,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[29].Exporter = func(v any, i int) any { switch v := v.(*Utxo); i { case 0: return &v.state @@ -3480,8 +4077,8 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetAvailableUtxosResponse); i { + file_nodeguard_proto_msgTypes[30].Exporter = func(v any, i int) any { + switch v := v.(*GetUtxosResponse); i { case 0: return &v.state case 1: @@ -3492,7 +4089,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[31].Exporter = func(v any, i int) any { switch v := v.(*GetWithdrawalsRequestStatusRequest); i { case 0: return &v.state @@ -3504,7 +4101,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[32].Exporter = func(v any, i int) any { switch v := v.(*WithdrawalRequest); i { case 0: return &v.state @@ -3516,7 +4113,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[33].Exporter = func(v any, i int) any { switch v := v.(*GetWithdrawalsRequestStatusResponse); i { case 0: return &v.state @@ -3528,7 +4125,19 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*GetWithdrawalsRequestStatusByReferenceIdsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[35].Exporter = func(v any, i int) any { switch v := v.(*GetChannelRequest); i { case 0: return &v.state @@ -3540,7 +4149,7 @@ func file_nodeguard_proto_init() { return nil } } - file_nodeguard_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_nodeguard_proto_msgTypes[36].Exporter = func(v any, i int) any { switch v := v.(*GetChannelResponse); i { case 0: return &v.state @@ -3552,23 +4161,59 @@ func file_nodeguard_proto_init() { return nil } } + file_nodeguard_proto_msgTypes[37].Exporter = func(v any, i int) any { + switch v := v.(*Tag); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[38].Exporter = func(v any, i int) any { + switch v := v.(*AddTagsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_nodeguard_proto_msgTypes[39].Exporter = func(v any, i int) any { + switch v := v.(*AddTagsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } - file_nodeguard_proto_msgTypes[2].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[5].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[7].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[16].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[21].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[22].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[24].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[28].OneofWrappers = []interface{}{} - file_nodeguard_proto_msgTypes[31].OneofWrappers = []interface{}{} + file_nodeguard_proto_msgTypes[2].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[6].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[8].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[19].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[24].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[25].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[28].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[32].OneofWrappers = []any{} + file_nodeguard_proto_msgTypes[36].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_nodeguard_proto_rawDesc, NumEnums: 7, - NumMessages: 32, + NumMessages: 40, NumExtensions: 0, NumServices: 1, }, diff --git a/nodeguard/nodeguard_grpc.pb.go b/nodeguard/nodeguard_grpc.pb.go index 5fbe922..c437ddf 100644 --- a/nodeguard/nodeguard_grpc.pb.go +++ b/nodeguard/nodeguard_grpc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v4.25.3 +// - protoc-gen-go-grpc v1.4.0 +// - protoc v5.29.3 // source: nodeguard.proto package nodeguard @@ -15,23 +15,27 @@ import ( // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 +// Requires gRPC-Go v1.62.0 or later. +const _ = grpc.SupportPackageIsVersion8 const ( - NodeGuardService_GetLiquidityRules_FullMethodName = "/nodeguard.NodeGuardService/GetLiquidityRules" - NodeGuardService_GetNewWalletAddress_FullMethodName = "/nodeguard.NodeGuardService/GetNewWalletAddress" - NodeGuardService_RequestWithdrawal_FullMethodName = "/nodeguard.NodeGuardService/RequestWithdrawal" - NodeGuardService_AddNode_FullMethodName = "/nodeguard.NodeGuardService/AddNode" - NodeGuardService_GetNodes_FullMethodName = "/nodeguard.NodeGuardService/GetNodes" - NodeGuardService_GetAvailableWallets_FullMethodName = "/nodeguard.NodeGuardService/GetAvailableWallets" - NodeGuardService_OpenChannel_FullMethodName = "/nodeguard.NodeGuardService/OpenChannel" - NodeGuardService_CloseChannel_FullMethodName = "/nodeguard.NodeGuardService/CloseChannel" - NodeGuardService_GetChannelOperationRequest_FullMethodName = "/nodeguard.NodeGuardService/GetChannelOperationRequest" - NodeGuardService_AddLiquidityRule_FullMethodName = "/nodeguard.NodeGuardService/AddLiquidityRule" - NodeGuardService_GetAvailableUtxos_FullMethodName = "/nodeguard.NodeGuardService/GetAvailableUtxos" - NodeGuardService_GetWithdrawalsRequestStatus_FullMethodName = "/nodeguard.NodeGuardService/GetWithdrawalsRequestStatus" - NodeGuardService_GetChannel_FullMethodName = "/nodeguard.NodeGuardService/GetChannel" + NodeGuardService_GetLiquidityRules_FullMethodName = "/nodeguard.NodeGuardService/GetLiquidityRules" + NodeGuardService_GetNewWalletAddress_FullMethodName = "/nodeguard.NodeGuardService/GetNewWalletAddress" + NodeGuardService_RequestWithdrawal_FullMethodName = "/nodeguard.NodeGuardService/RequestWithdrawal" + NodeGuardService_AddNode_FullMethodName = "/nodeguard.NodeGuardService/AddNode" + NodeGuardService_GetNodes_FullMethodName = "/nodeguard.NodeGuardService/GetNodes" + NodeGuardService_GetAvailableWallets_FullMethodName = "/nodeguard.NodeGuardService/GetAvailableWallets" + NodeGuardService_GetWalletBalance_FullMethodName = "/nodeguard.NodeGuardService/GetWalletBalance" + NodeGuardService_OpenChannel_FullMethodName = "/nodeguard.NodeGuardService/OpenChannel" + NodeGuardService_CloseChannel_FullMethodName = "/nodeguard.NodeGuardService/CloseChannel" + NodeGuardService_GetChannelOperationRequest_FullMethodName = "/nodeguard.NodeGuardService/GetChannelOperationRequest" + NodeGuardService_AddLiquidityRule_FullMethodName = "/nodeguard.NodeGuardService/AddLiquidityRule" + NodeGuardService_GetAvailableUtxos_FullMethodName = "/nodeguard.NodeGuardService/GetAvailableUtxos" + NodeGuardService_GetUtxos_FullMethodName = "/nodeguard.NodeGuardService/GetUtxos" + NodeGuardService_GetWithdrawalsRequestStatus_FullMethodName = "/nodeguard.NodeGuardService/GetWithdrawalsRequestStatus" + NodeGuardService_GetWithdrawalsRequestStatusByReferenceIds_FullMethodName = "/nodeguard.NodeGuardService/GetWithdrawalsRequestStatusByReferenceIds" + NodeGuardService_GetChannel_FullMethodName = "/nodeguard.NodeGuardService/GetChannel" + NodeGuardService_AddTags_FullMethodName = "/nodeguard.NodeGuardService/AddTags" ) // NodeGuardServiceClient is the client API for NodeGuardService service. @@ -50,6 +54,8 @@ type NodeGuardServiceClient interface { GetNodes(ctx context.Context, in *GetNodesRequest, opts ...grpc.CallOption) (*GetNodesResponse, error) // Gets a list of available wallets GetAvailableWallets(ctx context.Context, in *GetAvailableWalletsRequest, opts ...grpc.CallOption) (*GetAvailableWalletsResponse, error) + // Get balance from a specific wallet + GetWalletBalance(ctx context.Context, in *GetWalletBalanceRequest, opts ...grpc.CallOption) (*GetWalletBalanceResponse, error) // Opens a channel to a given node OpenChannel(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (*OpenChannelResponse, error) // Closes a channel to a given node @@ -58,12 +64,18 @@ type NodeGuardServiceClient interface { GetChannelOperationRequest(ctx context.Context, in *GetChannelOperationRequestRequest, opts ...grpc.CallOption) (*GetChannelOperationRequestResponse, error) // Adds a liquidity rule to a channel AddLiquidityRule(ctx context.Context, in *AddLiquidityRuleRequest, opts ...grpc.CallOption) (*AddLiquidityRuleResponse, error) - // Gets a list of available UTXOs for a wallet - GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetAvailableUtxosResponse, error) + // Gets a list of available UTXOs for a single wallet + GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) + // Gets a list of all UTXOs from all available wallets + GetUtxos(ctx context.Context, in *GetUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) // Gets the status for the provided withdrawals request ids GetWithdrawalsRequestStatus(ctx context.Context, in *GetWithdrawalsRequestStatusRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) + // Gets the status for the provided withdrawals request reference ids + GetWithdrawalsRequestStatusByReferenceIds(ctx context.Context, in *GetWithdrawalsRequestStatusByReferenceIdsRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) // Gets a channel by id GetChannel(ctx context.Context, in *GetChannelRequest, opts ...grpc.CallOption) (*GetChannelResponse, error) + // Adds tags to UTXOs under the treasury + AddTags(ctx context.Context, in *AddTagsRequest, opts ...grpc.CallOption) (*AddTagsResponse, error) } type nodeGuardServiceClient struct { @@ -75,8 +87,9 @@ func NewNodeGuardServiceClient(cc grpc.ClientConnInterface) NodeGuardServiceClie } func (c *nodeGuardServiceClient) GetLiquidityRules(ctx context.Context, in *GetLiquidityRulesRequest, opts ...grpc.CallOption) (*GetLiquidityRulesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetLiquidityRulesResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetLiquidityRules_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetLiquidityRules_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -84,8 +97,9 @@ func (c *nodeGuardServiceClient) GetLiquidityRules(ctx context.Context, in *GetL } func (c *nodeGuardServiceClient) GetNewWalletAddress(ctx context.Context, in *GetNewWalletAddressRequest, opts ...grpc.CallOption) (*GetNewWalletAddressResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetNewWalletAddressResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetNewWalletAddress_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetNewWalletAddress_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -93,8 +107,9 @@ func (c *nodeGuardServiceClient) GetNewWalletAddress(ctx context.Context, in *Ge } func (c *nodeGuardServiceClient) RequestWithdrawal(ctx context.Context, in *RequestWithdrawalRequest, opts ...grpc.CallOption) (*RequestWithdrawalResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(RequestWithdrawalResponse) - err := c.cc.Invoke(ctx, NodeGuardService_RequestWithdrawal_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_RequestWithdrawal_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -102,8 +117,9 @@ func (c *nodeGuardServiceClient) RequestWithdrawal(ctx context.Context, in *Requ } func (c *nodeGuardServiceClient) AddNode(ctx context.Context, in *AddNodeRequest, opts ...grpc.CallOption) (*AddNodeResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(AddNodeResponse) - err := c.cc.Invoke(ctx, NodeGuardService_AddNode_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_AddNode_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -111,8 +127,9 @@ func (c *nodeGuardServiceClient) AddNode(ctx context.Context, in *AddNodeRequest } func (c *nodeGuardServiceClient) GetNodes(ctx context.Context, in *GetNodesRequest, opts ...grpc.CallOption) (*GetNodesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetNodesResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetNodes_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetNodes_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -120,8 +137,19 @@ func (c *nodeGuardServiceClient) GetNodes(ctx context.Context, in *GetNodesReque } func (c *nodeGuardServiceClient) GetAvailableWallets(ctx context.Context, in *GetAvailableWalletsRequest, opts ...grpc.CallOption) (*GetAvailableWalletsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetAvailableWalletsResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetAvailableWallets_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetAvailableWallets_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *nodeGuardServiceClient) GetWalletBalance(ctx context.Context, in *GetWalletBalanceRequest, opts ...grpc.CallOption) (*GetWalletBalanceResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetWalletBalanceResponse) + err := c.cc.Invoke(ctx, NodeGuardService_GetWalletBalance_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -129,8 +157,9 @@ func (c *nodeGuardServiceClient) GetAvailableWallets(ctx context.Context, in *Ge } func (c *nodeGuardServiceClient) OpenChannel(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (*OpenChannelResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(OpenChannelResponse) - err := c.cc.Invoke(ctx, NodeGuardService_OpenChannel_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_OpenChannel_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -138,8 +167,9 @@ func (c *nodeGuardServiceClient) OpenChannel(ctx context.Context, in *OpenChanne } func (c *nodeGuardServiceClient) CloseChannel(ctx context.Context, in *CloseChannelRequest, opts ...grpc.CallOption) (*CloseChannelResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(CloseChannelResponse) - err := c.cc.Invoke(ctx, NodeGuardService_CloseChannel_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_CloseChannel_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -147,8 +177,9 @@ func (c *nodeGuardServiceClient) CloseChannel(ctx context.Context, in *CloseChan } func (c *nodeGuardServiceClient) GetChannelOperationRequest(ctx context.Context, in *GetChannelOperationRequestRequest, opts ...grpc.CallOption) (*GetChannelOperationRequestResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetChannelOperationRequestResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetChannelOperationRequest_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetChannelOperationRequest_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -156,17 +187,29 @@ func (c *nodeGuardServiceClient) GetChannelOperationRequest(ctx context.Context, } func (c *nodeGuardServiceClient) AddLiquidityRule(ctx context.Context, in *AddLiquidityRuleRequest, opts ...grpc.CallOption) (*AddLiquidityRuleResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(AddLiquidityRuleResponse) - err := c.cc.Invoke(ctx, NodeGuardService_AddLiquidityRule_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_AddLiquidityRule_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *nodeGuardServiceClient) GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetUtxosResponse) + err := c.cc.Invoke(ctx, NodeGuardService_GetAvailableUtxos_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } return out, nil } -func (c *nodeGuardServiceClient) GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetAvailableUtxosResponse, error) { - out := new(GetAvailableUtxosResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetAvailableUtxos_FullMethodName, in, out, opts...) +func (c *nodeGuardServiceClient) GetUtxos(ctx context.Context, in *GetUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetUtxosResponse) + err := c.cc.Invoke(ctx, NodeGuardService_GetUtxos_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -174,8 +217,19 @@ func (c *nodeGuardServiceClient) GetAvailableUtxos(ctx context.Context, in *GetA } func (c *nodeGuardServiceClient) GetWithdrawalsRequestStatus(ctx context.Context, in *GetWithdrawalsRequestStatusRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetWithdrawalsRequestStatusResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetWithdrawalsRequestStatus_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetWithdrawalsRequestStatus_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *nodeGuardServiceClient) GetWithdrawalsRequestStatusByReferenceIds(ctx context.Context, in *GetWithdrawalsRequestStatusByReferenceIdsRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetWithdrawalsRequestStatusResponse) + err := c.cc.Invoke(ctx, NodeGuardService_GetWithdrawalsRequestStatusByReferenceIds_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -183,8 +237,19 @@ func (c *nodeGuardServiceClient) GetWithdrawalsRequestStatus(ctx context.Context } func (c *nodeGuardServiceClient) GetChannel(ctx context.Context, in *GetChannelRequest, opts ...grpc.CallOption) (*GetChannelResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetChannelResponse) - err := c.cc.Invoke(ctx, NodeGuardService_GetChannel_FullMethodName, in, out, opts...) + err := c.cc.Invoke(ctx, NodeGuardService_GetChannel_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *nodeGuardServiceClient) AddTags(ctx context.Context, in *AddTagsRequest, opts ...grpc.CallOption) (*AddTagsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(AddTagsResponse) + err := c.cc.Invoke(ctx, NodeGuardService_AddTags_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -207,6 +272,8 @@ type NodeGuardServiceServer interface { GetNodes(context.Context, *GetNodesRequest) (*GetNodesResponse, error) // Gets a list of available wallets GetAvailableWallets(context.Context, *GetAvailableWalletsRequest) (*GetAvailableWalletsResponse, error) + // Get balance from a specific wallet + GetWalletBalance(context.Context, *GetWalletBalanceRequest) (*GetWalletBalanceResponse, error) // Opens a channel to a given node OpenChannel(context.Context, *OpenChannelRequest) (*OpenChannelResponse, error) // Closes a channel to a given node @@ -215,12 +282,18 @@ type NodeGuardServiceServer interface { GetChannelOperationRequest(context.Context, *GetChannelOperationRequestRequest) (*GetChannelOperationRequestResponse, error) // Adds a liquidity rule to a channel AddLiquidityRule(context.Context, *AddLiquidityRuleRequest) (*AddLiquidityRuleResponse, error) - // Gets a list of available UTXOs for a wallet - GetAvailableUtxos(context.Context, *GetAvailableUtxosRequest) (*GetAvailableUtxosResponse, error) + // Gets a list of available UTXOs for a single wallet + GetAvailableUtxos(context.Context, *GetAvailableUtxosRequest) (*GetUtxosResponse, error) + // Gets a list of all UTXOs from all available wallets + GetUtxos(context.Context, *GetUtxosRequest) (*GetUtxosResponse, error) // Gets the status for the provided withdrawals request ids GetWithdrawalsRequestStatus(context.Context, *GetWithdrawalsRequestStatusRequest) (*GetWithdrawalsRequestStatusResponse, error) + // Gets the status for the provided withdrawals request reference ids + GetWithdrawalsRequestStatusByReferenceIds(context.Context, *GetWithdrawalsRequestStatusByReferenceIdsRequest) (*GetWithdrawalsRequestStatusResponse, error) // Gets a channel by id GetChannel(context.Context, *GetChannelRequest) (*GetChannelResponse, error) + // Adds tags to UTXOs under the treasury + AddTags(context.Context, *AddTagsRequest) (*AddTagsResponse, error) mustEmbedUnimplementedNodeGuardServiceServer() } @@ -246,6 +319,9 @@ func (UnimplementedNodeGuardServiceServer) GetNodes(context.Context, *GetNodesRe func (UnimplementedNodeGuardServiceServer) GetAvailableWallets(context.Context, *GetAvailableWalletsRequest) (*GetAvailableWalletsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetAvailableWallets not implemented") } +func (UnimplementedNodeGuardServiceServer) GetWalletBalance(context.Context, *GetWalletBalanceRequest) (*GetWalletBalanceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetWalletBalance not implemented") +} func (UnimplementedNodeGuardServiceServer) OpenChannel(context.Context, *OpenChannelRequest) (*OpenChannelResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method OpenChannel not implemented") } @@ -258,15 +334,24 @@ func (UnimplementedNodeGuardServiceServer) GetChannelOperationRequest(context.Co func (UnimplementedNodeGuardServiceServer) AddLiquidityRule(context.Context, *AddLiquidityRuleRequest) (*AddLiquidityRuleResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method AddLiquidityRule not implemented") } -func (UnimplementedNodeGuardServiceServer) GetAvailableUtxos(context.Context, *GetAvailableUtxosRequest) (*GetAvailableUtxosResponse, error) { +func (UnimplementedNodeGuardServiceServer) GetAvailableUtxos(context.Context, *GetAvailableUtxosRequest) (*GetUtxosResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetAvailableUtxos not implemented") } +func (UnimplementedNodeGuardServiceServer) GetUtxos(context.Context, *GetUtxosRequest) (*GetUtxosResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetUtxos not implemented") +} func (UnimplementedNodeGuardServiceServer) GetWithdrawalsRequestStatus(context.Context, *GetWithdrawalsRequestStatusRequest) (*GetWithdrawalsRequestStatusResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetWithdrawalsRequestStatus not implemented") } +func (UnimplementedNodeGuardServiceServer) GetWithdrawalsRequestStatusByReferenceIds(context.Context, *GetWithdrawalsRequestStatusByReferenceIdsRequest) (*GetWithdrawalsRequestStatusResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetWithdrawalsRequestStatusByReferenceIds not implemented") +} func (UnimplementedNodeGuardServiceServer) GetChannel(context.Context, *GetChannelRequest) (*GetChannelResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetChannel not implemented") } +func (UnimplementedNodeGuardServiceServer) AddTags(context.Context, *AddTagsRequest) (*AddTagsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AddTags not implemented") +} func (UnimplementedNodeGuardServiceServer) mustEmbedUnimplementedNodeGuardServiceServer() {} // UnsafeNodeGuardServiceServer may be embedded to opt out of forward compatibility for this service. @@ -388,6 +473,24 @@ func _NodeGuardService_GetAvailableWallets_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } +func _NodeGuardService_GetWalletBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetWalletBalanceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NodeGuardServiceServer).GetWalletBalance(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: NodeGuardService_GetWalletBalance_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NodeGuardServiceServer).GetWalletBalance(ctx, req.(*GetWalletBalanceRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _NodeGuardService_OpenChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(OpenChannelRequest) if err := dec(in); err != nil { @@ -478,6 +581,24 @@ func _NodeGuardService_GetAvailableUtxos_Handler(srv interface{}, ctx context.Co return interceptor(ctx, in, info, handler) } +func _NodeGuardService_GetUtxos_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetUtxosRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NodeGuardServiceServer).GetUtxos(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: NodeGuardService_GetUtxos_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NodeGuardServiceServer).GetUtxos(ctx, req.(*GetUtxosRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _NodeGuardService_GetWithdrawalsRequestStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetWithdrawalsRequestStatusRequest) if err := dec(in); err != nil { @@ -496,6 +617,24 @@ func _NodeGuardService_GetWithdrawalsRequestStatus_Handler(srv interface{}, ctx return interceptor(ctx, in, info, handler) } +func _NodeGuardService_GetWithdrawalsRequestStatusByReferenceIds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetWithdrawalsRequestStatusByReferenceIdsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NodeGuardServiceServer).GetWithdrawalsRequestStatusByReferenceIds(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: NodeGuardService_GetWithdrawalsRequestStatusByReferenceIds_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NodeGuardServiceServer).GetWithdrawalsRequestStatusByReferenceIds(ctx, req.(*GetWithdrawalsRequestStatusByReferenceIdsRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _NodeGuardService_GetChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetChannelRequest) if err := dec(in); err != nil { @@ -514,6 +653,24 @@ func _NodeGuardService_GetChannel_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } +func _NodeGuardService_AddTags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AddTagsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NodeGuardServiceServer).AddTags(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: NodeGuardService_AddTags_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NodeGuardServiceServer).AddTags(ctx, req.(*AddTagsRequest)) + } + return interceptor(ctx, in, info, handler) +} + // NodeGuardService_ServiceDesc is the grpc.ServiceDesc for NodeGuardService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -545,6 +702,10 @@ var NodeGuardService_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetAvailableWallets", Handler: _NodeGuardService_GetAvailableWallets_Handler, }, + { + MethodName: "GetWalletBalance", + Handler: _NodeGuardService_GetWalletBalance_Handler, + }, { MethodName: "OpenChannel", Handler: _NodeGuardService_OpenChannel_Handler, @@ -565,14 +726,26 @@ var NodeGuardService_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetAvailableUtxos", Handler: _NodeGuardService_GetAvailableUtxos_Handler, }, + { + MethodName: "GetUtxos", + Handler: _NodeGuardService_GetUtxos_Handler, + }, { MethodName: "GetWithdrawalsRequestStatus", Handler: _NodeGuardService_GetWithdrawalsRequestStatus_Handler, }, + { + MethodName: "GetWithdrawalsRequestStatusByReferenceIds", + Handler: _NodeGuardService_GetWithdrawalsRequestStatusByReferenceIds_Handler, + }, { MethodName: "GetChannel", Handler: _NodeGuardService_GetChannel_Handler, }, + { + MethodName: "AddTags", + Handler: _NodeGuardService_AddTags_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "nodeguard.proto", diff --git a/nodeguard/nodeguard_mock.go b/nodeguard/nodeguard_mock.go index d7b25b1..7fb5604 100644 --- a/nodeguard/nodeguard_mock.go +++ b/nodeguard/nodeguard_mock.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: github.com/Elenpay/liquidator/nodeguard (interfaces: NodeGuardServiceClient) +// Source: nodeguard/nodeguard_grpc.pb.go // // Generated by this command: // -// mockgen -destination ./nodeguard/nodeguard_mock.go -package nodeguard github.com/Elenpay/liquidator/nodeguard NodeGuardServiceClient +// mockgen -destination ./nodeguard/nodeguard_mock.go -source nodeguard/nodeguard_grpc.pb.go -package nodeguard // // Package nodeguard is a generated GoMock package. @@ -81,6 +81,26 @@ func (mr *MockNodeGuardServiceClientMockRecorder) AddNode(ctx, in any, opts ...a return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddNode", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).AddNode), varargs...) } +// AddTags mocks base method. +func (m *MockNodeGuardServiceClient) AddTags(ctx context.Context, in *AddTagsRequest, opts ...grpc.CallOption) (*AddTagsResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "AddTags", varargs...) + ret0, _ := ret[0].(*AddTagsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// AddTags indicates an expected call of AddTags. +func (mr *MockNodeGuardServiceClientMockRecorder) AddTags(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddTags", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).AddTags), varargs...) +} + // CloseChannel mocks base method. func (m *MockNodeGuardServiceClient) CloseChannel(ctx context.Context, in *CloseChannelRequest, opts ...grpc.CallOption) (*CloseChannelResponse, error) { m.ctrl.T.Helper() @@ -102,14 +122,14 @@ func (mr *MockNodeGuardServiceClientMockRecorder) CloseChannel(ctx, in any, opts } // GetAvailableUtxos mocks base method. -func (m *MockNodeGuardServiceClient) GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetAvailableUtxosResponse, error) { +func (m *MockNodeGuardServiceClient) GetAvailableUtxos(ctx context.Context, in *GetAvailableUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) { m.ctrl.T.Helper() varargs := []any{ctx, in} for _, a := range opts { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "GetAvailableUtxos", varargs...) - ret0, _ := ret[0].(*GetAvailableUtxosResponse) + ret0, _ := ret[0].(*GetUtxosResponse) ret1, _ := ret[1].(error) return ret0, ret1 } @@ -241,6 +261,46 @@ func (mr *MockNodeGuardServiceClientMockRecorder) GetNodes(ctx, in any, opts ... return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNodes", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).GetNodes), varargs...) } +// GetUtxos mocks base method. +func (m *MockNodeGuardServiceClient) GetUtxos(ctx context.Context, in *GetUtxosRequest, opts ...grpc.CallOption) (*GetUtxosResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetUtxos", varargs...) + ret0, _ := ret[0].(*GetUtxosResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetUtxos indicates an expected call of GetUtxos. +func (mr *MockNodeGuardServiceClientMockRecorder) GetUtxos(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetUtxos", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).GetUtxos), varargs...) +} + +// GetWalletBalance mocks base method. +func (m *MockNodeGuardServiceClient) GetWalletBalance(ctx context.Context, in *GetWalletBalanceRequest, opts ...grpc.CallOption) (*GetWalletBalanceResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetWalletBalance", varargs...) + ret0, _ := ret[0].(*GetWalletBalanceResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetWalletBalance indicates an expected call of GetWalletBalance. +func (mr *MockNodeGuardServiceClientMockRecorder) GetWalletBalance(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWalletBalance", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).GetWalletBalance), varargs...) +} + // GetWithdrawalsRequestStatus mocks base method. func (m *MockNodeGuardServiceClient) GetWithdrawalsRequestStatus(ctx context.Context, in *GetWithdrawalsRequestStatusRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) { m.ctrl.T.Helper() @@ -261,6 +321,26 @@ func (mr *MockNodeGuardServiceClientMockRecorder) GetWithdrawalsRequestStatus(ct return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWithdrawalsRequestStatus", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).GetWithdrawalsRequestStatus), varargs...) } +// GetWithdrawalsRequestStatusByReferenceIds mocks base method. +func (m *MockNodeGuardServiceClient) GetWithdrawalsRequestStatusByReferenceIds(ctx context.Context, in *GetWithdrawalsRequestStatusByReferenceIdsRequest, opts ...grpc.CallOption) (*GetWithdrawalsRequestStatusResponse, error) { + m.ctrl.T.Helper() + varargs := []any{ctx, in} + for _, a := range opts { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "GetWithdrawalsRequestStatusByReferenceIds", varargs...) + ret0, _ := ret[0].(*GetWithdrawalsRequestStatusResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetWithdrawalsRequestStatusByReferenceIds indicates an expected call of GetWithdrawalsRequestStatusByReferenceIds. +func (mr *MockNodeGuardServiceClientMockRecorder) GetWithdrawalsRequestStatusByReferenceIds(ctx, in any, opts ...any) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]any{ctx, in}, opts...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWithdrawalsRequestStatusByReferenceIds", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).GetWithdrawalsRequestStatusByReferenceIds), varargs...) +} + // OpenChannel mocks base method. func (m *MockNodeGuardServiceClient) OpenChannel(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (*OpenChannelResponse, error) { m.ctrl.T.Helper() @@ -300,3 +380,330 @@ func (mr *MockNodeGuardServiceClientMockRecorder) RequestWithdrawal(ctx, in any, varargs := append([]any{ctx, in}, opts...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RequestWithdrawal", reflect.TypeOf((*MockNodeGuardServiceClient)(nil).RequestWithdrawal), varargs...) } + +// MockNodeGuardServiceServer is a mock of NodeGuardServiceServer interface. +type MockNodeGuardServiceServer struct { + ctrl *gomock.Controller + recorder *MockNodeGuardServiceServerMockRecorder + isgomock struct{} +} + +// MockNodeGuardServiceServerMockRecorder is the mock recorder for MockNodeGuardServiceServer. +type MockNodeGuardServiceServerMockRecorder struct { + mock *MockNodeGuardServiceServer +} + +// NewMockNodeGuardServiceServer creates a new mock instance. +func NewMockNodeGuardServiceServer(ctrl *gomock.Controller) *MockNodeGuardServiceServer { + mock := &MockNodeGuardServiceServer{ctrl: ctrl} + mock.recorder = &MockNodeGuardServiceServerMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockNodeGuardServiceServer) EXPECT() *MockNodeGuardServiceServerMockRecorder { + return m.recorder +} + +// AddLiquidityRule mocks base method. +func (m *MockNodeGuardServiceServer) AddLiquidityRule(arg0 context.Context, arg1 *AddLiquidityRuleRequest) (*AddLiquidityRuleResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "AddLiquidityRule", arg0, arg1) + ret0, _ := ret[0].(*AddLiquidityRuleResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// AddLiquidityRule indicates an expected call of AddLiquidityRule. +func (mr *MockNodeGuardServiceServerMockRecorder) AddLiquidityRule(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddLiquidityRule", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).AddLiquidityRule), arg0, arg1) +} + +// AddNode mocks base method. +func (m *MockNodeGuardServiceServer) AddNode(arg0 context.Context, arg1 *AddNodeRequest) (*AddNodeResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "AddNode", arg0, arg1) + ret0, _ := ret[0].(*AddNodeResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// AddNode indicates an expected call of AddNode. +func (mr *MockNodeGuardServiceServerMockRecorder) AddNode(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddNode", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).AddNode), arg0, arg1) +} + +// AddTags mocks base method. +func (m *MockNodeGuardServiceServer) AddTags(arg0 context.Context, arg1 *AddTagsRequest) (*AddTagsResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "AddTags", arg0, arg1) + ret0, _ := ret[0].(*AddTagsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// AddTags indicates an expected call of AddTags. +func (mr *MockNodeGuardServiceServerMockRecorder) AddTags(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddTags", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).AddTags), arg0, arg1) +} + +// CloseChannel mocks base method. +func (m *MockNodeGuardServiceServer) CloseChannel(arg0 context.Context, arg1 *CloseChannelRequest) (*CloseChannelResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "CloseChannel", arg0, arg1) + ret0, _ := ret[0].(*CloseChannelResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// CloseChannel indicates an expected call of CloseChannel. +func (mr *MockNodeGuardServiceServerMockRecorder) CloseChannel(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).CloseChannel), arg0, arg1) +} + +// GetAvailableUtxos mocks base method. +func (m *MockNodeGuardServiceServer) GetAvailableUtxos(arg0 context.Context, arg1 *GetAvailableUtxosRequest) (*GetUtxosResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetAvailableUtxos", arg0, arg1) + ret0, _ := ret[0].(*GetUtxosResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetAvailableUtxos indicates an expected call of GetAvailableUtxos. +func (mr *MockNodeGuardServiceServerMockRecorder) GetAvailableUtxos(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAvailableUtxos", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetAvailableUtxos), arg0, arg1) +} + +// GetAvailableWallets mocks base method. +func (m *MockNodeGuardServiceServer) GetAvailableWallets(arg0 context.Context, arg1 *GetAvailableWalletsRequest) (*GetAvailableWalletsResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetAvailableWallets", arg0, arg1) + ret0, _ := ret[0].(*GetAvailableWalletsResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetAvailableWallets indicates an expected call of GetAvailableWallets. +func (mr *MockNodeGuardServiceServerMockRecorder) GetAvailableWallets(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAvailableWallets", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetAvailableWallets), arg0, arg1) +} + +// GetChannel mocks base method. +func (m *MockNodeGuardServiceServer) GetChannel(arg0 context.Context, arg1 *GetChannelRequest) (*GetChannelResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetChannel", arg0, arg1) + ret0, _ := ret[0].(*GetChannelResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetChannel indicates an expected call of GetChannel. +func (mr *MockNodeGuardServiceServerMockRecorder) GetChannel(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetChannel), arg0, arg1) +} + +// GetChannelOperationRequest mocks base method. +func (m *MockNodeGuardServiceServer) GetChannelOperationRequest(arg0 context.Context, arg1 *GetChannelOperationRequestRequest) (*GetChannelOperationRequestResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetChannelOperationRequest", arg0, arg1) + ret0, _ := ret[0].(*GetChannelOperationRequestResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetChannelOperationRequest indicates an expected call of GetChannelOperationRequest. +func (mr *MockNodeGuardServiceServerMockRecorder) GetChannelOperationRequest(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetChannelOperationRequest", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetChannelOperationRequest), arg0, arg1) +} + +// GetLiquidityRules mocks base method. +func (m *MockNodeGuardServiceServer) GetLiquidityRules(arg0 context.Context, arg1 *GetLiquidityRulesRequest) (*GetLiquidityRulesResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetLiquidityRules", arg0, arg1) + ret0, _ := ret[0].(*GetLiquidityRulesResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetLiquidityRules indicates an expected call of GetLiquidityRules. +func (mr *MockNodeGuardServiceServerMockRecorder) GetLiquidityRules(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLiquidityRules", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetLiquidityRules), arg0, arg1) +} + +// GetNewWalletAddress mocks base method. +func (m *MockNodeGuardServiceServer) GetNewWalletAddress(arg0 context.Context, arg1 *GetNewWalletAddressRequest) (*GetNewWalletAddressResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetNewWalletAddress", arg0, arg1) + ret0, _ := ret[0].(*GetNewWalletAddressResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetNewWalletAddress indicates an expected call of GetNewWalletAddress. +func (mr *MockNodeGuardServiceServerMockRecorder) GetNewWalletAddress(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNewWalletAddress", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetNewWalletAddress), arg0, arg1) +} + +// GetNodes mocks base method. +func (m *MockNodeGuardServiceServer) GetNodes(arg0 context.Context, arg1 *GetNodesRequest) (*GetNodesResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetNodes", arg0, arg1) + ret0, _ := ret[0].(*GetNodesResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetNodes indicates an expected call of GetNodes. +func (mr *MockNodeGuardServiceServerMockRecorder) GetNodes(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNodes", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetNodes), arg0, arg1) +} + +// GetUtxos mocks base method. +func (m *MockNodeGuardServiceServer) GetUtxos(arg0 context.Context, arg1 *GetUtxosRequest) (*GetUtxosResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetUtxos", arg0, arg1) + ret0, _ := ret[0].(*GetUtxosResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetUtxos indicates an expected call of GetUtxos. +func (mr *MockNodeGuardServiceServerMockRecorder) GetUtxos(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetUtxos", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetUtxos), arg0, arg1) +} + +// GetWalletBalance mocks base method. +func (m *MockNodeGuardServiceServer) GetWalletBalance(arg0 context.Context, arg1 *GetWalletBalanceRequest) (*GetWalletBalanceResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetWalletBalance", arg0, arg1) + ret0, _ := ret[0].(*GetWalletBalanceResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetWalletBalance indicates an expected call of GetWalletBalance. +func (mr *MockNodeGuardServiceServerMockRecorder) GetWalletBalance(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWalletBalance", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetWalletBalance), arg0, arg1) +} + +// GetWithdrawalsRequestStatus mocks base method. +func (m *MockNodeGuardServiceServer) GetWithdrawalsRequestStatus(arg0 context.Context, arg1 *GetWithdrawalsRequestStatusRequest) (*GetWithdrawalsRequestStatusResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetWithdrawalsRequestStatus", arg0, arg1) + ret0, _ := ret[0].(*GetWithdrawalsRequestStatusResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetWithdrawalsRequestStatus indicates an expected call of GetWithdrawalsRequestStatus. +func (mr *MockNodeGuardServiceServerMockRecorder) GetWithdrawalsRequestStatus(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWithdrawalsRequestStatus", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetWithdrawalsRequestStatus), arg0, arg1) +} + +// GetWithdrawalsRequestStatusByReferenceIds mocks base method. +func (m *MockNodeGuardServiceServer) GetWithdrawalsRequestStatusByReferenceIds(arg0 context.Context, arg1 *GetWithdrawalsRequestStatusByReferenceIdsRequest) (*GetWithdrawalsRequestStatusResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetWithdrawalsRequestStatusByReferenceIds", arg0, arg1) + ret0, _ := ret[0].(*GetWithdrawalsRequestStatusResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetWithdrawalsRequestStatusByReferenceIds indicates an expected call of GetWithdrawalsRequestStatusByReferenceIds. +func (mr *MockNodeGuardServiceServerMockRecorder) GetWithdrawalsRequestStatusByReferenceIds(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetWithdrawalsRequestStatusByReferenceIds", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).GetWithdrawalsRequestStatusByReferenceIds), arg0, arg1) +} + +// OpenChannel mocks base method. +func (m *MockNodeGuardServiceServer) OpenChannel(arg0 context.Context, arg1 *OpenChannelRequest) (*OpenChannelResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "OpenChannel", arg0, arg1) + ret0, _ := ret[0].(*OpenChannelResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// OpenChannel indicates an expected call of OpenChannel. +func (mr *MockNodeGuardServiceServerMockRecorder) OpenChannel(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenChannel", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).OpenChannel), arg0, arg1) +} + +// RequestWithdrawal mocks base method. +func (m *MockNodeGuardServiceServer) RequestWithdrawal(arg0 context.Context, arg1 *RequestWithdrawalRequest) (*RequestWithdrawalResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "RequestWithdrawal", arg0, arg1) + ret0, _ := ret[0].(*RequestWithdrawalResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// RequestWithdrawal indicates an expected call of RequestWithdrawal. +func (mr *MockNodeGuardServiceServerMockRecorder) RequestWithdrawal(arg0, arg1 any) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RequestWithdrawal", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).RequestWithdrawal), arg0, arg1) +} + +// mustEmbedUnimplementedNodeGuardServiceServer mocks base method. +func (m *MockNodeGuardServiceServer) mustEmbedUnimplementedNodeGuardServiceServer() { + m.ctrl.T.Helper() + m.ctrl.Call(m, "mustEmbedUnimplementedNodeGuardServiceServer") +} + +// mustEmbedUnimplementedNodeGuardServiceServer indicates an expected call of mustEmbedUnimplementedNodeGuardServiceServer. +func (mr *MockNodeGuardServiceServerMockRecorder) mustEmbedUnimplementedNodeGuardServiceServer() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedNodeGuardServiceServer", reflect.TypeOf((*MockNodeGuardServiceServer)(nil).mustEmbedUnimplementedNodeGuardServiceServer)) +} + +// MockUnsafeNodeGuardServiceServer is a mock of UnsafeNodeGuardServiceServer interface. +type MockUnsafeNodeGuardServiceServer struct { + ctrl *gomock.Controller + recorder *MockUnsafeNodeGuardServiceServerMockRecorder + isgomock struct{} +} + +// MockUnsafeNodeGuardServiceServerMockRecorder is the mock recorder for MockUnsafeNodeGuardServiceServer. +type MockUnsafeNodeGuardServiceServerMockRecorder struct { + mock *MockUnsafeNodeGuardServiceServer +} + +// NewMockUnsafeNodeGuardServiceServer creates a new mock instance. +func NewMockUnsafeNodeGuardServiceServer(ctrl *gomock.Controller) *MockUnsafeNodeGuardServiceServer { + mock := &MockUnsafeNodeGuardServiceServer{ctrl: ctrl} + mock.recorder = &MockUnsafeNodeGuardServiceServerMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockUnsafeNodeGuardServiceServer) EXPECT() *MockUnsafeNodeGuardServiceServerMockRecorder { + return m.recorder +} + +// mustEmbedUnimplementedNodeGuardServiceServer mocks base method. +func (m *MockUnsafeNodeGuardServiceServer) mustEmbedUnimplementedNodeGuardServiceServer() { + m.ctrl.T.Helper() + m.ctrl.Call(m, "mustEmbedUnimplementedNodeGuardServiceServer") +} + +// mustEmbedUnimplementedNodeGuardServiceServer indicates an expected call of mustEmbedUnimplementedNodeGuardServiceServer. +func (mr *MockUnsafeNodeGuardServiceServerMockRecorder) mustEmbedUnimplementedNodeGuardServiceServer() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "mustEmbedUnimplementedNodeGuardServiceServer", reflect.TypeOf((*MockUnsafeNodeGuardServiceServer)(nil).mustEmbedUnimplementedNodeGuardServiceServer)) +} diff --git a/rpc/nodeguard.proto b/rpc/nodeguard.proto index e3b6de4..43b6954 100644 --- a/rpc/nodeguard.proto +++ b/rpc/nodeguard.proto @@ -9,20 +9,17 @@ service NodeGuardService { Returns the liquidity rules associated to a node and its channels */ - rpc GetLiquidityRules(GetLiquidityRulesRequest) - returns (GetLiquidityRulesResponse); + rpc GetLiquidityRules(GetLiquidityRulesRequest) returns (GetLiquidityRulesResponse); /* Returns a new unused BTC Address of a given wallet */ - rpc GetNewWalletAddress(GetNewWalletAddressRequest) - returns (GetNewWalletAddressResponse); + rpc GetNewWalletAddress(GetNewWalletAddressRequest) returns (GetNewWalletAddressResponse); /* Withdraws funds from a given wallet to a given address */ - rpc RequestWithdrawal(RequestWithdrawalRequest) - returns (RequestWithdrawalResponse); + rpc RequestWithdrawal(RequestWithdrawalRequest) returns (RequestWithdrawalResponse); /* Adds a new node to the nodeguard */ @@ -36,8 +33,13 @@ service NodeGuardService { /* Gets a list of available wallets */ - rpc GetAvailableWallets(GetAvailableWalletsRequest) - returns (GetAvailableWalletsResponse); + rpc GetAvailableWallets(GetAvailableWalletsRequest) returns (GetAvailableWalletsResponse); + + /* + Get balance from a specific wallet + */ + rpc GetWalletBalance(GetWalletBalanceRequest) returns (GetWalletBalanceResponse); + /* Opens a channel to a given node */ @@ -51,34 +53,47 @@ service NodeGuardService { /* Gets a list of channel operations requests by id */ - rpc GetChannelOperationRequest(GetChannelOperationRequestRequest) - returns (GetChannelOperationRequestResponse); + rpc GetChannelOperationRequest(GetChannelOperationRequestRequest) returns (GetChannelOperationRequestResponse); /* Adds a liquidity rule to a channel */ - rpc AddLiquidityRule(AddLiquidityRuleRequest) - returns (AddLiquidityRuleResponse); + rpc AddLiquidityRule(AddLiquidityRuleRequest) returns (AddLiquidityRuleResponse); /* - Gets a list of available UTXOs for a wallet + Gets a list of available UTXOs for a single wallet */ - rpc GetAvailableUtxos(GetAvailableUtxosRequest) - returns (GetAvailableUtxosResponse); + rpc GetAvailableUtxos(GetAvailableUtxosRequest) returns (GetUtxosResponse); + + /* + Gets a list of all UTXOs from all available wallets + */ + rpc GetUtxos(GetUtxosRequest) returns (GetUtxosResponse); /* Gets the status for the provided withdrawals request ids */ - rpc GetWithdrawalsRequestStatus(GetWithdrawalsRequestStatusRequest) - returns (GetWithdrawalsRequestStatusResponse); + rpc GetWithdrawalsRequestStatus(GetWithdrawalsRequestStatusRequest) returns (GetWithdrawalsRequestStatusResponse); + + /* + Gets the status for the provided withdrawals request reference ids + */ + rpc GetWithdrawalsRequestStatusByReferenceIds(GetWithdrawalsRequestStatusByReferenceIdsRequest) returns (GetWithdrawalsRequestStatusResponse); /* Gets a channel by id */ rpc GetChannel(GetChannelRequest) returns (GetChannelResponse); + + /* + Adds tags to UTXOs under the treasury + */ + rpc AddTags(AddTagsRequest) returns (AddTagsResponse); } -message GetLiquidityRulesRequest { string node_pubkey = 1; } +message GetLiquidityRulesRequest { + string node_pubkey = 1; +} message GetLiquidityRulesResponse { repeated LiquidityRule liquidity_rules = 1; @@ -99,15 +114,27 @@ message LiquidityRule { string remote_node_pubkey = 10; } -message GetNewWalletAddressRequest { int32 wallet_id = 1; } +message GetNewWalletAddressRequest { + int32 wallet_id = 1; + bool reserve = 2; // If set to true, the returned address will be marked as used +} -message GetNewWalletAddressResponse { string address = 1; } +message GetNewWalletAddressResponse { + string address = 1; +} + +message Destination { + // BTC address to send the funds to + string address = 1; + // Amount in satoshis + int64 amount_sats = 2; +} message RequestWithdrawalRequest { int32 wallet_id = 1; - string address = 2; + string address = 2 [deprecated = true]; // Amount in satoshis - int64 amount = 3; + int64 amount = 3 [deprecated = true]; string description = 4; // in JSON format string request_metadata = 5; @@ -119,6 +146,10 @@ message RequestWithdrawalRequest { FEES_TYPE mempool_fee_rate = 8; // Fee rate in sat/vbyte optional int32 custom_fee_rate = 9; + // External reference id for the withdrawal request + optional string reference_id = 10; + // Destinations for the withdrawal + repeated Destination destinations = 11; } message RequestWithdrawalResponse { @@ -139,17 +170,32 @@ message GetAvailableWalletsRequest { optional WALLET_TYPE wallet_type = 2; } -message AccountKeySettings { string xpub = 1; } -message Wallet { +message AccountKeySettings { + string xpub = 1; +} +message Wallet { int32 id = 1; string name = 2; bool is_hot_wallet = 3; repeated AccountKeySettings account_key_settings = 4; int32 threshold = 5; } -message GetAvailableWalletsResponse { repeated Wallet wallets = 1; } +message GetAvailableWalletsResponse { + repeated Wallet wallets = 1; +} -message AddNodeRequest { +message GetWalletBalanceRequest { + int32 wallet_id = 1; +} + +message GetWalletBalanceResponse { + // Confirmed balance in satoshis + int64 confirmed_balance = 1; + // Unconfirmed balance in satoshis + int64 unconfirmed_balance = 2; +} + +message AddNodeRequest{ string pub_key = 1; string name = 2; string description = 3; @@ -157,14 +203,14 @@ message AddNodeRequest { string channel_admin_macaroon = 4; // Endpoint of the node in the form of host:port (gRPC) string endpoint = 5; - // Whether this node's hot wallet should be autoswept to the returning funds - // wallet - bool autosweep_enabled = 6; + // Whether this node's hot wallet should be autoswept to the returning funds wallet + bool autosweep_enabled = 6; // Wallet ID as stored in the NG's database for use in autosweep ops int32 returning_funds_wallet_id = 7; } -message AddNodeResponse {} +message AddNodeResponse{ +} message Node { // Node Id as in NodeGuard's database @@ -174,19 +220,21 @@ message Node { string description = 4; // Endpoint of the node in the form of host:port (gRPC) string endpoint = 5; - // Whether this node's hot wallet should be autoswept to the returning funds - // wallet + // Whether this node's hot wallet should be autoswept to the returning funds wallet bool autosweep_enabled = 6; // Wallet ID as stored in the NG's database for use in autosweep ops int32 returning_funds_wallet_id = 7; + } -message GetNodesRequest { +message GetNodesRequest{ // Whether to include nodes that are not managed by the NG bool include_unmanaged = 1; } -message GetNodesResponse { repeated Node nodes = 1; } +message GetNodesResponse{ + repeated Node nodes = 1; +} enum FEES_TYPE { ECONOMY_FEE = 0; @@ -217,9 +265,10 @@ message OpenChannelRequest { optional int32 custom_fee_rate = 9; } -// A successful response returns the channel_operation_request_id but it does -// NOT indicate that the channel has been open, external monitoring is required -message OpenChannelResponse { int32 channel_operation_request_id = 1; } +// A successful response returns the channel_operation_request_id but it does NOT indicate that the channel has been open, external monitoring is required +message OpenChannelResponse { + int32 channel_operation_request_id = 1; +} message CloseChannelRequest { // Channel ID as returned by the Lightning implementation @@ -228,9 +277,9 @@ message CloseChannelRequest { bool force = 2; } -// A successful response is an empty message and does NOT indicate that the -// channel has been closed, external monitoring is required -message CloseChannelResponse {} +// A successful response is an empty message and does NOT indicate that the channel has been closed, external monitoring is required +message CloseChannelResponse { +} message GetChannelOperationRequestRequest { // Whether to include requests that are not managed by the NG @@ -294,11 +343,15 @@ message AddLiquidityRuleResponse { int32 rule_id = 1; } -enum COIN_SELECTION_STRATEGY { - SMALLEST_FIRST = 0; - BIGGEST_FIRST = 1; - CLOSEST_TO_TARGET_FIRST = 2; - UP_TO_AMOUNT = 3; +enum COIN_SELECTION_STRATEGY +{ + SMALLEST_FIRST = 0; + BIGGEST_FIRST = 1; + CLOSEST_TO_TARGET_FIRST = 2; + UP_TO_AMOUNT = 3; +} + +message GetUtxosRequest { } message GetAvailableUtxosRequest { @@ -310,42 +363,52 @@ message GetAvailableUtxosRequest { optional int32 limit = 3; // Amount in satoshis optional int64 amount = 4; - // Order the UTXOs by closest to the amount specified if the strategy selected - // is CLOSEST_TO_TARGET_FIRST + // Order the UTXOs by closest to the amount specified if the strategy selected is CLOSEST_TO_TARGET_FIRST optional int64 closestTo = 5; } message Utxo { int64 amount = 1; string outpoint = 2; + string address = 3; } -message GetAvailableUtxosResponse { +message GetUtxosResponse { repeated Utxo confirmed = 1; repeated Utxo unconfirmed = 2; } enum WITHDRAWAL_REQUEST_STATUS { - WITHDRAWAL_SETTLED = 0; - WITHDRAWAL_PENDING_APPROVAL = 1; - WITHDRAWAL_CANCELLED = 2; - WITHDRAWAL_REJECTED = 3; - WITHDRAWAL_PENDING_CONFIRMATION = 4; - WITHDRAWAL_FAILED = 5; + WITHDRAWAL_SETTLED = 0; + WITHDRAWAL_PENDING_APPROVAL = 1; + WITHDRAWAL_CANCELLED = 2; + WITHDRAWAL_REJECTED = 3; + WITHDRAWAL_PENDING_CONFIRMATION = 4; + WITHDRAWAL_FAILED = 5; + WITHDRAWAL_BUMPED = 6; } -message GetWithdrawalsRequestStatusRequest { repeated int32 request_ids = 1; } +message GetWithdrawalsRequestStatusRequest { + repeated int32 request_ids = 1; +} message WithdrawalRequest { int32 request_id = 1; WITHDRAWAL_REQUEST_STATUS status = 2; optional string reject_or_cancel_reason = 3; + optional string reference_id = 4; + uint64 confirmations = 5; + optional string tx_id = 6; } message GetWithdrawalsRequestStatusResponse { repeated WithdrawalRequest withdrawal_requests = 1; } +message GetWithdrawalsRequestStatusByReferenceIdsRequest { + repeated string reference_ids = 1; +} + message GetChannelRequest { // Channel ID from NGs database int32 channel_id = 1; @@ -367,3 +430,16 @@ message GetChannelResponse { bool is_automated_liquidity_enabled = 8; bool is_private = 9; } + +message Tag { + string key = 1; + string value = 2; + string utxo_outpoint = 3; // Format txid-outputIndex +} + +message AddTagsRequest { + repeated Tag tags = 1; +} + +message AddTagsResponse { +} \ No newline at end of file From 10d3530653c1e3c1ea36d8e9b3d5ff6a8f21a8da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:04:36 +0200 Subject: [PATCH 09/12] refactor: remove unused mock compilation commands from .justfile --- .justfile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.justfile b/.justfile index efb7605..08500fd 100644 --- a/.justfile +++ b/.justfile @@ -17,10 +17,6 @@ install-loopd-loop: compile-nodeguard-proto: rm -rf nodeguard && protoc -I rpc --go_out=. --go-grpc_out=. rpc/*.proto && mockgen -destination ./nodeguard/nodeguard_mock.go -source nodeguard/nodeguard_grpc.pb.go -package nodeguard && mockgen -destination ./nodeguard/nodeguard_mock.go -source nodeguard/nodeguard_grpc.pb.go -package nodeguard -compile-lnd-client-mock: - mockgen -destination lightning_rpc_mock.go -source lnd/lnrpc/lightning_grpc.pb.go -package main -compile-provider-mock: - mockgen -destination ./provider/provider_mock.go -source provider/provider.go -package provider && mockgen -destination ./provider/loopd_mock.go -source loop/looprpc/client_grpc.pb.go -package provider cover-test: go test ./... -coverprofile=coverage.out; go tool cover -html=coverage.out start-loopserver: build-loopserver From 3a30eb9216a34d88ea5df63b22a71317394f1fd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:05:01 +0200 Subject: [PATCH 10/12] chore: update Go base image to version 1.25-alpine in Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 70fce72..871e4e3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.21.4-alpine AS builder +FROM golang:1.25-alpine AS builder WORKDIR /src/ COPY . . RUN go get -d -v ./... From 3fdd9ffa7b3c601591403b9e65d32e48962cf368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:08:08 +0200 Subject: [PATCH 11/12] feat: update withdrawal request to use fastest fee type and include destination details --- liquidator.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/liquidator.go b/liquidator.go index cb6e2c3..9667d15 100644 --- a/liquidator.go +++ b/liquidator.go @@ -639,8 +639,9 @@ func performSwap(info ManageChannelLiquidityInfo, channel *lnrpc.Channel, swapAm WalletId: rule.SwapWalletId, Address: resp.InvoiceBTCAddress, Amount: swapAmount, + Destinations: []*nodeguard.Destination{{Address: resp.InvoiceBTCAddress, AmountSats: swapAmount}}, Description: fmt.Sprintf("Swap %v", resp.SwapId), - MempoolFeeRate: nodeguard.FEES_TYPE_ECONOMY_FEE, + MempoolFeeRate: nodeguard.FEES_TYPE_FASTEST_FEE, } withdrawalResponse, err := info.nodeguardClient.RequestWithdrawal(info.ctx, &withdrawalRequest) From eac6a83285ba153aa5fb593f8abf7fd45c59e802 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Thu, 18 Sep 2025 12:12:45 +0200 Subject: [PATCH 12/12] refactor: remove manual lock release methods for anti-spam protection Remove releaseSubmarineSwapLock() and releaseReverseSwapLock() methods along with their usage in tests. Locks now only expire via timeout mechanism to prevent spam attacks. Updated test comments to clarify production behavior where manual release is not available. --- provider/loop_provider.go | 11 ---------- provider/loop_provider_test.go | 37 ++++++---------------------------- 2 files changed, 6 insertions(+), 42 deletions(-) diff --git a/provider/loop_provider.go b/provider/loop_provider.go index 3945e54..344b3af 100644 --- a/provider/loop_provider.go +++ b/provider/loop_provider.go @@ -51,17 +51,6 @@ func (l *LoopProvider) acquireSubmarineSwapLock() error { return nil } -// releaseSubmarineSwapLock releases the submarine swap lock -func (l *LoopProvider) releaseSubmarineSwapLock() { - l.stateMutex.Lock() - defer l.stateMutex.Unlock() - - if l.submarineSwapLockTime != nil { - log.Infof("Released submarine swap lock that was acquired at %s", l.submarineSwapLockTime.Format(time.RFC3339)) - l.submarineSwapLockTime = nil - } -} - // acquireReverseSwapLock tries to acquire the reverse swap lock func (l *LoopProvider) acquireReverseSwapLock() error { l.stateMutex.Lock() diff --git a/provider/loop_provider_test.go b/provider/loop_provider_test.go index 3939a49..f6265db 100644 --- a/provider/loop_provider_test.go +++ b/provider/loop_provider_test.go @@ -497,17 +497,7 @@ func TestLoopProvider_LockFunctionality(t *testing.T) { t.Errorf("Expected rate limit error message, got: %v", err) } - // Test manual release - l.releaseSubmarineSwapLock() - - // Should be able to acquire again after release - err = l.acquireSubmarineSwapLock() - if err != nil { - t.Errorf("Expected no error when acquiring submarine swap lock after release, got: %v", err) - } - - // Clean up - l.releaseSubmarineSwapLock() + // Note: In production, lock only expires via timeout, no manual release for anti-spam }) // Test reverse swap lock functionality @@ -531,17 +521,7 @@ func TestLoopProvider_LockFunctionality(t *testing.T) { t.Errorf("Expected rate limit error message, got: %v", err) } - // Test manual release - l.releaseReverseSwapLock() - - // Should be able to acquire again after release - err = l.acquireReverseSwapLock() - if err != nil { - t.Errorf("Expected no error when acquiring reverse swap lock after release, got: %v", err) - } - - // Clean up - l.releaseReverseSwapLock() + // Note: In production, lock only expires via timeout, no manual release for anti-spam }) // Test that submarine and reverse swap locks are independent @@ -560,9 +540,7 @@ func TestLoopProvider_LockFunctionality(t *testing.T) { t.Errorf("Expected no error when acquiring reverse swap lock while submarine swap is locked, got: %v", err) } - // Clean up - l.releaseSubmarineSwapLock() - l.releaseReverseSwapLock() + // Note: In production, locks only expire via timeout, no manual release for anti-spam }) } @@ -597,8 +575,7 @@ func TestLoopProvider_LockTimeout(t *testing.T) { t.Errorf("Expected no error when acquiring submarine swap lock after timeout, got: %v", err) } - // Clean up - l.releaseSubmarineSwapLock() + // Note: In production, locks only expire via timeout, no manual cleanup needed }) t.Run("ReverseSwapLockTimeout", func(t *testing.T) { @@ -625,8 +602,7 @@ func TestLoopProvider_LockTimeout(t *testing.T) { t.Errorf("Expected no error when acquiring reverse swap lock after timeout, got: %v", err) } - // Clean up - l.releaseReverseSwapLock() + // Note: In production, locks only expire via timeout, no manual cleanup needed }) } @@ -666,8 +642,7 @@ func TestLoopProvider_ConcurrentLockAccess(t *testing.T) { t.Errorf("Expected exactly 9 failed lock acquisitions, got: %d", errorCount) } - // Clean up - l.releaseSubmarineSwapLock() + // Note: In production, locks only expire via timeout, no manual cleanup needed }) }